提示
X
本案例来自tskb,请前往tskb修改源内容:立即前往
'>

windows系统启动过程及关键过程说明

|

问题描述

本节主要描述windows操作系统的启动流程图,并针对关键的启动过程进行说明

解决方案

系统启动流程图:


关键启动过程:
1、预引导阶段:开机之后首先会完成自检,然后操作系统会去从BIOS中定位引导设备(磁盘,USB设备,光驱等),之后会从引导设备中读取并运行MBR(主引导记录,这是一段代码),至此预引导完成,后面的工作交给MBR来完成初始化。
注意:VMP平台的引导设备,也就是虚拟机编辑中设置的引导顺序,也可以叫启动项顺序;

2、初始化引导程序阶段:MBR读取分区表DPT,找出并读取活动主分区的引导记录,然后就把控制权交给分区下的引导程序。

3、选择操作系统阶段:引导程序找到系统分区之后就开始加载操作系统选项,xp\server2003是读取boot.ini文件来加载操作系统,vista以上的操作系统(也就是win7/win10/win11,以及server2008及以上操作系统)则是读取BCD文件来加载操作系统。
注意:如果安装了多个操作系统,就会进入操作系统选择界面。

4、硬件检测阶段:选择操作系统之后,引导程序会进行硬件检测,检测成功后会收集硬件信息,并创建注册表HKEY_LOCAL_MACHINE\Hardware。其次引导文件找到SYSTEM注册表(在系统分区的windows\system32\config\目录下),并获取select注册表下default键值,来复制对应的controlset注册表。

5、加载内核阶段:引导程序调用内核加载程序来加载系统内核ntoskrnl.exe、硬件抽象层hal.dll,然后控制权交给ntoskrnl.exe。ntoskrnl初始化执行体子系统,并初始化引导的和系统的设备驱动启动程序,为原生应用程序(如SMSS.exe等)初始化运行环境,最后内核加载完成将控制权交给SMSS.exe。

6、启动服务阶段:系统内核成功载入,并且成功初始化所有底层设备驱动后,SMSS将初始化注册表,并创建系统环境变量,加载Win32子系统(Win32k.sys),Win32子系统的作用是控制所有输入/输出设备以及访问显示设备。当所有这些操作都完成后,Windows的图形界面就可以显示出来了,同时我们也将可以使用键鼠以及其他I/O设备。

7、登录阶段:SMSS会创建2个session(会话进程),启动子系统进程(CSRSS、WinInit、Winlogon),控制权交给wininit.exe和winlogon.exe。到这一步之后,屏幕上将会显示windows系统的欢迎界面以及登录界面,之后就可以输出用户名密码进行登录了,登陆成功后会加载system\services\注册表下start为2的服务,这个时候整个windows操作系统的启动过程就完成了。

我要分享
文档编号: 243607
作者: admin
更新时间: 2023-01-10 17:10
适用版本: