国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統 > WinXP > 正文

XP啟動時經過了幾個階段

2020-05-27 13:52:55
字體:
來源:轉載
供稿:網友

 在按下計算機電源使計算機啟動,并且在WindowsXP專業版操作系統啟動之前這段時間,我們稱之為預引導(Pre-Boot)階段,在這個階段里,計算機首先運行PowerOnSelfTest(POST),POST檢測系統的總內存以及其他硬件設備的現狀。

  從按下計算機開關啟動計算機,到登入到桌面完成啟動,一共經過了以下幾個階段:

  1.預引導(Pre-Boot)階段;

  2.引導階段;

  3.加載內核階段;

  4.初始化內核階段;

  5.登陸。

  每個啟動階段的詳細介紹

  a)預引導階段

  在按下計算機電源使計算機啟動,并且在WindowsXP專業版操作系統啟動之前這段時間,我們稱之為預引導(Pre-Boot)階段,在這個階段里,計算機首先運行PowerOnSelfTest(POST),POST檢測系統的總內存以及其他硬件設備的現狀。如果計算機系統的BIOS(基礎輸入/輸出系統)是即插即用的,那么計算機硬件設備將經過檢驗以及完成配置。計算機的基礎輸入/輸出系統(BIOS)定位計算機的引導設備,然后MBR(MasterBootRecord)被加載并運行。在預引導階段,計算機要加載WindowsXP的NTLDR文件。

  b)引導階段

  WindowsXPProfessional引導階段包含4個小的階段。

  首先,計算機要經過初始引導加載器階段(InitialBootLoader),在這個階段里,NTLDR將計算機微處理器從實模式轉換為32位平面內存模式。在實模式中,系統為MS-Dos保留640kb內存,其余內存視為擴展內存,而在32位平面內存模式中,系統(WindowsXPProfessional)視所有內存為可用內存。接著,NTLDR啟動內建的mini-filesystemdrivers,通過這個步驟,使NTLDR可以識別每一個用NTFS或者FAT文件系統格式化的分區,以便發現以及加載WindowsXPProfessional,到這里,初始引導加載器階段就結束了。

  接著系統來到了操作系統選擇階段,如果計算機安裝了不止一個操作系統(也就是多系統),而且正確設置了boot.ini使系統提供操作系統選擇的條件下,計算機顯示器會顯示一個操作系統選單,這是NTLDR讀取boot.ini的結果。(至于操作系統選單,由于暫時條件不夠,沒辦法截圖,但是筆者模擬了一個,見圖一。)

  在boot.ini中,主要包含以下內容:

  [bootloader]

  timeout=30

  default=multi(0)disk(0)rdisk(0)partition(1)WINDOWS

  [operatingsystems]

  multi(0)disk(0)rdisk(0)partition(1)WINDOWS="MicrosoftWindowsXPProfessional"/fastdetect

  multi(0)disk(0)rdisk(0)partition(2)WINNT="WindowsWindows2000Professional"

  其中,multi(0)表示磁盤控制器,disk(0)rdisk(0)表示磁盤,partition(x)表示分區。NTLDR就是從這里查找WindowsXPProfessional的系統文件的位置的。(*本文不會更詳細地講解boot.ini的組成結構,因為其與本主題關系不大,如果想了解,可以到一些專門的網站處查詢相關信息。)如果在boot.ini中只有一個操作系統選項,或者把timeout值設為0,則系統不出現操作系統選擇菜單,直接引導到那個唯一的系統或者默認的系統。在選擇啟動WindowsXPProfessional后,操作系統選擇階段結束,硬件檢測階段開始。

  在硬件檢測階段中,ntdetect.com將收集計算機硬件信息列表并將列表返回到NTLDR,這樣做的目的是便于以后將這些硬件信息加入到注冊表HKEY_LOCAL_MacHINE下的hardware中。

  硬件檢測完成后,進入配置選擇階段。如果計算機含有多個硬件配置文件列表,可以通過按上下按鈕來選擇。如果只有一個硬件配置文件,計算機不顯示此屏幕而直接使用默認的配置文件加載WindowsXP專業版。

  引導階段結束。在引導階段,系統要用到的文件一共有:NTLDR,Boot.ini,ntdetect.com,ntokrnl.exe,Ntbootdd.sys,bootsect.dos(可選的)。

  c)加載內核階段

  在加載內核階段,ntldr加載稱為WindowsXP內核的ntokrnl.exe。系統加載了WindowsXP內核但是沒有將它初始化。接著ntldr加載硬件抽象層(HAL,hal.dll),然后,系統繼續加載HKEY_LOCAL_MACHINEsystem鍵,NTLDR讀取select鍵來決定哪一個ControlSet將被加載??刂萍邪O備的驅動程序以及需要加載的服務。NTLDR加載HKEY_LOCAL_MACHINEsystemservice...下start鍵值為0的最底層設備驅動。當作為ControlSet的鏡像的CurrentControlSet被加載時,ntldr傳遞控制給內核,初始化內核階段就開始了。

  d)初始化內核階段

  在初始化內核階段開始的時候,彩色的WindowsXP的logo以及進度條顯示在屏幕中央,在這個階段,系統完成了啟動的4項任務:

  *內核使用在硬件檢測時收集到的數據來創建了HKEY_LOCAL_MACHINEHARDWARE鍵。

  *內核通過引用HKEY_LOCAL_MACHINEsystemCurrent的默認值復制ControlSet來創建了CloneControlSet。CloneControlSet配置是計算機數據的備份,不包括啟動中的改變,也不會被修改。

  *系統完成初始化以及加載設備驅動程序,內核初始化那些在加載內核階段被加載的底層驅動程序,然后內核掃描HKEY_LOCAL_MACHINEsystemCurrentControlSetservice...下start鍵值為1的設備驅動程序。這些設備驅動程序在加載的時候便完成初始化,如果有錯誤發生,內核使用ErrorControl鍵值來決定如何處理,值為3時,錯誤標志為危機/關鍵,系統初次遇到錯誤會以LastKnownGoodControlSet重新啟動,如果使用LastKnownGoodControlSet啟動仍然產生錯誤,系統報告啟動失敗,錯誤信息將被顯示,系統停止啟動;值為2時錯誤情況為嚴重,系統啟動失敗并且以LastKnownGoodControlSet重新啟動,如果系統啟動已經在使用LastKnownGood值,它會忽略錯誤并且繼續啟動;當值是1的時候錯誤為普通,系統會產生一個錯誤信息,但是仍然會忽略這個錯誤并且繼續啟動;當值是0的時候忽略,系統不會顯示任何錯誤信息而繼續運行

  *SessionManager啟動了WindowsXP高級子系統以及服務,SessionManager啟動控制所有輸入、輸出設備以及訪問顯示器屏幕的Win32子系統以及Winlogon進程,初始化內核完畢。

  e)登陸

  *Winlogon.exe啟動LocalSecurityAuthority,同時WindowsXPProfessional歡迎屏幕或者登陸對話框顯示,這時候,系統還可能在后臺繼續初始化剛才沒有完成的驅動程序。

  *提示輸入有效的用戶名或密碼。

  ServiceController最后執行以及掃描HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServives來檢查是否還有服務需要加載,ServiceController查找start鍵值為2或更高的服務,服務按照start的值以及DependOnGroup和DepandOnService的值來加載。

  只有用戶成功登陸到計算機后,WindowsXP的啟動才被認為是完成,在成功登陸后,系統拷貝CloneControlSet到LastKnownGoodControlSet,完成這一步驟后,系統才意味著已經成功引導了。

 

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 确山县| 武清区| 清水河县| 永济市| 南郑县| 调兵山市| 沐川县| 寿阳县| 宜昌市| 碌曲县| 高阳县| 清水河县| 临夏市| 姚安县| 镇坪县| 东山县| 潞城市| 伊吾县| 鄢陵县| 卓资县| 老河口市| 丘北县| 独山县| 兴安县| 凉城县| 黑河市| 孟州市| 边坝县| 赣州市| 开封市| 山东省| 柳江县| 遂宁市| 饶平县| 嘉祥县| 齐齐哈尔市| 梨树县| 中牟县| 门源| 乌兰察布市| 云龙县|