多年来我一直对编程感兴趣,我一直想知道 Windows 7 是如何启动的。后来我发现了存储在“C:\Windows”文件夹。其中一个文件用于关闭计算机(即“关机.exe”在发现“C:\Windows\System32”),所以我假设使用另一个来启动它,但我找不到它。
只是问问...破解一下以学习。
答案1
shutdown.exe
实际上并不是关闭过程的一部分。最多只是用来要求关机(例如通过网络);就像“关机”按钮一样,它只是向“smss.exe”进程发送一条消息。
有关 Windows NT 启动过程的详细描述见以下多篇文章:
- http://jdebp.eu./FGA/windows-nt-6-boot-process.html
- http://jdebp.eu./FGA/windows-nt-6-shutdown-process.html
- https://en.wikipedia.org/wiki/Windows_Vista_startup_process
- http://social.technet.microsoft.com/wiki/contents/articles/11341.the-windows-7-boot-process-sbsl.aspx
大致轮廓如下:
- 引导加载程序(NTLDR 或 BOOTMGR/winload.exe)
- 内核(ntoskrnl.exe 或 ntkrnl*.exe)
- 会话管理器子系统 (smss.exe)
- 客户端-服务器运行时子系统(csrss.exe)