Windows XP Windows 7 Windows 2003 Windows Vista Windows 綜合教學 Linux 系統教學
Windows 10 Windows 8 Windows 2008 Windows NT Windows Server 電腦軟體教學

Windows XP Professional 開機流程深度解析:從按下電源鍵到登入桌面的五大階段

編輯:XP 系統基礎知識

前言

理解 Windows XP Professional 在 x86 架構上的開機流程,不僅有助於系統管理員快速定位啟動故障,更能建立完整的作業系統啟動心智模型。本文依微軟官方技術文件與 MCSE 教材,將開機過程劃分為五大階段,逐層剖析關鍵檔案、登錄機制與核心元件互動。

開機五階段總覽

  1. 預啟動階段 — 硬體自檢、BIOS、MBR、載入 NTLDR
  2. 引導階段 — NTLDR 切換模式、讀取 BOOT.INI、硬體偵測、硬體設定檔選擇
  3. 核心載入階段 — 載入 NTOSKRNL.EXE、HAL、SYSTEM 登錄配置集、啟動型驅動程式
  4. 核心初始化階段 — 建立 HARDWARE 登錄、Clone Control Set、載入/初始化驅動、啟動 Session Manager
  5. 登入階段 — Winlogon、LSA、服務控制管理員啟動服務、複製 LastKnownGood

第一階段:預啟動

  • 按下電源 → 電源供應器穩定發送 Power Good 訊號。
  • CPU 從重設向量 (F000:FFF0) 開始執行 BIOS 程式碼。
  • POST (Power-On Self-Test):檢測記憶體、CPU、鍵盤、顯示卡、磁碟控制器等。
  • 若 BIOS 支援 PnP,自動配置 IRQ/DMA/I/O 位址。
  • 依 BIOS 開機順序尋找開機裝置,讀取 MBR (Master Boot Record) 第 0 磁區 (512 bytes) 至記憶體 0000:7C00 執行。
  • MBR 掃描分區表,尋找作用分區,讀取其 PBR (Partition Boot Record)。
  • PBR 程式碼 (NTFS 為 NTLDR 專用啟動程式) 將 NTLDR 從作用分區根目錄載入記憶體並移交控制權。

第二階段:引導階段 (NTLDR 主導)

2.1 初始引導載入器

  • NTLDR 將 CPU 從 真實模式 (Real Mode) 切換至 32 位元平坦記憶體模式 (Flat Memory Model),打破 640KB 障礙,所有記憶體可直接定址。
  • 載入內建 mini file system drivers (NTFS/FAT/FAT32),無需正式驅動程式即可讀取系統分區檔案。

2.2 作業系統選擇

  • 讀取系統分區根目錄 BOOT.INI。
  • 若 [boot loader] 區段 timeout>0 且存在多個 [operating systems] 項目,顯示選單;否則直接啟動 default 指定項目。
  • BOOT.INI 關鍵參數範例:
[boot loader]
timeout=30
default=multi(0)disk(0)rdisk(0)partition(1)\WINDOWS

[operating systems]
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Professional" /fastdetect
multi(0)disk(0)rdisk(0)partition(2)\WINNT="Microsoft Windows 2000 Professional" /fastdetect
  • multi(0) = IDE/SCSI 控制器編號;disk(0)rdisk(0) = 磁碟編號;partition(x) = 分區編號 (從 1 起算)。
  • 選擇 XP 後進入硬體偵測。

2.3 硬體偵測

  • 執行 NTDETECT.COM (16 位元實模式程式),收集:
    處理器類型/速度、總記憶體、總線類型 (ISA/PCI)、視訊介面卡、鍵盤/滑鼠、並列/序列埠、磁碟控制器與磁碟幾何參數、SCSI 配接器、總線擴充卡資訊。
  • 資訊回傳給 NTLDR,稍後寫入 HKLM\HARDWARE。

2.4 硬體設定檔選擇

  • 若系統有多個硬體設定檔 (行動裝置常見:乞載/離線),顯示選單;單一設定檔則直接使用預設。

引導階段使用檔案清單

NTLDR、BOOT.INI、NTDETECT.COM、NTOSKRNL.EXE、HAL.DLL、NTBOOTDD.SYS (SCSI 開機時)、BOOTSECT.DOS (多重開機 DOS 區)。

