在按下計算機電源使計算機啟動,並且在Windows XP專業版操作係統啟動之前這段時間,我們稱之為預引導(Pre-Boot)階段,在這個階段裏,計算機首先運行Power On Self Test(POST),POST檢測係統的總內存以及其他硬件設備的現狀。
從按下計算機開關啟動計算機,到登入到桌麵完成啟動,一共經過了以下幾個階段:
1. 預引導(Pre-Boot)階段;
2. 引導階段;
3. 加載內核階段;
4. 初始化內核階段;
5. 登陸。
每個啟動階段的詳細介紹
a) 預引導階段
在按下計算機電源使計算機啟動,並且在Windows XP專業版操作係統啟動之前這段時間,我們稱之為預引導(Pre-Boot)階段,在這個階段裏,計算機首先運行Power On Self Test(POST),POST檢測係統的總內存以及其他硬件設備的現狀。如果計算機係統的BIOS(基礎輸入/輸出係統)是即插即用的,那麼計算機硬件設備將經過檢驗以及完成配置。計算機的基礎輸入/輸出係統(BIOS)定位計算機的引導設備,然後MBR(Master Boot Record)被加載並運行。在預引導階段,計算機要加載Windows XP的NTLDR文件。
b) 引導階段
Windows XP Professional引導階段包含4個小的階段。
首先,計算機要經過初始引導加載器階段(Initial Boot Loader),在這個階段裏,NTLDR將計算機微處理器從實模式轉換為32位平麵內存模式。在實模式中,係統為MS-DOS保留640kb內存,其餘內存視為擴展內存,而在32位平麵內存模式中,係統(Windows XP Professional)視所有內存為可用內存。接著,NTLDR啟動內建的mini-file system drivers,通過這個步驟,使NTLDR可以識別每一個用NTFS或者FAT文件係統格式化的分區,以便發現以及加載Windows XP Professional,到這裏,初始引導加載器階段就結束了。
接著係統來到了操作係統選擇階段,如果計算機安裝了不止一個操作係統(也就是多係統),而且正確設置了boot.ini使係統提供操作係統選擇的條件下,計算機顯示器會顯示一個操作係統選單,這是NTLDR讀取boot.ini的結果。(至於操作係統選單,由於暫時條件不夠,沒辦法截圖,但是筆者模擬了一個,見圖一。)
在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="Windows Windows 2000 Professional"
其中,multi(0)表示磁盤控製器,disk(0)rdisk(0)表示磁盤,partition(x)表示分區。NTLDR就是從這裏查找Windows XP Professional的係統文件的位置的。(*本文不會更詳細地講解boot.ini的組成結構,因為其與本主題關係不大,如果想了解,可以到一些專門的網站處查詢相關信息。)如果在boot.ini中隻有一個操作係統選項,或者把timeout值設為0,則係統不出現操作係統選擇菜單,直接引導到那個唯一的係統或者默認的係統。在選擇啟動Windows XP Professional後,操作係統選擇階段結束,硬件檢測階段開始。
在硬件檢測階段中,ntdetect.com將收集計算機硬件信息列表並將列表返回到NTLDR,這樣做的目的是便於以後將這些硬件信息加入到注冊表HKEY_LOCAL_MACHINE下的hardware中。
硬件檢測完成後,進入配置選擇階段。如果計算機含有多個硬件配置文件列表,可以通過按上下按鈕來選擇。如果隻有一個硬件配置文件,計算機不顯示此屏幕而直接使用默認的配置文件加載Windows XP專業版。
Xp相關教程