診斷和修復(fù)啟動(dòng)故障_第1頁
診斷和修復(fù)啟動(dòng)故障_第2頁
診斷和修復(fù)啟動(dòng)故障_第3頁
診斷和修復(fù)啟動(dòng)故障_第4頁
診斷和修復(fù)啟動(dòng)故障_第5頁
已閱讀5頁,還剩1頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

一系統(tǒng)啟動(dòng)的簡要說明:第一步:當(dāng)我們按下電源開關(guān)時(shí),電源就開始向主板和其它設(shè)備供電,此時(shí)電壓還不太穩(wěn)定,主板上的控制芯片組會(huì)向CPU發(fā)出并保持一個(gè)RESET(重置)信號(hào),讓CPU內(nèi)部自動(dòng)恢復(fù)到初始狀態(tài),但CPU在此刻不會(huì)馬上執(zhí)行指令。當(dāng)芯片組檢測到電源已經(jīng)開始穩(wěn)定供電了(當(dāng)然從不穩(wěn)定到穩(wěn)定的過程只是一瞬間的事情),它便撤去RESET信號(hào)(如果是手工按下計(jì)算機(jī)面板上的Reset按鈕來重啟機(jī)器,那么松開該按鈕時(shí)芯片組就會(huì)撤去RESET信號(hào)),CPU馬上就從地址FFFF0H處開始執(zhí)行指令,從前面的介紹可知,這個(gè)地址實(shí)際上在系統(tǒng)BIOS的地址范圍內(nèi),無論是AwardBIOS還是AMIBIOS,放在這里的只是一條跳轉(zhuǎn)指令,跳到系統(tǒng)BIOS中真正的啟動(dòng)代碼處。第二步:系統(tǒng)BIOS的啟動(dòng)代碼首先要做的事情就是進(jìn)行POST(Power-OnSelfTest,加電后自檢),POST的主要任務(wù)是檢測系統(tǒng)中一些關(guān)鍵設(shè)備是否存在和能否正常工作,例如內(nèi)存和顯卡等設(shè)備。由于POST是最早進(jìn)行的檢測過程,此時(shí)顯卡還沒有初始化,如果系統(tǒng)BIOS在進(jìn)行POST的過程中發(fā)現(xiàn)了一些致命錯(cuò)誤,例如沒有找到內(nèi)存或者內(nèi)存有問題(此時(shí)只會(huì)檢查640K常規(guī)內(nèi)存),那么系統(tǒng)BIOS就會(huì)直接控制喇叭發(fā)聲來報(bào)告錯(cuò)誤,聲音的長短和次數(shù)代表了錯(cuò)誤的類型。在正常情況下,POST過程進(jìn)行得非???,我們幾乎無法感覺到它的存在,POST結(jié)束之后就會(huì)調(diào)用其它代碼來進(jìn)行更完整的硬件檢測。{POST上電自檢是BIOS設(shè)置的一個(gè)功能。計(jì)算機(jī)接通電源后,系統(tǒng)首先由POST(POWERONSELFTEST,上電自檢)程序來對(duì)內(nèi)部各個(gè)設(shè)備進(jìn)行檢查,通常完整的POST自檢將包括CPU、640K基本內(nèi)存(640KBASEMEMORY)、1MB以上擴(kuò)展內(nèi)存(EXTENDMEMORY)、ROM(READ-ONLYMEMORY,只讀存儲(chǔ)器)、主板、CMOS存儲(chǔ)器、串口、并口、顯卡、軟盤子系統(tǒng)、硬盤子系統(tǒng)、鍵盤進(jìn)行測試,一旦發(fā)現(xiàn)問題,系統(tǒng)將給出警告或鳴笛警告。)}第三步:接下來系統(tǒng)BIOS將查找顯卡的BIOS,前面說過,存放顯卡BIOS的ROM芯片的起始地址通常設(shè)在C0000H處,系統(tǒng)BIOS在這個(gè)地方找到顯卡BIOS之后就調(diào)用它的初始化代碼,由顯卡BIOS來初始化顯卡,此時(shí)多數(shù)顯卡都會(huì)在屏幕上顯示出一些初始化信息,介紹生產(chǎn)廠商、圖形芯片類型等內(nèi)容,不過這個(gè)畫面幾乎是一閃而過。系統(tǒng)BIOS接著會(huì)查找其它設(shè)備的BIOS程序,找到之后同樣要調(diào)用這些BIOS內(nèi)部的初始化代碼來初始化相關(guān)的設(shè)備。第四步:查找完所有其它設(shè)備的BIOS之后,系統(tǒng)BIOS將顯示出它自己的啟動(dòng)畫面,其中包括有系統(tǒng)BIOS的類型、序列號(hào)和版本號(hào)等內(nèi)容。第五步:接著系統(tǒng)BIOS將檢測和顯示cpu的類型和工作頻率,然后開始測試所有的RAM,并同時(shí)在屏幕上顯示內(nèi)存測試的進(jìn)度,我們可以在CMOS設(shè)置中自行決定使用簡單耗時(shí)少或者詳細(xì)耗時(shí)多的測試方式。第六步:內(nèi)存測試通過之后,系統(tǒng)BIOS將開始檢測系統(tǒng)中安裝的一些標(biāo)準(zhǔn)硬件設(shè)備,包括硬盤、CD-ROM、串口、并口、軟驅(qū)等設(shè)備,另外絕大多數(shù)較新版本的系統(tǒng)BIOS在這一過程中還要自動(dòng)檢測和設(shè)置內(nèi)存的定時(shí)參數(shù)、硬盤參數(shù)和訪問模式等。第七步:標(biāo)準(zhǔn)設(shè)備檢測完畢后,系統(tǒng)BIOS內(nèi)部的支持即插即用的代碼將開始檢測和配置系統(tǒng)中安裝的即插即用設(shè)備,每找到一個(gè)設(shè)備之后,系統(tǒng)BIOS都會(huì)在屏幕上顯示出設(shè)備的名稱和型號(hào)等信息,同時(shí)為該設(shè)備分配中斷、DMA通道和I/O端口等資源。第八步:到這一步為止,所有硬件都已經(jīng)檢測配置完畢了,多數(shù)系統(tǒng)BIOS會(huì)重新清屏并在屏幕上方顯示出一個(gè)表格,其中概略地列出了系統(tǒng)中安裝的各種標(biāo)準(zhǔn)硬件設(shè)備,以及它們使用的資源和一些相關(guān)工作參數(shù)。第九步:接下來系統(tǒng)BIOS將更新ESCD(ExtendedSystemConfigurationData,擴(kuò)展系統(tǒng)配置數(shù)據(jù))。ESCD是系統(tǒng)BIOS用來與操作系統(tǒng)交換硬件配置信息的一種手段,這些數(shù)據(jù)被存放在CMOS(一小塊特殊的RAM,由主板上的電池來供電)之中。通常ESCD數(shù)據(jù)只在系統(tǒng)硬件配置發(fā)生改變后才會(huì)更新,所以不是每次啟動(dòng)機(jī)器時(shí)我們都能夠看到“UpdateESCD…Success”這樣的信息,不過,某些主板的系統(tǒng)BIOS在保存ESCD數(shù)據(jù)時(shí)使用了與Windows9x不相同的數(shù)據(jù)格式,于是Windows9x在它自己的啟動(dòng)過程中會(huì)把ESCD數(shù)據(jù)修改成自己的格式,但在下一次啟動(dòng)機(jī)器時(shí),即使硬件配置沒有發(fā)生改變,系統(tǒng)BIOS也會(huì)把ESCD的數(shù)據(jù)格式改回來,如此循環(huán),將會(huì)導(dǎo)致在每次啟動(dòng)機(jī)器時(shí),系統(tǒng)BIOS都要更新一遍ESCD,這就是為什么有些機(jī)器在每次啟動(dòng)時(shí)都會(huì)顯示出相關(guān)信息的原因。第十步:ESCD更新完畢后,系統(tǒng)BIOS的啟動(dòng)代碼將進(jìn)行它的最后一項(xiàng)工作,即根據(jù)用戶指定的啟動(dòng)順序從軟盤、硬盤或光驅(qū)啟動(dòng)。以從C盤啟動(dòng)為例,系統(tǒng)BIOS將讀取并執(zhí)行硬盤上的主引導(dǎo)記錄,主引導(dǎo)記錄接著從分區(qū)表中找到第一個(gè)活動(dòng)分區(qū),然后讀取并執(zhí)行這個(gè)活動(dòng)分區(qū)的分區(qū)引導(dǎo)記錄,而分區(qū)引導(dǎo)記錄將負(fù)責(zé)讀取并執(zhí)行IO.SYS,這是DOS和Windows9x最基本的系統(tǒng)文件。Windows9x的IO.SYS首先要初始化一些重要的系統(tǒng)數(shù)據(jù),然后就顯示出我們熟悉的藍(lán)天白云,在這幅畫面之下,Windows將繼續(xù)進(jìn)行DOS部分和GUI(圖形用戶界面)部分的引導(dǎo)和初始化工作。為了診斷和修復(fù)啟動(dòng)故障,您需要理解啟動(dòng)過程中發(fā)生了什么。第一步隔離啟動(dòng)問題,判斷問題是發(fā)生在WindowsXP啟動(dòng)之前還是之后。二系統(tǒng)啟動(dòng)的詳細(xì)說明:啟動(dòng)失敗的根本原因,包括相關(guān)因素,可能是來自多方面的,比如用戶錯(cuò)誤,應(yīng)用程序錯(cuò)誤,硬件問題,病毒問題。如果問題過于嚴(yán)重,您可能需要重新安裝WindowsXP或者從備份介質(zhì)中恢復(fù)文件。在基于x86的系統(tǒng)上,發(fā)生在啟動(dòng)故障operatingsystemloader(Ntldr)可能意味著啟動(dòng)文件丟失或者被刪除,或者硬盤主引導(dǎo)記錄(MBR)損壞,或者分區(qū)表,或者引導(dǎo)扇區(qū)的損壞。如果問題發(fā)生在啟動(dòng)期間,那么系統(tǒng)可能存在不兼容的軟件或者驅(qū)動(dòng),不兼容或者設(shè)置錯(cuò)誤的硬件,或者系統(tǒng)文件損壞。基于x86系統(tǒng)的啟動(dòng)過程WindowsXP啟動(dòng)過程和NT、2000類似,區(qū)別于MS-DOS、95、98、Me這些系統(tǒng)。所有運(yùn)行WindowsXP的系統(tǒng)都遵循如下啟動(dòng)順序:上電自檢(POST)階段初始化啟動(dòng)階段啟動(dòng)裝載階段檢測、設(shè)置硬件階段系統(tǒng)核心裝載階段登陸階段上述的啟動(dòng)過程適用于正常關(guān)機(jī)后的系統(tǒng)啟動(dòng)或者重新啟動(dòng),從休眠或者待機(jī)狀態(tài)恢復(fù)的情況例外,后者請(qǐng)參考后面的章節(jié)“ResolvingPowerManagementProblemsonx86-basedSystems“為了WindowsXPProfessional能夠引導(dǎo),系統(tǒng)和啟動(dòng)分區(qū)必須包含表28.1.中的文件。表28.1基于x86系統(tǒng)上WindowsXPProfessional的啟動(dòng)文件文件名文件所處位置描述Ntldr系統(tǒng)分區(qū)根目錄操作系統(tǒng)裝載器Boot.ini系統(tǒng)分區(qū)根目錄該文件指定WindowsXPProfessional的安裝路徑。對(duì)于多引導(dǎo)系統(tǒng)Boot.ini包含一個(gè)顯示在啟動(dòng)菜單上的操作系統(tǒng)選擇菜單。Bootsect.dos(僅適用于多引導(dǎo)系統(tǒng))系統(tǒng)分區(qū)根目錄Ntldr將會(huì)裝載此文件,以讀取可能包含MS-DOS,Windows95,Windows98,orWindowsMe等OS的WindowsXPProfessional多引導(dǎo)系統(tǒng)設(shè)定。Bootsect.dos包含這些操作系統(tǒng)的引導(dǎo)扇區(qū),文件屬性為系統(tǒng)、隱藏。Ntdetect系統(tǒng)分區(qū)根目錄此文件將掃描硬件設(shè)置信息,并傳遞給NtldrNtbootdd.sys系統(tǒng)分區(qū)根目錄(SCSI或者ATA等固件本身禁用或者不支持INT-13中斷擴(kuò)展調(diào)用的設(shè)備需要此文件).該驅(qū)動(dòng)程序用于訪問不使用BIOS,而連接到SCSI或者ATA的硬盤驅(qū)動(dòng)器,Thecontentsofthisfiledependonthestartupcontrollerused.Ntoskrnl.exesystemroot\System32WindowsXPProfessional操作系統(tǒng)的核心(也被叫做kernel)。作為kernel的一部分,運(yùn)行在處理器特權(quán)模式下的代碼,允許直接訪問系統(tǒng)數(shù)據(jù)和硬件。在安裝WindowsXPProfessional操作系統(tǒng)期間,如果是單處理器系統(tǒng),setup程序從操作系統(tǒng)光盤上復(fù)制Ntoskrnl.exe文件,如果是多處理器系統(tǒng),Setup從安裝光盤上復(fù)制Ntoskrnlmp.exe并將它重命名為Ntoskrnl.exe.Hal.dllsystemroot\System32硬件抽象層動(dòng)態(tài)(HAL)鏈接庫文件。HALabstracts從操作系統(tǒng)提取底層硬件信息,并給相同類型的設(shè)備,提供公用編程接口。Microsoft®Windows®XPProfessional操作系統(tǒng)光盤包含若干Hal文件,Setup將適合您系統(tǒng)硬件設(shè)置的文件復(fù)制到您的計(jì)算機(jī),并重命名為Hal.dll.Systemregistryfilesystemroot\System32\Config\System此注冊表文件包含創(chuàng)建HKEY_LOCAL_MACHINE\SYSTEM注冊表鍵值所需要的數(shù)據(jù)。該鍵值包含了操作系統(tǒng)啟動(dòng)設(shè)備和系統(tǒng)服務(wù)所需要的信息。Devicedriverssystemroot\System32\Drivers一些硬件設(shè)備的驅(qū)動(dòng)程序文件,比如鍵盤、鼠標(biāo)、顯卡。注:WindowsNT4.0,Windows2000,andWindowsXPProfessional定義“系統(tǒng)“和“啟動(dòng)“分區(qū)有別于啟動(dòng)操作系統(tǒng)。系統(tǒng)卷包含啟動(dòng)WindowsXPProfessional所必須的文件,比如Windowsloader(Ntldr)。啟動(dòng)卷WindowsXPProfessional操作系統(tǒng)文件和文件夾比如systemroot和systemroot\System32。在基于x86系統(tǒng)的計(jì)算機(jī)上,啟動(dòng)卷和系統(tǒng)卷可以但不一定是同一個(gè)卷。在表28.1中,systemroot是眾多環(huán)境變量之一,用于將象文件和文件路徑這樣的字符串關(guān)聯(lián)到變量,以便WindowsXPProfessional應(yīng)用程序和服務(wù)使用。例如,通過使用環(huán)境變量,腳本不同修改就可以運(yùn)行在不同環(huán)境設(shè)置的計(jì)算機(jī)上。您可以通過在命令行執(zhí)行set命令查看環(huán)境變量列表。關(guān)于環(huán)境變量,請(qǐng)參考WindowsXPProfessional中關(guān)于“Toaddorchangethevaluesofenvironmentvariables“的描述;關(guān)于系統(tǒng)文件的信息,詳見“SystemFilesReference“上電自檢當(dāng)您打開計(jì)算機(jī)的時(shí)候,中央處理器單元(CPU)開始執(zhí)行存放在基本輸入輸出系統(tǒng)(BIOS)中的指令。BIOS,一種固件,包含一些代碼,處理器依靠這些代碼啟動(dòng)計(jì)算機(jī),與外圍標(biāo)準(zhǔn)設(shè)備通訊,形成一個(gè)最小環(huán)境,從而得以加載其他復(fù)雜代碼,它與計(jì)算機(jī)所安裝的操作系統(tǒng)無關(guān)。計(jì)算機(jī)啟動(dòng)過程的第一步就是上電自檢(POST),POST負(fù)責(zé)完成如下系統(tǒng)和檢測功能:執(zhí)行硬件初始化檢測,比如測試當(dāng)前內(nèi)存總數(shù)校驗(yàn)啟動(dòng)操作系統(tǒng)所必須的設(shè)備,比如硬盤從位于主板上的CMOS中檢索系統(tǒng)設(shè)置即便當(dāng)您停機(jī)后,CMOS存儲(chǔ)器中也會(huì)保持一些信息,例如存儲(chǔ)在CMOS存儲(chǔ)器中的硬件設(shè)置包含啟動(dòng)設(shè)置和即插即用信息。當(dāng)主板上電自檢(POST)完成后,那些擁有自己固件的附加板卡(比如顯卡和硬盤控制器)開始執(zhí)行自我檢測。設(shè)定這些系統(tǒng)和外圍設(shè)備固件參數(shù),請(qǐng)參考相關(guān)廠商提供的系統(tǒng)文檔。初始化啟動(dòng)階段在上電自檢(POST)階段后,存儲(chǔ)在CMOS存儲(chǔ)器中的那些設(shè)定,比如啟動(dòng)設(shè)定,指明了可以引導(dǎo)操作系統(tǒng)的設(shè)備。比如,如果啟動(dòng)設(shè)定指定軟盤作為啟動(dòng)的首選設(shè)備,而將硬盤作為次要設(shè)備(有些固件中顯示為“A,C“),那么啟動(dòng)時(shí)將可能發(fā)生如下情形:軟驅(qū)中插有軟盤BIOS將搜索設(shè)定為啟動(dòng)軟盤的軟驅(qū),如果存在,將會(huì)把0面0道1扇區(qū)(軟盤的啟動(dòng)扇區(qū))加載到內(nèi)存。如果軟盤不能啟動(dòng),將會(huì)提示如下錯(cuò)誤:Non-systemdiskordiskerrorReplaceandpressanykeywhenready計(jì)算機(jī)將會(huì)一直顯示上面的信息,直到您插入一張啟動(dòng)軟盤或者驅(qū)出軟盤重新啟動(dòng)計(jì)算機(jī)。軟驅(qū)中沒有軟盤如果您重新啟動(dòng)計(jì)算機(jī)后沒有插入軟盤,計(jì)算機(jī)將會(huì)裝載位于主引導(dǎo)記錄(MBR)所在區(qū)域的指令。MBR位于啟動(dòng)硬盤的第一個(gè)扇區(qū),包含一些指令(稱為啟動(dòng)代碼)和一個(gè)標(biāo)示主分區(qū)和擴(kuò)展分區(qū)的表(稱為分區(qū)表)。BIOS將MBR加載到內(nèi)存,并將控制權(quán)移交給MBR中的代碼。計(jì)算機(jī)然后搜索分區(qū)表,查找激活分區(qū)。激活分區(qū)的第一個(gè)扇區(qū)包含啟動(dòng)代碼,這些代碼允許計(jì)算機(jī)進(jìn)行如下操作:確定所使用的文件系統(tǒng)定位并啟動(dòng)操作系統(tǒng)裝載文件,Ntldr.如果激活分區(qū)不存在或者啟動(dòng)扇區(qū)信息丟失、錯(cuò)誤,系統(tǒng)將提示如下信息:InvalidpartitiontableErrorloadingoperatingsystemMissingoperatingsystemBOOT:Couldn’tfindNTLDRNTLDRismissing如果激活分區(qū)定位成功,啟動(dòng)分區(qū)中的代碼將會(huì)找到并開始啟動(dòng)Ntldr,隨后BIOS完成使命,釋放控制權(quán)關(guān)于磁盤和文件系統(tǒng),MBR,分區(qū)以及啟動(dòng)扇區(qū)的一些更為詳細(xì)的信息,請(qǐng)查看“FileSystems“和“TroubleshootingDisksandFileSystems“指定其他啟動(dòng)設(shè)備的啟動(dòng)順序除此之外,一些計(jì)算機(jī)固件允許從其他設(shè)備引導(dǎo)操作系統(tǒng),比如:CD-ROMs網(wǎng)卡可移動(dòng)存儲(chǔ)介質(zhì),比如LS-120驅(qū)動(dòng)器或者IomegaZip驅(qū)動(dòng)器接駁在便攜式計(jì)算機(jī)上的一些存儲(chǔ)器在大多數(shù)的計(jì)算機(jī)上都允許您指定啟動(dòng)次序,比如“CDROM,A,C“.當(dāng)您指定“CDROM,A,C“這樣的啟動(dòng)順序的時(shí)候,那么啟動(dòng)時(shí)就會(huì)是如下情況:計(jì)算機(jī)搜索CD-ROM作為啟動(dòng)介質(zhì)。如果存在可以啟動(dòng)的CD(光盤),計(jì)算機(jī)將使用作為啟動(dòng)設(shè)備,否則計(jì)算機(jī)將按照設(shè)定的啟動(dòng)次序?qū)ふ蚁乱粋€(gè)啟動(dòng)設(shè)備。計(jì)算機(jī)搜索軟盤作為啟動(dòng)介質(zhì)。如果存在可以啟動(dòng)的軟盤,計(jì)算機(jī)將使用軟盤作為啟動(dòng)設(shè)備。否則將給出錯(cuò)誤信息,并按照設(shè)定的啟動(dòng)次序?qū)ふ蚁乱粋€(gè)啟動(dòng)設(shè)備。計(jì)算機(jī)使用硬盤作為啟動(dòng)設(shè)備。當(dāng)CD-ROM驅(qū)動(dòng)器和軟盤驅(qū)動(dòng)器都是空的時(shí)候,計(jì)算機(jī)將只會(huì)使用硬盤作為啟動(dòng)設(shè)備。不過,引導(dǎo)介質(zhì)上的代碼對(duì)硬盤進(jìn)行傳輸控制的情況是個(gè)例外。比如,當(dāng)您使用可引導(dǎo)的WindowsXPProfessional操作系統(tǒng)光盤引導(dǎo)系統(tǒng)的時(shí)候,Setup程序?qū)?huì)檢測是否存在可用的硬盤以用于WindowsXPProfessional安裝過程,如果檢索到,那么系統(tǒng)將會(huì)提示如下字樣PressanykeytobootfromCD,這將給您一個(gè)選擇,如果不按任何鍵就會(huì)跳過CD-ROM啟動(dòng)。您不能使用一個(gè)不能啟動(dòng)的光盤引導(dǎo)系統(tǒng),同時(shí)一張無法啟動(dòng)的光盤將可能增加系統(tǒng)啟動(dòng)時(shí)間,如果不打算從光盤引導(dǎo)系統(tǒng),請(qǐng)?jiān)趩?dòng)前將光盤從CD-ROM驅(qū)動(dòng)器中取出。關(guān)于啟動(dòng)順序的選項(xiàng),請(qǐng)參考您的系統(tǒng)文檔。啟動(dòng)裝載階段Ntldr從啟動(dòng)分區(qū)裝載啟動(dòng)文件,然后進(jìn)行如下步驟:設(shè)置x86系統(tǒng)處理器進(jìn)入32位內(nèi)存保護(hù)模式運(yùn)行基于x86的計(jì)算機(jī)啟動(dòng)的時(shí)候運(yùn)行在實(shí)模式,此在模式下,處理器禁止了一些功能,以便兼容于運(yùn)行于8位和16位處理上的軟件。隨后Ntldr將處理器切換到32位模式,這種模式下,允許訪問大容量內(nèi)存,并可以運(yùn)行WindowsXPProfessional啟動(dòng)文件系統(tǒng)Ntldr包含一些允許WindowsXPProfessional讀寫NTFS或者文件分配表(FAT16orFAT32)文件系統(tǒng)所需要的程序代碼。讀取Boot.ini文件Ntldr分析Boot.ini文件以確定操作系統(tǒng)啟動(dòng)分區(qū)的位置。如果使用單系統(tǒng)啟動(dòng)設(shè)定,那么Ntldr將隨后啟動(dòng)Ntdetect初始化硬件檢測.如果存在多系統(tǒng)啟動(dòng),這可能包括WindowsXPProfessional,Windows2000,WindowsNT4.0,Windows95,Windows98,WindowsMe,或者M(jìn)S-DOS以及其他可能的操作系統(tǒng),您將會(huì)在啟動(dòng)的時(shí)候看到一個(gè)操作系統(tǒng)的選擇菜單。注:運(yùn)行WindowsNT4.0的計(jì)算機(jī)如果需要訪問之前掛載在Windows2000orWindowsXPProfessional下的NTFS卷,需要安裝至少ServicePack4。關(guān)于NTFS互操作性信息,請(qǐng)參考“FileSystems“如果您選擇WindowsXPProfessional,Windows2000,orWindowsNT4.0,Ntldr將隨后啟動(dòng)硬件檢測階段,如果沒有就會(huì)引導(dǎo)啟動(dòng)扇區(qū)的其他系統(tǒng)。如果您選擇Windows95,Windows98,WindowsMe,orMS-DOS,Ntldr將會(huì)掃描Bootsect.dos文件,讀取其中所包含的MBR代碼,并執(zhí)行它。關(guān)于Boot.ini的其他信息請(qǐng)參考“ReviewingandCorrectingBoot.iniSettingsonx86-basedSystems“檢測硬件和硬件配置文件進(jìn)入此階段,Ntldr啟動(dòng)Ntdetect,后者將執(zhí)行基礎(chǔ)硬件掃描。隨后Ntldr掃描Boot.ini信息,以及保存在注冊表中的硬件和軟件信息,傳送給Ntoskrnl.exe。Ntdetect檢測硬件配置信息(比如便攜計(jì)算機(jī)上接駁或未接駁設(shè)置)和保存在AdvancedConfigurationandPowerInterface(ACPI)表中的信息。ACPI兼容固件允許WindowsXPProfessional檢測設(shè)備電源管理功能和設(shè)備資源需求。檢測、設(shè)置硬件階段在讀取Boot.ini并完成其任務(wù)后,Ntldr啟動(dòng)Ntdetect。在x86系統(tǒng)上Ntdetect調(diào)用系統(tǒng)例行程序收集已經(jīng)安裝的硬件信息,并將收集的信息返回給Ntldr,Ntldr將這些信息收集后存入內(nèi)部數(shù)據(jù)庫,然后啟動(dòng)Ntoskrnl.exe并將信息傳遞給它。Ntdetect所收集的硬件設(shè)備的信息如下:信息固件信息,比如日期和時(shí)間總線和板卡類型顯卡鍵盤通訊端口硬盤軟盤輸入設(shè)備(比如鼠標(biāo))并行端口安裝在IndustryStandardArchitecture(ISA)總線上的設(shè)備Ntdetect在非ACPI兼容計(jì)算機(jī)的設(shè)備掃描中扮演了重要的角色。因?yàn)樵谶@些類型的計(jì)算機(jī)上,固件而不是操作系統(tǒng)決定了分配給設(shè)備的資源,對(duì)于使用ACPI固件的計(jì)算機(jī),WindowsXPProfessional對(duì)硬件設(shè)備分配資源。在這個(gè)階段,Ntdetect收集硬件信息,WindowsXPProfessional為桌面計(jì)算機(jī)創(chuàng)建一個(gè)單獨(dú)的默認(rèn)硬件配置文件,而為便攜計(jì)算機(jī)創(chuàng)建兩個(gè)缺省的配置文件。對(duì)于便攜計(jì)算機(jī),操作系統(tǒng)基于當(dāng)前計(jì)算機(jī)上硬件狀態(tài)選擇適當(dāng)?shù)呐渲梦募?。桌面型?jì)算機(jī).Profile1便攜式計(jì)算機(jī).DockedProfileUndockedProfile硬件配置文件對(duì)于便攜式計(jì)算機(jī)是非常有用的,因?yàn)檫@些計(jì)算機(jī)的硬件狀態(tài)通常都不是靜態(tài)的,啟動(dòng)的時(shí)候,沒有列表在特定的硬件配置文件中的設(shè)備驅(qū)動(dòng)是不會(huì)被加載的。關(guān)于創(chuàng)建和使用硬件配置文件的信息,請(qǐng)參考WindowsXPProfessional幫助和支持中心,也可以參考知識(shí)庫文檔225810,“HowtoCreateHardwareProfilesonWindows2000–BasedMobileComputers,“查找此文檔,請(qǐng)查詢WebResources頁面://microsoft/windows/reskits/webresources上的知識(shí)庫鏈接,同時(shí)您也可以查看“ManagingDevices“和“SupportingMobileUsers“核心裝載階段Ntldr負(fù)責(zé)將Windows核心層(Ntoskrnl.exe)和硬件抽象層(HAL)裝載到內(nèi)存。您的系統(tǒng)所使用的Hal.dll文件是可以發(fā)生變化的。在安裝期間,WindowsXPProfessional安裝程序從若干HAL文件中選擇一個(gè)復(fù)制到系統(tǒng),(請(qǐng)參看表28.2關(guān)于這些文件的列表)并重名為Hal.dll。在設(shè)備管理器中查看計(jì)算機(jī)描述在運(yùn)行對(duì)話框,輸入devmgmt.msc,點(diǎn)擊確定。在設(shè)備管理器展開計(jì)算機(jī)察看您計(jì)算機(jī)的描述。通過比較設(shè)備管理器中的描述和下面表28.2中的描述,您可以確定從WindowsXPProfessional操作系統(tǒng)光盤復(fù)制到您系統(tǒng)中的HAL文件Table28.2關(guān)于不同Hal.dll文件的描述設(shè)備管理器中計(jì)算機(jī)的描述復(fù)制的HAL文件ACPI多處理器PCHalmacpi.dllACPI單處理器PCHalaacpi.dllAdvancedConfigurationandPowerInterface(ACPI)PCHalacpi.dllMPS多處理器PCHalmps.dllMPS單處理器PCHalapic.dll標(biāo)準(zhǔn)PCHal.dllCompaqSystemPro多處理器或者完全兼容Halsp.dll核心層kernel和硬件抽象層HAL初始化一組軟件組件,他們統(tǒng)稱為windows執(zhí)行體。Windows執(zhí)行體掃描儲(chǔ)存在注冊表controlsets中的信息,并啟動(dòng)服務(wù)和驅(qū)動(dòng)程序。關(guān)于Windowsexecutiveservices,請(qǐng)查看“CommonStopMessagesforTroubleshooting“控制集ControlSetsNtldr從HKEY_LOCAL_MACHINE\SYSTEM注冊表子鍵中讀取相關(guān)信息,該子健中的數(shù)據(jù)創(chuàng)建于\System32\Config\System文件,故而Ntldr能夠決定哪些設(shè)備驅(qū)動(dòng)在系統(tǒng)啟動(dòng)時(shí)裝載。通常,注冊表中存在幾個(gè)controlsets,其后面的序號(hào)取決于系統(tǒng)設(shè)定多長時(shí)間變更一次。。提示:典型的注冊表控制集controlset子鍵如下:\CurrentControlSet,一個(gè)注冊在\Select\Current項(xiàng)中,指向ControlSetxxx子鍵的指針(xxx代表一個(gè)controlset編號(hào),比如001)\Clone,一份\CurrentControlSet的拷貝,當(dāng)您每次啟動(dòng)計(jì)算機(jī)的時(shí)候創(chuàng)建。(gnaw0725注:此處原文如此,有待考證)\Select,包含如下鍵值:Default,指針指向系統(tǒng)指定用戶下次登陸所使用的控制集編號(hào)(比如001=ControlSet001)。如果沒有錯(cuò)誤發(fā)生,或者并非由LastKnownGood啟動(dòng)項(xiàng)所設(shè)置,此controlset編號(hào)將為Default,Current和LastKnownGood注冊項(xiàng)所影響(假定當(dāng)前用戶可以成功登錄)Current,指向此次用于啟動(dòng)系統(tǒng)的控制集Failed,指向沒有成功啟動(dòng)WindowsXPProfessional的控制集。當(dāng)使用LastKnownGood選項(xiàng)啟動(dòng)系統(tǒng)時(shí),此項(xiàng)被更新(gnaw0725注:表示W(wǎng)indowsXP在其中保存失敗啟動(dòng)產(chǎn)生的數(shù)據(jù)的控件組。此控件組在用戶第一次調(diào)用“最近一次的正確配置”選項(xiàng)之前并不實(shí)際存在。)LastKnownGood,指向上次用戶會(huì)話所使用的控制集。當(dāng)用戶登錄的時(shí)候,LastKnownGood控制集被前一次用戶會(huì)話使用的設(shè)置信息所更新。除非您從WindowsAdvancedOptions菜單中選擇LastKnownGoodConfiguration,Ntldr將使用Default鍵值所標(biāo)示的控制集。核心層使用Ntldr提供的內(nèi)部數(shù)據(jù)結(jié)構(gòu)創(chuàng)建HKEY_LOCAL_MACHINE\HARDWARE子鍵,其中包含在系統(tǒng)啟動(dòng)階段收集的硬件信息。這些數(shù)據(jù)包含信息包括各種硬件組件和分配給每個(gè)設(shè)備的系統(tǒng)資源。您可以通過查看在啟動(dòng)過程中顯示的進(jìn)度指示器來監(jiān)控核心層加載過程關(guān)于LastKnownGoodConfiguration的相關(guān)信息,您可以查閱“ToolsforTroubleshooting“WindowsXPProfessional支持設(shè)備擴(kuò)展。新的或者更新的驅(qū)動(dòng)程序并不存在于WindowsXPProfessional操作系統(tǒng)光盤上,而是由于硬件廠商提供。驅(qū)動(dòng)程序是核心模式組件,需要Driversarekernel-modecomponentsrequiredbydevicestofunctionwithinanoperatingsystem.服務(wù)是支持操作系統(tǒng)功能和應(yīng)用程序的組件。與用戶應(yīng)用程序相比,服務(wù)可以運(yùn)行在一個(gè)不同的上下文,通常不會(huì)提供用戶可以設(shè)置的選項(xiàng)。服務(wù),比如脫機(jī)打印PrintSpooler,不需要用戶登錄即可運(yùn)行,而且與登陸到系統(tǒng)的用戶無關(guān)。WindowsXPProfessional驅(qū)動(dòng)程序和服務(wù)系統(tǒng)文件通常被存放在systemroot\System32和systemroot\System32\Drivers目錄下,以.exe,.sys,or.dll等擴(kuò)展名保存。驅(qū)動(dòng)程序也是服務(wù),因此在核心層初始化期間,Ntldr和Ntoskrnl.exe按照存儲(chǔ)在HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\servicename注冊表子鍵中的數(shù)值來確定裝載的驅(qū)動(dòng)程序和服務(wù)次序。例如,Ntldr首先搜索Services子鍵中Start值為0的服務(wù),比如硬盤控制器。當(dāng)Ntldr啟動(dòng)Ntoskrnl.exe后,一個(gè)Ntoskrnl.exe組件搜索并啟動(dòng)驅(qū)動(dòng)程序,比如網(wǎng)絡(luò)協(xié)議,這些啟動(dòng)項(xiàng)Start值為1.Table28.3,列出了Start項(xiàng)的值(十進(jìn)制)。Boot類型的驅(qū)動(dòng)(Start值為0的項(xiàng))文件系統(tǒng)驅(qū)動(dòng)程序的Start值始終為0,因?yàn)閱?dòng)WindowsXPProfessional需要它們的支持。表28.3<服務(wù)名>Start項(xiàng)的賦值值Start類型關(guān)于Start項(xiàng)賦值的描述0Boot基于x86系統(tǒng)Ntldr或者ItaniumIA64ldr上的固件調(diào)用模式指定裝載的驅(qū)動(dòng),如果沒有錯(cuò)誤發(fā)生,核心層Kernel將啟動(dòng)該驅(qū)動(dòng)程序1System指定在系統(tǒng)核心層Kernel初始化期間被WindowsXPProfessionalbootdrivers所調(diào)用的驅(qū)動(dòng)程序2Autoload指定在系統(tǒng)啟動(dòng)時(shí)被會(huì)話管理器(Smss.exe)或者服務(wù)控制器(Services.exe)所加載的驅(qū)動(dòng)程序或者服務(wù)。3Loadondemand指定一個(gè)通過用戶、進(jìn)程或者其他服務(wù)手動(dòng)啟動(dòng)的驅(qū)動(dòng)程序或者服務(wù)4Disabled指定一個(gè)禁止(不啟動(dòng))的驅(qū)動(dòng)程序或者服務(wù)。表28.4列出了Type項(xiàng)的一些值(十進(jìn)制)表28.4<服務(wù)名>Type項(xiàng)的賦值值Type項(xiàng)賦值描述1指定一個(gè)核心設(shè)備驅(qū)動(dòng)程序2指定一個(gè)文件系統(tǒng)驅(qū)動(dòng)程序(也是一個(gè)核心設(shè)備驅(qū)動(dòng)程序)4指定參數(shù)傳遞給設(shè)備驅(qū)動(dòng)程序16指定一個(gè)遵循服務(wù)控制協(xié)議的服務(wù),該服務(wù)可以獨(dú)立運(yùn)行在一個(gè)進(jìn)程中,且可以為服務(wù)控制器所啟動(dòng)32指定一個(gè)可以和其他服務(wù)共享進(jìn)程的服務(wù)一些驅(qū)動(dòng)程序和服務(wù)需要在啟動(dòng)之前確定之間的相互依賴關(guān)系。通過查看HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\servicename下DependOnGroup和DependOnService項(xiàng),您可以找到這個(gè)依存關(guān)系的列表。關(guān)于使用依賴關(guān)系阻止或者延遲驅(qū)動(dòng)程序或者服務(wù)啟動(dòng)的信息,請(qǐng)查看“TemporarilyDisablingServices“。該服務(wù)子鍵也包含了影響驅(qū)動(dòng)程序和服務(wù)如何加載的信息,表28.5中描述了其中的一部分。表28.5注冊表其他<服務(wù)名>項(xiàng)項(xiàng)描述DependOnGroup此組中所描述的項(xiàng)目,至少有一個(gè)在當(dāng)前服務(wù)裝載前必須被加載。子鍵SYSTEM\CurrentControlSet\Control\ServiceGroupOrder包含服務(wù)組裝載次序DependOnService此列表中描述的服務(wù),必須在當(dāng)前服務(wù)之前加載。Description組件描述DisplayName指定組件的顯示名稱ErrorControl控制一個(gè)驅(qū)動(dòng)程序錯(cuò)誤是需要系統(tǒng)使用LastKnownGood控制集還是提示一個(gè)錯(cuò)誤停止信息。如果值為0x0(忽略,沒有錯(cuò)誤報(bào)告),不會(huì)顯示警告信息,繼續(xù)執(zhí)行啟動(dòng)。如果值為0x1(普通,報(bào)告錯(cuò)誤),將錯(cuò)誤記錄到系統(tǒng)日志并提示警告信息,但繼續(xù)啟動(dòng)過程。如果值為0x2(嚴(yán)重),將事件記錄到系統(tǒng)日志,使用LastKnownGood設(shè)置,重新啟動(dòng)系統(tǒng),執(zhí)行啟動(dòng)過程。如果值為0x3(關(guān)鍵),將事件記錄到系統(tǒng)日志,使用LastKnownGood設(shè)置,重新啟動(dòng)系統(tǒng)。如果當(dāng)前啟動(dòng)已經(jīng)使用LastKnownGood設(shè)定,則顯示錯(cuò)誤停止信息。Group指定驅(qū)動(dòng)程序或者服務(wù)隸屬的組。此項(xiàng)設(shè)定允許驅(qū)動(dòng)程序或者服務(wù)同步啟動(dòng)(比入:文件系統(tǒng)驅(qū)動(dòng)程序)注冊表子鍵HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\ServiceGroupOrder中的List項(xiàng)指定了組項(xiàng)啟動(dòng)順序。ImagePath如果存在ImagePath項(xiàng),該項(xiàng)用于標(biāo)示驅(qū)動(dòng)程序或者服務(wù)的路徑和文件名。您可以使用WindowsExplorer核實(shí)這些路徑和文件名。ObjectName指定一個(gè)對(duì)象名。如果Type項(xiàng)指定一個(gè)WindowsXPProfessional服務(wù),那么它就代表服務(wù)運(yùn)行時(shí)用于登陸的帳戶名。Tag指定一個(gè)驅(qū)動(dòng)程序在驅(qū)動(dòng)程序組中的啟動(dòng)順序。會(huì)話管理器當(dāng)所有標(biāo)志為Boot和Startup數(shù)據(jù)類型的注冊表子鍵執(zhí)行完成后,kernel開始加載會(huì)話管理器SessionManager,由它(Smss.exe)執(zhí)行后續(xù)重要的初始化工作,比如:創(chuàng)建系統(tǒng)環(huán)境變量啟動(dòng)Windows子系統(tǒng)核心保護(hù)模式(通過systemroot\System32\Win32k.sys實(shí)現(xiàn)),這將WindowsXPProfessional從文本模式切換至圖形模式?;赪indows的應(yīng)用程序都運(yùn)行在Windows子系統(tǒng)上,這個(gè)環(huán)境下允許應(yīng)用程序訪問操作系統(tǒng)功能函數(shù),比如在屏幕上顯示信息。啟動(dòng)Windows子系統(tǒng)用戶模式部分(通過systemroot\System32\Csrss.exe實(shí)現(xiàn)).啟動(dòng)登陸管理器(通過systemroot\System32\Winlogon.exe實(shí)現(xiàn)).創(chuàng)建輔助虛擬內(nèi)存頁文件為存放在下列子鍵中的文件列表,執(zhí)行延遲的重命名操作。HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SessionManager\PendingFileRenameOperations.比如:當(dāng)您安裝了一個(gè)新的驅(qū)動(dòng)程序或者應(yīng)用程序后,系統(tǒng)可能會(huì)提示您重新啟動(dòng),以便WindowsXPProfessional能夠替換當(dāng)前正在使用的文件。Windows子系統(tǒng)和基于它執(zhí)行的應(yīng)用程序是用戶模式進(jìn)程,它們不能直接訪問硬件和設(shè)備驅(qū)動(dòng)。用戶模式進(jìn)程執(zhí)行優(yōu)先級(jí)低于核心進(jìn)程,當(dāng)操作系統(tǒng)需要更多內(nèi)存的時(shí)候,它可以將被用戶模式下進(jìn)程使用的內(nèi)存緩存到虛擬頁面文件。關(guān)于用戶模式和核心模式組件的信息,請(qǐng)參考“CommonStopMessagesforTroubleshooting“。會(huì)話管理器SessionManager將搜索注冊表,以獲得服務(wù)信息,注冊表鍵值如下:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SessionManager包含一個(gè)在服務(wù)裝載之前運(yùn)行的命令列表Autochk.exe工具由BootExecute項(xiàng)的值和存儲(chǔ)在MemoryManagement子鍵中的虛擬內(nèi)存(頁面文件)設(shè)置所指定。Autochk,是Chkdsk工具的一個(gè)版本,如果操作系統(tǒng)檢測到一個(gè)文件系統(tǒng)錯(cuò)誤,需要在完成啟動(dòng)過程之前進(jìn)行修復(fù),那么就會(huì)在啟動(dòng)的時(shí)候運(yùn)行它。關(guān)于Autochk和Chkdsk,“TroubleshootingDisksandFileSystems“。HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SessionManager\Subsystems包含一個(gè)有效子系統(tǒng)的列表。比如Csrss.exe包含Windows子系統(tǒng)中的一部分,用戶模式。HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\servicename.服務(wù)控制管理器(ServiceControlManager)初始化那些設(shè)置為啟動(dòng)自動(dòng)加載的服務(wù)。登錄階段在此階段Windows子系統(tǒng)啟動(dòng)Winlogon.exe,此模塊為系統(tǒng)服務(wù),以完成用戶的登入或者登出的動(dòng)作。Winlogon.exe所完成的功能如下:啟動(dòng)服務(wù)子系統(tǒng)(Services.exe),也稱為服務(wù)控制管理器(SCM).啟動(dòng)本地安全性授權(quán)進(jìn)程LocalSecurityAuthority(LSA)(Lsass.exe).在出現(xiàn)開始登陸提示時(shí),偵測CTRL+ALT+DEL組合鍵。圖形化識(shí)別和驗(yàn)證GraphicalIdentificationandAuthentication(GINA)組件獲取用戶名和密碼,并將這些信息傳送給LSA進(jìn)行安全驗(yàn)證。如果用戶提供有效驗(yàn)證,那么通過使用KerberosV5驗(yàn)證協(xié)議或者NTLM可以或者訪問權(quán)限。關(guān)于安全組件的信息,比如LSA,KerberosV5協(xié)議或者NTLM,DistributedSystemsGuideoftheMicrosoft®Windows®2000ServerResourceKit.當(dāng)服務(wù)控制管理器ServiceControlManager初始化自動(dòng)裝載服務(wù)項(xiàng)和驅(qū)動(dòng)時(shí),Winlogon開

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論