Windows XP 啟動過程詳解

來源:互聯網
上載者:User

 

[開機前階段]
1>,post過程開機自我測試 (POST):這是每個電腦的電源接通之後,必須要做的第一件事情.post
將檢查硬體,是否有記憶體,是否有鍵盤以及scsi卡等等.雖然這是一個和作業系統無關的
過程,但是他卻是保證系統正常啟動的第一個步驟.
2>,一旦自檢完成,計算即將尋找啟動裝置,並將MBR mainbootrecord(主引導紀錄)調
入記憶體.
典型故障:開機以後藍屏,"operating system not found",提
示"invalidpartitiontable"
這些錯誤資訊的出現是因為Mbr遭到破壞;
解決辦法:用系統啟動盤(磁碟片或者安裝光碟片)啟動電腦,然後執行下面的命令:
Fdisk.exe/mbr
Fdisk/mbr這個命令可以在硬碟上無條件地寫入主引導程式和分區表,並且不對dos引導
扇區Dbr (dos boot record),檔案配置表和目錄區進行初始化;也就是說,執行
fdisk/mbr後,可在不破壞硬碟上原有資料資訊的情況下,重建主引導程式和分區表;他
對單純感染嵌入式引導區病毒的硬碟,可以起到清除病毒的作用;
Fdisk是msdos,windows95/98/me中的標準命令,windowsNT/2k/XP使用者,可以採用下面的
辦法修複主引導紀錄:
啟動系統故障修復主控台,在命令提示字元下面輸入fixmbr,在出現警告資訊的時候按Y鍵
,最後輸入exit退出容錯回復控制台;
3>,計算即將尋找使用中的磁碟分割,開機磁區,並將其裝入記憶體;
4>,開始調用Ntldr,Ntldr是系統載入器,他是第二階段的關鍵區段;
Plus:Mbr,或者說(masterbootrecord)的縮寫,中文意思就是主引導紀錄,硬碟的0磁軌
第一扇區稱為MBR,他的大小是512位元組,而這個地區可以分為兩個部分:i,preboot區(預
啟動區),佔446位元組:ii,第二部分是partitiontable區(分區表)佔64個位元組,該區相當
於一個小程式,作用是判斷那個分區被標記為使用中的磁碟分割,然後去讀取那個分區的啟動區,
並運行該區中的代碼.最後兩個位元組是一個標識符,用來表明這個扇區的結束,其二進位
數值為0x55AA.
[啟動階段]
1>,當Ntldr開始運行之後,它首先將處理器的實模式改為32位平滑記憶體模式;
解釋:實模式和32位平滑記憶體模式:
兩者都是電腦系統的定址方式.實模式指的就是16位元模式,運行比較穩定.平滑記憶體模式
則在定址範圍和速度上有明顯的優勢.
2>,開機檔案系統(例如fat,ntfs),以便從磁碟上訪問檔案;
3>,隨後,Ntldr將訪問第一個檔案:boot.ini檔案,並且根據檔案的內容在螢幕上顯示啟
動菜單;
4>,如果使用者選擇的不是win2k(或者winXp)作業系統,那麼Ntldr將調用bootsect.dos,
將控制權交給她,並且啟動所操作的系統,否則,Ntldr將運行Ntdetect.com檔案;
[典型故障:]
i,當妳選擇了其他動作系統之後,出現了錯誤資訊:I/O error accessing bootsect or
file Muti(0)disk(0)rdisk(0)partiton(1)//BOOTSS
這種情況是由於找不到開機磁碟分割造成的,一般出現在安裝了多個作業系統的電腦上.
當妳在已有的作業系統例如win98上安裝win2k的時候,安裝程式會將原有的開機磁碟分割(
一般為0分區)儲存成bootsect.dos,然後安裝程式會將win2k的開機磁碟分割放到0分區上.
因此,bootsect.dos是在啟動的過程中建立的,無法像其他丟失的檔案一樣可以從光碟片
上面複製過來,那麼,如何解決這種情況?
為原來的作業系統重建一個開機磁碟分割.例如:對於win98,只需要用win98的啟動盤啟
動系統,然後在命令提示字元下輸入sysc:,
建立bootsect.dos:
a,將win2k安裝光碟片放入光碟機,啟動電腦;
b,在出現歡迎畫面後,按兩次R鍵;
c,當安裝程式運行到修複任務選想的時候,選擇"檢查開機磁區"選項,然後將光條移動
到"繼續(執行所選任務)"上按斷行符號;
d,跟隨安裝嚮導繼續,最後會看見"安裝程式已完成修複"的提示;
e,Reset;
5>,Ntdetect.com將收集電腦硬體方面的資訊,這些硬體包括:電腦ID號,適配卡類
型,顯卡,鍵盤以及滑鼠,磁碟片,com口和並口等等.一旦資訊收集完成,Ntdetect.com會將
資訊傳遞給Ntldr,並將資訊寫入註冊表中的hkeylocalmachine/hardware分支;
可以看到:啟動階段調用了3個非常重要的檔案:Ntdetect.com,boot.ini和
bootsect.dos.而這個過程也是安裝了多個作業系統經常出現問題的地方;
[典型故障:]電腦啟動時:
沒有出現啟動菜單;
這種情況是將顯示作業系統列表的時間設為0秒引起的.解決的辦法是,我的電腦,屬性,
進階,啟動故障恢複,顯示作業系統列表...(修改時間數值),我的解決方案是按F8鍵進
入,選擇作業系統列表。
[典型故障:]當電腦啟動的時候出現:
Ntldr is missing,press any key to restart...
Ntldr檔案丟失,出現錯誤會造成這個故障,其它類似的故障還
有,Ntdetect.comismissing..等等,利用下面的解決辦法:
利用win2k安裝光碟片,這個檔案存放在系統安裝光碟片的i386目錄下面,因此,只要將其複
制到硬碟就可以了;
a,放入win2k光碟片,啟動win2k安裝;
b,出現歡迎介面的時候,按R;
c,win2k修複選項介面中,按R;
d,當提示選擇修複選項的時候,按M;(手動修複)
e,選擇驗證win2k系統檔案;
f,選擇繼續(執行所選任務),然後斷行符號,
g,出現緊急修複盤介面:如果你有緊急修複盤的話,插入緊急修複盤,根據提示修複安裝
,reset;
h,如果沒有緊急修複盤,按L,用光碟片修複;
使用控制台:輸入map,記下win2k安裝光碟片所在的光碟機盤符L;
輸入:copy L:/i386/ntldr c:/
提示是否覆蓋,Y;
輸入exit重新啟動;
[核心調用階段]
1,在這個階段,Ntldr將調用Ntoskrnl.exe,並將由Ntdetect.com收集的硬體資訊傳遞給
它,同時被調用的還有hal.dll檔案.如果你有多個硬體設定檔,當運行到這一步的時
候,你會在螢幕上看到要求選擇硬體設定檔的資訊.另外,Ntldr也將從註冊表中調用
所有啟動值為0x0的裝置驅動程式.如果你在boot.ini檔案中有"/sos"參數,一般
在"/fastdetect"後面,那麼妳將看到調用裝置列表;
[典型故障]
啟動的時候出現錯誤資訊:"Ntoskrnl.exe missing or currupt on bootup"
(ntoskrnl.exe丟失或者損壞)
如果出現下列情形之一,會出現ntoskrnl.exe錯誤出現:
新增加了一個硬碟或者改變了原有的分區,例如:刪除了原來的一個分區或者將原來的
兩個分區合并,都可能導致boot.ini檔案中的[bootloader]部分的default值丟失或者
無效,從而在啟動過程中無法找到啟動所需的檔案;
Ntoskrnl.exe檔案被刪除或者被損壞;
[解決辦法:]
使用啟動盤啟動作業系統,編輯boot.ini檔案,檢察與下面一行類似的命令中是否有錯
誤:
muti(0)disk(0)rdisk(0)partition(1)
/WINNT="microsoftwindows2000professional"/fastdetect
這一行表示在第一個ide硬碟上rdisk(0)的第一個分區上partition(1)裝有win2k,大家
可以根據這個規律來尋找自己的boot.ini檔案中的數值是否正確;
如果沒有發現錯誤,請將win2k安裝光碟片放入光碟機,然後再命令列輸入:
expand x:/i386/ntoskrnl.ex_ c:/ntoskrnl.exe
斷行符號,提示檔案已經釋放,取出光碟片,reset;
[典型故障:]Hal.dllismissing...
這個故障是因為缺少hal.dll檔案引起的,解決的辦法是:
a,啟動容錯回復控制台;
b,輸入:expand x:/i386/hal.dl_ c:/windows/system32/hal.dll
c,輸入exit,斷行符號;
載入核心階段,ntldr載入稱為WindowsXP核心的ntokrnl.exe;系統載入了WindowsXP內
核但是沒有將它初始化,接著ntldr載入硬體抽象層(HAL,hal.dll),然後,系統繼續載入
HKEY_LOCAL_MACHINE/system鍵,NTLDR讀取select鍵來決定哪一個ControlSet將被載入
;控制集中包含裝置的驅動程式以及需要載入的服務,NTLDR載入
HKEY_LOCAL_MACHINE/system/service/...下start索引值為0的最底層裝置驅動。當作為
ControlSet的鏡像的CurrentControlSet被載入時,ntldr傳遞控制給核心,初始化核心
階段就開始了;
2,核心初始化.這一步將對核心以及上一步中調用的硬體驅動程式進行初始化.
初始化過程:
在初始化核心階段開始的時候,彩色的WindowsXP的logo以及進度條顯示在螢幕中央,在
這個階段,系統完成了啟動的3項任務;
1>,核心使用在硬體檢測時收集到的資料來建立了HKEY_LOCAL_MACHINE/HARDWARE鍵;
2>,核心通過引用HKEY_LOCAL_MACHINE/system/Current的預設值複製ControlSet來創
建了CloneControlSet,CloneControlSet配置是電腦資料的備份,不包括啟動中的改
變,也不會被修改;
3>,系統完成初始化以及載入裝置驅動程式,核心初始化那些在載入核心階段被載入的
底層驅動程式,然後核心掃描
HKEY_LOCAL_MACHINE/system/CurrentControlSet/service/...下start索引值為1的裝置
驅動程式,這些裝置驅動程式在載入的時候便完成初始化,如果有錯誤發生,核心使用
ErrorControl索引值來決定如何處理....
值為3時,錯誤標誌為危機/關鍵,系統初次遇到錯誤會以LastKnownGoodControlSet重新
啟動,如果使用LastKnownGoodControlSet啟動仍然產生錯誤,系統報告啟動失敗,錯誤
資訊將被顯示,系統停止啟動;
值為2時錯誤情況為嚴重,系統啟動失敗並且以LastKnownGoodControlSet重新啟動,如
果系統啟動已經在使用LastKnownGood值,它會忽略錯誤並且繼續啟動;
當值是1的時候錯誤為普通,系統會產生一個錯誤資訊,但是仍然會忽略這個錯誤並且繼
續啟動;
當值是0的時候忽略,系統不會顯示任何錯誤資訊而繼續運行;
plus:Hal.dll,是英文hardwareabstractionlayer,硬體抽象層的縮寫,這種技術提供了
驅動程式與硬體之間的借口,可以防止應用程式直接存取電腦系統記憶體,cpu以及硬體
裝置(如音效卡和顯卡),從而使系統可以跨越多種硬體平台運行;
[服務調用階段]
這個階段將啟動會話管理器(smss.exe),會話管理起將讀取必須調用的程式列表,在注
冊表的bootExecute項中,然後設定記憶體分頁並且啟動win32子系統;
SessionManager啟動了WindowsXP進階子系統以及服務,SessionManager啟動控制所有
輸入,輸出裝置以及訪問顯示器螢幕的Win32子系統以及Winlogon進程,初始化核心完畢
[win32子系統啟動階段]
一旦win32子系統啟動,會自動運行winlogon.exe,同時移動本地安全管理(lsass.exe)
並且顯示登陸對話方塊.然後回運行服務控制器SCreg.exe,服務控制器會檢察註冊表中啟
動值為0x2的服務項目,然後調用這些服務,值為0x3的服務表示需要手動啟動,值為0x4
的服務表示禁用;
ServiceController最後執行以及掃描
HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Servives來檢查是否還有服務需要
載入,ServiceController尋找start索引值為2或更高的服務,服務按照start的值以及
DependOnGroup和DepandOnService的值來載入;
[使用者登陸階段]
最後就是使用者登陸階段了,一旦使用者可以登陸進系統,那麼也就表明整個啟動過程已經
結束,成功登陸之後,當前設定也被自動儲存為"最後一次正確配置lastknowngood"以備
以後使用;
Winlogon.exe啟動Local Security Authority,同時WindowsXP Professional歡迎畫面
或者登陸對話方塊顯示,這時候,系統還可能在後台繼續初始化剛才沒有完成的驅動程式;
提示輸入有效使用者名稱或密碼;

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.