摘要:在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,然后啟動文件系統驅動用于 支持計算機上的文件系統;
新聞熱點
疑難解答