本文详细阐述Windows操作系统的启动顺序,以方便IT从业者对Windows启动问题的分析和解决。

本文详细阐述Windows操作系统的启动顺序,以方便IT从业者对Windows启动问题的分析和解决。

Windows的启动过程包括以下几个阶段:

启动自检阶段

这个阶段主要是读取 BIOS ,然后内存,CPU,硬盘,键盘等设备进行自检。这个阶段在屏幕上显示就是自检的那些打印信息。

屏幕显示:自检的打印信息

初始化启动阶段

这个阶段根据 BIOS 指定的启动顺序,找到可以启动的优先启动设备,比如本地磁盘,CD Driver , USB 设备等等,然后准备从这些设备启动系统。

屏幕显示:黑屏

Boot 加载阶段

这个阶段首先从启动分区(比如 C 盘) 加载 Ntldr ,然后Ntldr 做如下设置:

1.内置内存模式,如果是 x86 的处理器,并且操作系统是 32位,则设置为 32-bit flat memory mode,如果是 64 位操作系统 + 64位处理器,则设置为64位内存模式。

2.启动文件系统

3.读取 boot.ini 文件

屏幕显示:黑屏,如果按F8或者多系统时会显示启动选项菜单。

检测和配置硬件阶段

这个阶段检查和配置一些硬件设备,它们分别是:
系统固件,比如时间和日期
总线和适配器
显示适配器
键盘
通讯端口
磁盘
软盘
输入设备(如鼠标)
并口
在ISA总线上运行的设备

屏幕显示:黑屏

内核加载阶段

在内核加载阶段,Ntldr 将首先加载Windows内核 Ntoskrnl.exe 和 硬件抽象层 (HAL). HAL 有点类似于嵌入式操作系统下的BSP(Borad support package),这个抽象层对硬件底层的特性进行隔离,对操作系统提供统一的调用接口,操作系统移植到不同硬件时只要改变相应的 HAL 就可以,其它的内核组件不需要修改,这个是操作系统通常的设计模式。

接下来Ntldr 从HKEY_LOCAL_ MACHINESYSTEMCurrentControlSet 下读取这台机器安装的驱动程序,然后依次加载驱动程序。

驱动程序加载完成后,Windows做如下设置:

1. 创建系统环境变量

2. 启动 win32.sys ,这个是Windows子系统的内核模式部分。

3. 启动 csrss.exe,这个是Windows子系统的用户模式部分。

4. 启动 winlogon.exe

5. 创建虚拟内存页面文件

6. 对一些必要的文件进行改名,(主要是驱动文件,如果更新后,需要在下次重启前改名)

屏幕显示:显示Windows logo 界面和进度条

登录阶段

这个阶段会做如下几件事:

1. 启动机器上安装的所有需要自动启动的Windows服务

2. 启动本地安全认证 Lsass.exe

3. 显示登录界面

屏幕显示:显示登录界面

最新资讯
超过一半的德国零售商对圣诞节持悲观态度

超过一半的德国零售商

根据德国零售协会(HDE)对550家公司的调查,超过一半的德国
跨境电商年内进出口猛增 产业链持续受益

跨境电商年内进出口猛

刚刚过去的“黑色星期五”购物节叠加海外年末节庆,国内
新茶饮“攻心”Z世代:超七成茶饮消费者具有“宅”属性

新茶饮“攻心”Z世代:

阿里本地生活线上大数据显示,2020年新茶饮门店数整体上
那些离开P2P的人:亲历者讲述泡沫如何破裂

那些离开P2P的人:亲历

“大部分人都离开了这个行业。”
经历动荡的一周后 创历史纪录的比特币将面临考验

经历动荡的一周后 创

比特币已较今年3月的低点飙升逾300%,上周触及历史最高
蔚来一年:从破产边缘到“泡沫之巅”

蔚来一年:从破产边缘到

蔚来汽车过去一年从破产的边缘又重回“泡沫之巅”,股价
最新文章
win7怎么批量卸载系统更新补丁KB? win7快速删除系统补丁的技巧

win7怎么批量卸载系统

win7怎么批量卸载系统更新补丁KB?现在win7安装完系统更
如何让Win7操作系统运行如飞? 十小方法让你的Win7系统运行如飞

如何让Win7操作系统运

如何让Win7操作系统加速?今天小编就为大家带来十种方法
win7笔记本电脑怎么连接无线网络 无线网络WiFi的设置教程

win7笔记本电脑怎么连

win7笔记本电脑做完系统后,无线网络会被关闭,原来的无线
Win7怎么修改本地连接MTU值提高网速?

Win7怎么修改本地连接

mtu值通信术语为最大传输单位,mtu值对于网速来说影响较
Win7怎么快速批量将图片垂直旋转90度?

Win7怎么快速批量将图

Win7怎么快速批量将图片垂直旋转90度?Win7中有一批图片
Win7系统怎样将Backup文件夹移动到别的分区

Win7系统怎样将Backup

一些win7用户反映自己的电脑内存变小了,想空出一些空间