第三階段:核心載入

  • NTLDR 載入 NTOSKRNL.EXE (核心映像) 至記憶體,尚未初始化。
  • 載入 HAL.DLL (硬體抽象層),隔離硬體差異。
  • 讀取 HKLM\SYSTEM\Select 判斷要使用哪一組 Control Set (預設 Current 指向)。
  • Control Set 包含:
    Services 子機碼 → 每項服務/驅動的 Start 值 (0=啟動型、1=系統型、2=自動、3=手動、4=停用)。
  • NTLDR 載入所有 Start=0 (Boot Start) 的驅動程式映像至記憶體 (如磁碟類別驅動、檔案系統驅動)。
  • 建立 CurrentControlSet 鏡像 (指向被選中的 Control Set)。
  • 控制權移交給核心進入點 KiSystemStartup,核心初始化階段開始。

第四階段:核心初始化

畫面顯示 Windows XP 啟動畫面與進度條,核心執行四大任務:

  1. 建立 HKLM\HARDWARE:依 NTDETECT 回傳資料動態建立,純記憶體暫存,不寫入磁碟。
  2. 建立 Clone Control Set:複製 CurrentControlSet 為 Clone,作為「最後已知優良配置」基準,不含本次啟動變更。
  3. 載入/初始化驅動程式:
    依序初始化 Start=0 驅動 (已載入) → 掃描 Start=1 (System Start) 驅動並載入初始化。
    每個驅動的 ErrorControl 決定失敗處理:
    0=Ignore、1=Normal (記錄錯誤繼續)、2=Severe (切換 LastKnownGood 重啟)、3=Critical (首次切換 LKG 重啟,再失敗則停機藍畫面)。
  4. 啟動 Session Manager (SMSS.EXE):
    建立系統環境變數、分頁檔、掛載檔案系統、啟動 Win32 子系統 (CSRSS.EXE) 與 Winlogon (WINLOGON.EXE)。核心初始化完成。

第五階段:登入

  1. WINLOGON.EXE 啟動 LSA (Local Security Authority, LSASS.EXE),顯示歡迎畫面或傳統登入對話框。背景仍持續初始化剩餘驅動/服務。
  2. 使用者輸入有效帳號密碼 → LSA 驗證 → 建立存取權杖。
  3. 服務控制管理員 (SCM, SERVICES.EXE) 掃描 HKLM\SYSTEM\CurrentControlSet\Services,啟動 Start=2 (自動) 及更高值的服務,依 DependOnService/DependOnGroup 解析相依順序。
  4. 使用者成功登入 → 系統將 Clone Control Set 複寫為 LastKnownGood Control Set,標誌本次開機「成功」。

關鍵檔案與登錄路徑速查表

階段關鍵檔案關鍵登錄路徑
預啟動NTLDR, MBR, PBR—
引導BOOT.INI, NTDETECT.COM—
核心載入NTOSKRNL.EXE, HAL.DLLHKLM\SYSTEM\Select, HKLM\SYSTEM\CurrentControlSet\Services
核心初始化SMSS.EXE, CSRSS.EXE, WINLOGON.EXEHKLM\HARDWARE, HKLM\SYSTEM\Clone, HKLM\SYSTEM\CurrentControlSet\Services (ErrorControl)
登入LSASS.EXE, SERVICES.EXEHKLM\SYSTEM\CurrentControlSet\Services (Start=2), HKLM\SYSTEM\LastKnownGood

結語

Windows XP 開機是嚴密協同的多階段流程:從 BIOS/NTLDR 的 16→32 位元轉換、BOOT.INI 選單、NTDETECT 硬體枚舉,到核心載入驅動、建立登錄鏡像、Session Manager 啟動子系統,最後 Winlogon/LSA 驗證身分、SCM 啟動服務、寫入 LastKnownGood。熟悉各階段職責與關鍵檔案,遇到開機掛住、藍畫面、服務啟動失敗時,即可依現象快速鎖定階段,事半功倍。

參考資料

  1. Microsoft Windows XP Professional Help and Support Center
  2. MCSE: Windows XP Professional Study Guide (Sybex Press)
  3. MCSE Training Kit: Microsoft Windows XP Professional (Microsoft Press)
Copyright © Windows教程網 All Rights Reserved