Windows的启动过程包括以下几个阶段 启动自检阶段 这个阶段主要是读取 BIOS 然后内存CPU硬盘键盘等设备进行自检这个阶段在屏幕上显示就是自检的那些打印信息 屏幕显示自检的打印信息 初始化启动阶段 这个阶段根据 BIOS 指定的启动顺序找到可以启动的优先启动设备比如本地磁盘CD Driver USB 设备等等然后准备从这些设备启动系统 屏幕显示黑屏 Boot 加载阶段 这个阶段首先从启动分区(比如 C 盘) 加载 Ntldr 然后Ntldr 做如下设置 内置内存模式如果是 x 的处理器并且操作系统是 位则设置为 bit flat memory mode如果是 位操作系统 + 位处理器则设置为位内存模式 启动文件系统 读取 bootini 文件 屏幕显示黑屏如果按F或者多系统时会显示启动选项菜单 检测和配置硬件阶段 这个阶段检查和配置一些硬件设备它们分别是 —系统固件比如时间和日期 —总线和适配器 —显示适配器 —键盘 —通讯端口 —磁盘 —软盘 —输入设备(如鼠标) —并口 —在ISA总线上运行的设备 屏幕显示黑屏 内核加载阶段 在内核加载阶段Ntldr 将首先加载Windows内核 Ntoskrnlexe 和 硬件抽象层 (HAL) HAL 有点类似于嵌入式操作系统下的BSP(Borad support package)这个抽象层对硬件底层的特性进行隔离对操作系统提供统一的调用接口操作系统移植到不同硬件时只要改变相应的 HAL 就可以其它的内核组件不需要修改这个是操作系统通常的设计模式 接下来Ntldr 从HKEY_LOCAL_ MACHINESYSTEMCurrentControlSet 下读取这台机器安装的驱动程序然后依次加载驱动程序 驱动程序加载完成后Windows做如下设置 创建系统环境变量 启动 winsys 这个是Windows子系统的内核模式部分 启动 csrssexe这个是Windows子系统的用户模式部分 启动 winlogonexe 创建虚拟内存页面文件 对一些必要的文件进行改名(主要是驱动文件如果更新后需要在下次重启前改名) 屏幕显示显示Windows logo 界面和进度条 登录阶段 这个阶段会做如下几件事 启动机器上安装的所有需要自动启动的Windows服务 启动本地安全认证 Lsassexe 显示登录界面 屏幕显示显示登录界面 |