Windows XP 系統實用秘笈
產品編號:F032
定價:500元
施威銘研究室 著
|
|
本期書摘--Windows XP 啟動大剖析(1)
從打開電腦電源, 一直到 Windows XP 顯示歡迎登入
畫面讓使用者登入系統為止, 這段過程稱為
Windows XP 的啟動過程, 或稱為開機. 在這段過程
中, 除了耐心等待外, 其實我們也能『插手』控制
Windows XP 的啟動過程, 啟動方式.
以下是打開電腦電源到出現 Windows XP 登入畫面
期間, 電腦進行的幾個階段:
電腦開機自我檢測
↓
啟動硬碟
↓
啟動作業系統
↓
偵測硬體
↓
作業系統載入與初始化
↓
使用者登入
開機自我測試
當電腦開機時, 首先執行的是 BIOS 中的一段程式
, 這段程式會檢查, 初始化各項硬體裝置, 包括
CPU 的站存器, 記憶體, 鍵盤等裝置, 這段檢查過
程稱為開機自我測試(Power-On Self Test, 簡稱
POST).
主機板上裝有其他的介面卡, 例如:顯示卡, SCSI
卡等, POST 程式也會呼叫這些卡上的初始化程式
, 所以在螢幕上也會看到顯示卡的處理器廠牌及顯
示記憶體大小或是 SCSI 裝置的資訊.
在 POST 的過程中, 若發現硬體有問題, 通常會以
不同次數, 長短的嗶聲來表示問題的種類, 有些則
是將問題顯示在螢幕上.
啟動硬碟
在 POST 結束後, BIOS 就會開始嘗試載入作業系
統, 並將電腦的控制權交給作業系統. 以使用硬碟
開機為例:
1.BIOS 在載入第1個硬碟的第1個磁區, 這個磁區
就是磁碟分割表(Partition Table)所在的磁區,
有時也稱為MBR (Master Boot Record)。
MBR 中除了磁碟分割表外, 還有一段稱為 Bootstrap
的小程式, BIOS 載入這個磁區後就將系統的執行
權交給這段小程式.
2.Bootstrap 會查看磁碟分割表的紀錄, 找出被標
示為 Active 的磁碟分割.
在 Windows XP 中將 Active 磁碟分割稱為系統磁
碟分割(System Partition). 若 MBR 程式找不到被
標示為 Active 的磁碟分割, 就會顯示錯誤訊息,
並停止運作. 此時需改以軟碟或光碟開機, 並以適
當的工具(如 Windows 98/SE/ME Fdisk.exe)將可開
機的磁碟分割為 Active.
3.載入系統磁碟分割的第一個磁區,並將控制權交給
這個磁區.
系統磁碟分割的第一個磁區稱為啟動磁區(Boot
Sector), 其用途和 MBR 有點類似, 其內容除了紀
錄檔案系統, 容量等基本資訊外, 也有一段小程式
. 不同作業系統, 其啟動磁區的程式也會有不同.
4.Windows XP 的啟動磁區程式會載入其啟動程式
Ntldr, 並將控制權交給 Ntldr.
啟動作業系統
當 Ntldr 開始執行時, 可說開始進入啟動的重頭
戲, Ntldr 會進行以下工作:
1.將 CPU 切成 32 位元保護模式--雖然目前的個
人電腦都使用 32 位元的處理器, 但開機時它們都
是處於 16 位元的真實模式. 在真實模式下只能存
取 1 MB 的實體記憶體, 為了能使用 1 MB 以外的
其他記憶體空間, 以及執行 32 位元的 Windows XP
, 因此 Ntldr 必須先將處理器切割到 32 位元模
式.
2.載入檔案系統--由於在啟動過程中需不斷載相關
檔案, 因此 Ntldr 需先行載入 NTFS 或 FAT 檔案
系統的驅動程式.
3.讀取 Boot.ini 的內容--這個檔案會記錄各個作
業系統是在哪一個硬碟的哪一個磁碟分割, 若
Boot.ini 中有多個項目, Ntdlr 會列出啟動選單供
使用者選擇選擇要啟動哪一個項目; 若只有一個項
目, 則不會顯示清單, 並直接進行下一個動作.
4.呼叫 Ntdetect, 開始進行硬體偵測.
偵測硬體
Ntdetect 會偵測包括匯流排型態, 鍵盤, 顯示卡,
通訊埠, 印表機埠和滑鼠等裝置並記錄其相關資訊,
偵測完成後, Ntdetect 會將收集到的資訊傳回給
Ntldr. 在稍後系統啟動後, 這些硬體資訊將成為登
錄資料庫中的一部份內容.
作業系統載入及初始化
接下來 Ntldr 就開始載入作業系統核心及必要的
系統元件, 此階段會進行的工作還包括:
◎載入重要的登錄資料庫內機碼資訊以判斷要載
入哪些驅動程式.
◎載入機碼中指定要載入的驅動程式.
◎將 Ntdetect 所收集的資訊傳遞給 Ntoskrnl,
並將控制權交給 Ntoskrnl, 後者會用所得到的硬
體資訊建立 HKEY_LOCAL_MACHINE\HARDWARE 機碼
的內容.
到這個階段為止, Ntldr 的工作也以結束, 接下
來 Ntoskrnl 會進行一連串的作業系統初始化工
作, 像是載入其他的作業系統元件, 進行各項系
統設定等等, 此時我們可在螢幕上看到 Windows
XP 的啟動畫面. 當作業系統初始化完成後,
Windows XP 會進行下一個階段的工作:讓使用
者登入作業系統.
使用者登入
Windows XP 會自動執行 Winlogon 這個程式,
Winlogon 會進行以下 2 個重要工作:
◎載入負責驗證帳戶名稱與密碼的本機安全性管
理元件, 並顯示登入畫面, 若使用者輸入的帳號
, 密碼無誤, 就可以登入 Windows XP 來使用電
腦了.
◎啟動服務控制程式. 服務控制程式會根據登錄
資料庫的內容啟動必要的服務.
服務也可視為一種程式, 但它們不必由使用者來
執行, 所以就算我們不登入系統, Windows XP
也會啟動預設要啟動的服務.
-- 待續
|