摘要:在Windows Server 2003启动过程中,会出现各种各样的问题,本文介绍了操作系统启动过程的几个阶段,收集了一些经常出现的错误,并结合 Windows 操作系统启动过程,针对这些错误提出了解决方法。
当诊断一个系统启动错误时,判断系统是在哪一阶段出现错误非常关键,系统启动过程根据 CPU 架构不同略微有些差异,下面我们简单介绍一下 x86-based 系统启动过程的几个阶段:
1. Pre-Boot Sequence
2. Boot Sequence
3. Kernel Load Sequence
4. Kernel Initialization Sequence
5. Logon Sequence
6. Plug and Play detection
阶段 1: Pre-Boot Sequence
在计算机加电后开始准备启动操作系统之前,有一个 Pre-Boot Sequence 的过程,主要是计算机的 BIOS 中配置的设备引导顺序寻找启动设备,Pre-Boot Sequence 可以分下以下步骤:
(1)系统加电自检:主要监测主板、CPU,内存及其他计算机所使用的硬件设备的信息;
(2)找到合适的启动设备并加载MBR,MBR中有分区表和主引导代码,通过主引导代码定位到活动分区;
(3)通过 MBR 找到活动分区后,从活动分区中加载 BOOT SECTOR 到内存并执行其中的代码;
(4)通过 BOOT SECTOR 找到 NTLDR 文件,加载 NTLDR 到内存中并执行;
可能出现的问题及解决方法:
(1)MBR 损坏
现象 - 分区表不正确
现象 - 主引导代码损坏
现象 - NTDETECT.COM 搜集硬件信息失败
原因:
由于病毒或者其他人为的误编辑导致引导硬盘的 MBR 损害;
解决方法:
利用Windows PE系统引导计算机后,使用 WinHex 工具对引导磁盘的 MBR 进行修复操作;
(2)硬件配置不正确
现象:主板报错;
原因:关键的硬件损害或者配置不正确,如内存条损坏;
解决方法:要通过进一步硬件故障检测,针对不同硬件故障做不同处理;
(3)找不到活动分区
现象:按照设备启动顺序遍历后,最后停在如下界面:
原因:可能是通过 fdisk 工具编辑磁盘分区表后没有指定活动分区;
解决方法:利用Windows PE系统引导计算机后,使用 WinHex 工具对引导磁盘的 MBR 的分区表进行编辑,指定正确的分区表条目的属性为活动分区,然后重新引导操作系统;
(4)NTLDR 文件缺失或损坏
现象:如下图所示,输出错误信息“NTLDR is missing”;
原因:NTLDR 文件被病毒删除或损害,或者文件系统损坏,导致了 NTLDR 文件的损坏;
解决方法:可以通过系统恢复或者 Windows Server 2003 引导盘 NTLDR 文件;
(2)BIOS 配置不正确
现象:
原因:
解决方法:根据实际情况调整 BIOS 配置;
阶段 2: Boot Sequence
当 Pre-Boot Sequence 的阶段完成后,开始进入 Boot Sequence 阶段。可以分下以下步骤:
(1)NTLDR 将 CPU 工作模式从 Real-Mode 切换至 Protected-Mode,然后启动文件系统驱动用于 支持计算机上的文件系统;
新闻热点
疑难解答