主機啟動流程 主機不能啟動_第1頁
主機啟動流程 主機不能啟動_第2頁
主機啟動流程 主機不能啟動_第3頁
主機啟動流程 主機不能啟動_第4頁
主機啟動流程 主機不能啟動_第5頁
已閱讀5頁,還剩4頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

主機啟動流程主機不能啟動

主機啟動流程篇(一):計算機啟動過程圖文詳解

計算機啟動過程圖文詳解

我們只介紹Windows系統(tǒng)的啟動,由于vista和windows7操作系統(tǒng)的啟動采納了全新的引導方式,所以這里需要對xp和Vista(Windows7與之基本相同)分別介紹。為了不至于導致大家看不明白,我只介紹一個也許的過程。

WindowsXP系統(tǒng)的引導過程:

當系統(tǒng)BIOS完成初始化后,會將掌握權交給主引導紀錄(即MBR:MasterBootRecord),MBR會檢查硬盤分區(qū)表,(某些病毒就利用MBR先于系統(tǒng)啟動的優(yōu)勢,通過修改MBR的方式,找到硬盤上的引導分區(qū),然后將引導分區(qū)上的操作系統(tǒng)引導扇區(qū)調(diào)入內(nèi)存,并執(zhí)行其NTDLR文件。(MBR很簡單被病毒利用!?。。?/p>

鬼影病毒寄生在磁盤主引導記錄(MBR),即使格式化重裝系統(tǒng),也無法清除的病毒。當系統(tǒng)再次重啟時,該病毒會早于操作系統(tǒng)內(nèi)核先行加載。而當病毒勝利運行后,在進程中、系統(tǒng)啟動加載項里找不到任何特別,病毒就象“鬼影”一樣在中毒電腦上“陰魂不散”。

NTDLR會將微處理器從實模式(此模式下計算機認為內(nèi)存為64KB,其他未擴展內(nèi)存)轉換為32位的平面內(nèi)存模式(此模式下認為CPU可識別的全部內(nèi)存均是可用內(nèi)存)。然后,NTDLR啟動mini-filesystemdrivers以便它能夠識別全部采納NTFS和FAT(FAT32)文件系統(tǒng)的硬盤分區(qū)。

此后NTLDR會讀取boot.ini文件,以打算應當啟動哪一個系統(tǒng),假如boot.ini中僅顯示了一個系統(tǒng)或者將timeout(系統(tǒng)選擇頁面停留時間)參數(shù)設為0的話,這個系統(tǒng)選擇頁面就不會消失而是直接啟動默認的系統(tǒng)。

而假如boot.ini中含有多個啟動引導項,當選擇了不同的系統(tǒng)后計算機接下來的啟動流程就會產(chǎn)生區(qū)分,假如選擇的不是xp,NTLDR會讀取bootsect.dos來啟動相應系統(tǒng),假如選擇了xp的話,就會接著轉入硬件檢測階段。

在這個階段,ntdetect.會收集計算機的硬件信息列表并將其返回到NTLDR中,以便以后將這些信息寫入注冊表(詳細而言是HKEY_LOCAL_MACHINE下的hardware)中。

然后會進行硬件配置選擇,假如計算機含多個硬件配置,會消失配置選擇頁面,假如僅有一個的話,系統(tǒng)直接進入默認配置。

此后開頭加載xp內(nèi)核,NTLDR首先加載ntoskrnl.exe(即xp系統(tǒng)內(nèi)核),不過此時并未初始化內(nèi)核,而是緊接著加載了硬件抽象層(即HAL,一個hal.dll文件),然后加載底層設備驅動程序和需要的服務。

完成這些后才開頭初始化內(nèi)核,此時我們就能看到xp的LOGO和啟動進度條了,在進度條運動的過程中,內(nèi)核使用剛才ntdetect.收集到的意見配置信息創(chuàng)建HKEY_LOCAL_MACHINE的hardware鍵。然后創(chuàng)建計算機數(shù)據(jù)備份,初始化并加載設備驅動程序,SessionManager啟動xp的高級子系統(tǒng)及其服務并有win32子系統(tǒng)啟動Winlogon進程。

Winlogon.exe會啟動LocalSecurityAuthority,此時會顯示xp的歡迎屏幕或者登陸確認框(假如設置了多賬戶或密碼的話)。這個時候,系統(tǒng)還在連續(xù)初始化剛才沒有完成的驅動程序。

歡迎屏幕結束或者用戶正確登陸后,ServiceController最終還需要檢查是否還有服務需要加載并進行加載。此后xp桌面消失,系統(tǒng)啟動完成。

WindowsVista/7系統(tǒng)的引導過程:

Vista和Windows7的啟動過程就簡潔多了(其實是將啟動步驟進行了簡化),它采納了全新的啟動方式。詳細如下:

MBR得到掌握權后,同樣會讀取引導扇區(qū),以便啟動Windows啟動管理器的bootmgr.exe程序,

Windows啟動管理器的bootmgr.exe被執(zhí)行時就會讀取BootConfigurationDatastore(其中包含了全部計算機操作系統(tǒng)配置信息)中的信息,然后據(jù)此生成啟動菜單,當然,假如只安裝了一個系統(tǒng),啟動引導選擇頁不會消失,而假如安裝并選擇了其他系統(tǒng),系統(tǒng)就會轉而加載相應系統(tǒng)的啟動文件。

啟動Vista時,同樣會加載ntoskrnl.exe系統(tǒng)內(nèi)核和硬件抽象層hal.dll,從而加載需要的驅動程序和服務。

內(nèi)核初始化完成后,會連續(xù)加載會話管理器smss.exe(留意,正常狀況下這個文件存在于Windows/system32文件夾下,假如不是,很可能就是病毒)。

此后,Windows啟動應用程序wininit.exe(正常狀況下它也存在于Windows/system32文件夾下,假如不是,很可能是病毒)會啟動,它負責啟動services.exe(服務掌握管理器)、lsass.exe(本地平安授權)和lsm.exe(本地會話管理器),一旦wininit啟動失敗,計算機將會藍屏死機。

當這些進程都順當啟動之后,就可以登錄系統(tǒng)了。至此,Vista(Windows7)啟動完成。

另外,補充一點小學問:我們知道,在Vista或Windows7系統(tǒng)下安裝xp后,開機時就會直接啟動xp,并不消失系統(tǒng)啟動的選擇頁,這是由于安裝xp時,它會重寫MBR而將Vista或Windows7的引導記錄掩蓋掉,而在xp下安裝Vista或Windows7后就不存在這個問題了,這是由于雖然Vista和Windows7雖然也會掩蓋引導記錄,但是它也會將原有的引導程序保存,引導權雖然同樣被Vista或Windows7搶奪,但由于它們支持跳轉到以前的引導程序上,所以可以直接顯示多系統(tǒng)頁面。

-------------------------------------------------------------------------

第一步:

當我們按下電源開關時,電源就開頭向主板和其它設備供電,此時電壓還不穩(wěn)定,主板掌握芯片組會向CPU發(fā)出并保持一個RESET(重置)信號,讓CPU初始化。當電源開頭穩(wěn)定供電后(當然從不穩(wěn)定到穩(wěn)定的過程也只是短暫的瞬間),芯片組便撤去RESET信號(假如是手動按下計算機面板上的Reset按鈕來重啟機器,那么松開該按鈕時芯片組就會撤去RESET信號),CPU立刻就從地址FFFF0H處開頭執(zhí)行指令,這個地址在系統(tǒng)BIOS的地址范圍內(nèi),無論是AwardBIOS還是AMIBIOS,放在這里的只是一條跳轉指令,跳到系統(tǒng)BIOS中真正的啟動代碼處。

其次步:

系統(tǒng)BIOS的啟動代碼首先要做的事情就是進行POST(PowerOnSelfTest,加電自檢),POST的主要任務是檢測系統(tǒng)中的一些關鍵設備是否存在和能否正常工作,如內(nèi)存和顯卡等。由于POST的檢測過程在顯示卡初始化之前,因此假如在POST自檢的過程中發(fā)覺了一些致命錯誤,如沒有找到內(nèi)存或者內(nèi)存有問題時(POST過程只檢查640K常規(guī)內(nèi)存),是無法在屏幕上顯示出來的,這時系統(tǒng)PIOS可通過喇叭發(fā)聲來報告錯誤狀況,聲音的長短和次數(shù)代表了錯誤的類型。在正常狀況下,POST過程進行得特別快,我們幾乎無法感覺到這個過程。

第三步:

接下來系統(tǒng)BISO將查找顯示卡的BIOS,存放顯示卡BIOS的ROM芯片的起始地址通常在C0000H處,系統(tǒng)BIOS找到顯卡BIOS之后調(diào)用它的初始化代碼,由顯卡BIOS來完成顯示卡的初始化。大多數(shù)顯示卡在這個過程通常會在屏幕上顯示出一些顯示卡的信息,如生產(chǎn)廠商、圖形芯片類型、顯存容量等內(nèi)容,這就是我們開機看到的第一個畫面,不過這個畫面幾乎是一閃而過的,也有的顯卡BIOS使用了延時功能,以便用戶可以看清顯示的信息。接著系統(tǒng)BIOS會查找其它設備的BIOS程序,找到之后同樣要調(diào)用這些BIOS內(nèi)部的初始化代碼來初始化這些設備。

第四步:

查找完全部其它設備的BIOS之后,系統(tǒng)BIOS將顯示它自己的啟動畫面,其中包括有系統(tǒng)BIOS的類型、序列號和版本號等內(nèi)容。同時屏幕底端左下角會消失主板信息代碼,包含BIOS的日期、主板芯片組型號、主板的識別編碼及廠商代碼等。

第五步:

接著系統(tǒng)BIOS將檢測CPU的類型和工作頻率,并將檢測結果顯示在屏幕上,這就是我們開機看到的CPU類型和主頻。接下來系統(tǒng)BIOS開頭測試主機全部的內(nèi)存容量,并同時在屏幕上顯示內(nèi)存測試的數(shù)值,就是大家所熟識的屏幕上半部份那個飛速翻滾的內(nèi)存計數(shù)器。這個過程我們可以在BIOS設置中選擇耗時少的"快速檢測"或者耗時多的"全面檢測"方式。

第六步:

內(nèi)存測試通過之后,系統(tǒng)BIOS將開頭檢測系統(tǒng)中安裝的一些標準硬件設備,這些設備包括:硬盤、CD-ROM、軟驅、串行接口和并行接口等連接的設備,另外絕大多數(shù)新版本的系統(tǒng)BIOS在這一過程中還要自動檢測和設置內(nèi)存的定時參數(shù)、硬盤參數(shù)和訪問模式等。

第七步:

標準設備檢測完畢后,系統(tǒng)BIOS內(nèi)部的支持即插即用的代碼將開頭檢測和配置系統(tǒng)中安裝的即插即用設備,每找到一個設備之后,系統(tǒng)BIOS都會在屏幕上顯示出設備的名稱和型號等信息,同時為該設備安排中斷、DMA通道和I/O端口等資源。

第八步:

到這一步為止,全部硬件都已經(jīng)檢測配置完畢了,系統(tǒng)BIOS會重新清屏并在屏幕上方顯示出一個系統(tǒng)配置列表,其中概略地列出了系統(tǒng)中安裝的各種標準硬件設備,以及它們使用的資源和一些相關工作參數(shù)。

第九步:

按下來系統(tǒng)BIOS將更新ESCD(ExtendedSystemConfigurationData,擴展系統(tǒng)配置數(shù)據(jù))。ESCD是系統(tǒng)BIOS用來與操作系統(tǒng)交換硬件配置信息的數(shù)據(jù),這些數(shù)據(jù)被存放在CMOS(一小塊特別的RAM,由主板上的電池來供電)之中。通常ESCD數(shù)據(jù)只在系統(tǒng)硬件配置發(fā)生轉變后才會進行更新,所以不是每次啟動機器時我們都能夠看到"UpdateESCD...Success"這樣的信息,不過,某些主板的系統(tǒng)BIOS在保存ESCD數(shù)據(jù)時使用了與Windows9x不相同的數(shù)據(jù)格式,于是Windows9x在它自己的啟動過程中會把ESCD數(shù)據(jù)轉換成自己的格式,但在下一次啟動機器時,即使硬件配置沒有發(fā)生轉變,系統(tǒng)BIOS又會把ESCD的數(shù)據(jù)格式改回來,如此循環(huán),將會導致在每次啟動機器時,系統(tǒng)BIOS都要更新一遍ESCD,這就是為什么有的計算機在每次啟動時都會顯示"UpdateESCD...Success"信息的緣由。

第十步:

ESCD數(shù)據(jù)更新完畢后,系統(tǒng)BIOS的啟動代碼將進行它的最終一項工作,即依據(jù)用戶指定的啟動挨次從軟盤、硬盤或光驅啟動。以從C盤啟動為例,系統(tǒng)BIOS將讀取并執(zhí)行硬盤上的主引導記錄,主引導記錄接著從分區(qū)表中找到第一個活動分區(qū),然后讀取并執(zhí)行這個活動分區(qū)的分區(qū)引導記錄,而分區(qū)引導記錄將負責讀取并執(zhí)行IO.SYS,這是DOS和Windows9x最基本的系統(tǒng)文件。Windows9x的IO.SYS首先要初始化一些重要的系統(tǒng)數(shù)據(jù),然后就顯示出我們熟識的藍天白云,在這幅畫面之下,Windows將連續(xù)進行DOS部分和GUI(圖形用戶界面)部分的引導和初始化工作。假如系統(tǒng)這中安裝有引導多種操件系統(tǒng)的工具軟件,通常主引導記錄將被替換成該軟件的引導代碼,這些代碼將允許用戶選擇一種操作系統(tǒng),然后讀取并執(zhí)行該操作系統(tǒng)的基本引導代碼(DOS和Windows的基本引導代碼就是分區(qū)引導記錄)。

上面介紹的便是計算機在打開電源開關(或按Reset鍵)進行冷啟動時所要完成的各種初始化工作,假如我們在DOS下按Ctrl+Alt+Del組合鍵(或從Windows中選擇重新計算機)來進行熱啟動,那么POST過程將被跳過去,直接從第三步開頭,另外第五步的檢測CPU和內(nèi)存測試也不會再進行。無論是冷啟動還是熱啟動,系統(tǒng)BIOS都會重復上面的硬件檢測和引導過程,正是這個不起眼的過程保證了我們可以正常的啟動和使用計算機。

主機啟動流程篇(二):計算機啟動過程

計算機啟動過程

名目

簡介

總結

編輯本段

簡介

第一步:當我們按下電源開關時,電源就開頭向主板和其它設備供電,此時電壓還不太穩(wěn)定,主板上的掌握芯片組會向CPU發(fā)出并保持一個RESET(重置)信號,讓CPU內(nèi)部自動恢復到初始狀態(tài),但CPU在此刻不會立刻執(zhí)行指令。當芯片組檢測到電源已經(jīng)開頭穩(wěn)定供電了(當然從不穩(wěn)定到穩(wěn)定的過程只是一瞬間的事情),它便撤去RESET信號(假如是手工按下計算機面板上的Reset按鈕來重啟機器,那么松開該按鈕時芯片組就會撤去RESET信號),CPU立刻就從地址FFFF0H處開頭執(zhí)行指令,從前面的介紹可知,這個地址實際上在系統(tǒng)BIOS的地址范圍內(nèi),無論是AwardBIOS還是AMIBIOS,放在這里的只是一條跳轉指令,跳到系統(tǒng)BIOS中真正的啟動代碼處。

其次步:系統(tǒng)BIOS的啟動代碼首先要做的事情就是進行POST(Power-OnSelfTest,加電后自檢),POST的主要任務是檢測系統(tǒng)中一些關鍵設備是否存在和能否正常工作,例如內(nèi)存和顯卡等設備。由于POST是最早進行的檢測過程,此時顯卡還沒有初始化,假如系統(tǒng)BIOS在進行POST的過程中發(fā)覺了一些致命錯誤,例如沒有找到內(nèi)存或者內(nèi)存有問題(此時只會檢查640K常規(guī)內(nèi)存),那么系統(tǒng)BIOS就會直接掌握喇叭發(fā)聲來報告錯誤,聲音的長短和次數(shù)代表了錯誤的類型。在正常狀況下,POST過程進行得特別快,我們幾乎無法感覺到它的存在,POST結束之后就會調(diào)用其它代碼來進行更完整的硬件檢測。

第三步:接下來系統(tǒng)BIOS將查找顯卡的BIOS,前面說過,存放顯卡BIOS的ROM芯片的起始地址通常設在C0000H處,系統(tǒng)BIOS在這個地方找到顯卡BIOS之后就調(diào)用它的初始化代碼,由顯卡BIOS來初始化顯卡,此時多數(shù)顯卡都會在屏幕上顯示出一些初始化信息,介紹生產(chǎn)廠商、圖形芯片類型等內(nèi)容,不過這個畫面幾乎是一閃而過。系統(tǒng)BIOS接著會查找其它設備的BIOS程序,找到之后同樣要調(diào)用這些BIOS內(nèi)部的初始化代碼來初始化相關的設備。

第四步:查找完全部其它設備的BIOS之后,系統(tǒng)BIOS將顯示出它自己的啟動畫面,其中包括有系統(tǒng)BIOS的類型、序列號和版本號等內(nèi)容。

第五步:接著系統(tǒng)BIOS將檢測和顯示CPU的類型和工作頻率,然后開頭測試全部的RAM,并同時在屏幕上顯示內(nèi)存測試的進度,我們可以在CMOS設置中自行打算使用簡潔耗時少或者具體耗時多的測試方式。

第六步:內(nèi)存測試通過之后,系統(tǒng)BIOS將開頭檢測系統(tǒng)中安裝的一些標準硬件設備,包括硬盤、CD-ROM、串口、并口、軟驅等設備,另外絕大多數(shù)較新版本的系統(tǒng)BIOS在這一過程中還要自動檢測和設置內(nèi)存的定時參數(shù)、硬盤參數(shù)和訪問模式等。

第七步:標準設備檢測完畢后,系統(tǒng)BIOS內(nèi)部的支持即插即用的代碼將開頭檢測和配置系統(tǒng)中安裝的即插即用設備,每找到一個設備之后,系統(tǒng)BIOS都會在屏幕上顯示出設備的名稱和型號等信息,同時為該設備安排中斷、DMA通道和I/O端口等資源。

第八步:到這一步為止,全部硬件都已經(jīng)檢測配置完畢了,多數(shù)系統(tǒng)BIOS會重新清屏并在屏幕上方顯示出一個表格,其中概略地列出了系統(tǒng)中安裝的各種標準硬件設備,以及它們使用的資源和一些相關工作參數(shù)。

第九步:接下來系統(tǒng)BIOS將更新ESCD(ExtendedSystemConfigurationData,擴展系統(tǒng)配置數(shù)據(jù))。ESCD是系統(tǒng)BIOS用來與操作系統(tǒng)交換硬件配置信息的一種手段,這些數(shù)據(jù)被存放在CMOS(一小塊特別的RAM,由主板上的電池來供電)之中。通常ESCD數(shù)據(jù)只在系統(tǒng)硬件配置發(fā)生轉變后才會更新,所以不是每次啟動機器時我們都能夠看到"UpdateESCD...Success"這樣的信息,不過,某些主板的系統(tǒng)BIOS在保存ESCD數(shù)據(jù)時使用了與Windows9x不相同的數(shù)據(jù)格式,于是Windows9x在它自己的啟動過程中會把ESCD數(shù)據(jù)修改成自己的格式,但在下一次啟動機器時,即使硬件配置沒有發(fā)生轉變,系統(tǒng)BIOS也會把ESCD的數(shù)據(jù)格式改回來,如此循環(huán),將會導致在每次啟動機器時,系統(tǒng)BIOS都要更新一遍ESCD,這就是為什么有些機器在每次啟動時都會顯示出相關信息的緣由。

第十步:ESCD更新完畢后,系統(tǒng)BIOS的啟動代碼將進行它的最終一項工作,即依據(jù)用戶指定的啟動挨次從軟盤、硬盤或光驅啟動。以從C盤啟動為例,系統(tǒng)BIOS將讀取并執(zhí)行硬盤上的主引導記錄,主引導記錄接著從分區(qū)表中找到第一個活動分區(qū),然后讀取并執(zhí)行這個活動分區(qū)的分區(qū)引導記錄,而分區(qū)引導記錄將負責讀取并執(zhí)行IO.SYS,這是DOS和Windows9x最基本的系統(tǒng)文件。Windows9x的IO.SYS首先要初始化一些重要的系統(tǒng)數(shù)據(jù),然后就顯示出我們熟識的藍天白云,在這幅畫面之下,Windows將連續(xù)進行DOS部分和GUI(圖形用戶界面)部分的引導和初始化工作。

編輯本段

總結

假如系統(tǒng)之中安裝有引導多種操作系統(tǒng)的工具軟件,通常主引導記錄將被替換成該軟件的引導代碼,這些代碼將允許用戶選擇一種操作系統(tǒng),然后讀取并執(zhí)行該操作系統(tǒng)的基本引導代碼(DOS和Windows的基本引導代碼就是分區(qū)引導記錄)。上面介紹的便是計算機在打開電源開關(或按Reset鍵)進行冷啟動時所要完成的各種初始化工作,假如我們在DOS下按Ctrl+Alt+Del組合鍵(或從Windows中選擇重新啟動計算機)來進行熱啟動,那么POST過程將被跳過去,直接從第三步開頭,另外第五步的檢測CPU和內(nèi)存測試也不會再進行。我們可以看到,無論是冷啟動還是熱啟動,系統(tǒng)BIOS都一次又一次地重復進行著這些我們平常并不太留意的事情,然而正是這些單調(diào)的硬件檢測步驟為我們能夠正常使用電腦供應了基礎

========================

我們每天使用計算機必需要經(jīng)過的一個步驟就是啟動了,但是,你是否知道計算機究竟是怎樣啟動的呢?或許,你會認為這并不重要,是的,對于我們一般人而言,它的確不重要,事實上,我們更關懷它啟動得有多快,但是,這卻實在是一個很“基本”的問題,每天都在用計算機,卻不知道它是怎樣啟動的,好像總感覺有些別扭(當然了,多數(shù)人都不知道的話也就沒什么好別扭的了)。下面就為大家介紹一下我們使用的計算機究竟是怎樣啟動起來的,由于這個問題比較大,我將它分為了兩部分來介紹,這樣可能比較好接受一些。這次只介紹前半部分(即和操作系統(tǒng)無關的部分)。另外,為便利大家理解,我特意制作了相關的流程圖,建議大家對比著看。

假如你情愿了解一下,盼望你能通過下面的介紹弄懂這個問題,假如你沒什么愛好,也沒關系,究竟,它是個比較邊緣的東西,不太了解也行。

像大多數(shù)介紹此學問的文章一樣,這里還是需要先介紹一下兩個基本而重要的概念。

BIOS:即“BasicInput/OutputSystem”(基本輸入輸出系統(tǒng)),它是一組被“固化”在計算機主板上的一塊ROM中直接關聯(lián)硬件的程序,保存著計算機最重要的基本輸入輸出的程序、系統(tǒng)設置信息、開機后自檢程序和系統(tǒng)自啟動程序,其主要功能是為計算機供應最底層的、最直接的硬件設置和掌握,它包括系統(tǒng)BIOS(主板BIOS).其它設備BIOS(例如IDE掌握器BIOS、顯卡BIOS等)其中系統(tǒng)BIOS占據(jù)了主導地位.計算機啟動過程中各個BIOS的啟動都是在它的掌握下進行的.

內(nèi)存地址:我曾在虛擬內(nèi)存的介紹中提到過它,我們知道,內(nèi)存空間的最基本單位是位,8位視為一個字節(jié),即我們常用的單位B,內(nèi)存中的每一個字節(jié)都占有一個地址(地址是為了讓CPU識別這些空間,是根據(jù)16進制表示的),而最早的8086處理器只能識別1MB(2的20次方B)的空間,這1MB內(nèi)存中低端(即最終面)的640KB就被稱為基本內(nèi)存,而剩下的內(nèi)存(全部的)則是擴展內(nèi)存。這640KB的空間分別由顯存和各BIOS所得。

現(xiàn)在正式開頭介紹計算機的啟動過程(從打開電源到操作系統(tǒng)啟動之前)

1、當電源開關按下時,電源開頭向主板和其他設備供電,此時電壓并不穩(wěn)定,于是,當主板認為電壓并沒有達到CMOS中記錄的CPU的主頻所要求的電壓時,就會向CPU發(fā)出RESET信號(即復位,不讓CPU進一步運行),不過僅一瞬間不穩(wěn)定的電壓就能達到符合要求的穩(wěn)定值,此時復位信號撤銷,CPU立刻從基本內(nèi)存的BIOS段讀取一條跳轉指令,跳轉到BIOS的真正啟動代碼處,如此,系統(tǒng)BIOS啟動,此后的過程都由系統(tǒng)BIOS掌握。

2、系統(tǒng)BIOS啟動后會進行加電自檢POST(PowerOnSelfRest)。不過這個過程進行得很快,它主要是檢測關鍵設備(如電源、CPU芯片、BIOS芯片、基本內(nèi)存等電路是否存在以及供電狀況是否良好。假如自檢消失了問題,系統(tǒng)喇叭會發(fā)出警報聲(依據(jù)警報聲的長短和次數(shù)可以知道究竟消失了什么問題)。

3、假如自檢通過,系統(tǒng)BIOS會查找顯卡BIOS,找到后會調(diào)用顯卡BIOS的初始化代碼,此時顯示器就開頭顯示了(這就是為什么自檢失敗只能靠發(fā)聲進行提示了)。顯卡BIOS會在屏幕上顯示顯卡的相關信息(不過現(xiàn)在的筆記本好像并不顯示這個)。

4、顯卡檢測勝利后會進行其他設備的測試,通過后系統(tǒng)BIOS重新執(zhí)行自己的代碼,并顯示自己的啟動畫面,將自己的相關信息顯示在屏幕上,而后會進行內(nèi)存測試(這些在現(xiàn)在的計算機上也看不到了),僅僅是短暫消失系統(tǒng)BIOS設置頁面,此時就可以對系統(tǒng)BIOS進行需要的設置了,完成后會重新啟動。

5、此后BIOS會檢測系統(tǒng)的標準硬件(如硬盤、軟驅(雖然現(xiàn)在許多計算機已沒有軟驅了)、串行和并行接口等),檢測完成后會接著檢測即插即用設備,假如有的話就為該設備安排中斷、DMA通道和I/O端口等資源,到了這里,全部的設備都已經(jīng)檢測完成了,老機會進行一次清屏并顯示一個系統(tǒng)配置表,假如和上次啟動相比消失了硬件變動,BIOS還會更新ESCD,即“ExtendedSystemConfigurationData”(擴展系統(tǒng)配置數(shù)據(jù)),它是系統(tǒng)BIOS用來與操作系統(tǒng)交換硬件配置信息的數(shù)據(jù),這些數(shù)據(jù)被存放在CMOS中。現(xiàn)在的機器則不再顯示這些了。

6、當上面的全部步驟都順當進行以后,BIOS將執(zhí)行最終一項任務:根據(jù)用戶指定的啟動挨次進行啟動(即我們常常需要用到的設置系統(tǒng)從哪里啟動,一般默認是硬盤,假如需要安裝系統(tǒng),還會設置為光驅或USB設備),留意,這里是指的啟動挨次,假如設置為從光驅啟動,而光驅中又沒有光盤的話,系統(tǒng)還是會接著從硬盤啟動的。

至此,操作系統(tǒng)啟動之前的全部啟動步驟都完成了,假如從硬盤啟動的話,接著就是操作系統(tǒng)的啟動過程了,關于這一部分,不同的系統(tǒng)也是存在差別的,我們謹以xp和vista為例,由于內(nèi)容較多,就下一次再介紹吧。

下面是上面的啟動過程的流程圖,對比此圖理解上面的內(nèi)容可能會更便利些:

操作系統(tǒng)啟動之前的計算機啟動過程我已經(jīng)在《計算機啟動過程圖文詳解(一)----計算機初始化啟動過程》一文中具體介紹過,今日就介紹一下初始化啟動后的操作系統(tǒng)的啟動過程。

我們只介紹Windows系統(tǒng)的啟動,由于vista和windows7操作系統(tǒng)的啟動采納了全新的方式,所以這里需要對xp和Vista(Windows7與之基本相同)分別介紹。為了不至于導致大家看不明白,我只介紹一個也許的過程。

xp系統(tǒng)的啟動

當系統(tǒng)BIOS完成初始化后,會將掌握權交給主引導紀錄(即MBR:MasterBootRecord),MBR會檢查硬盤分區(qū)表,找到硬盤上的引導分區(qū),然后將引導分區(qū)上的操作系統(tǒng)引導扇區(qū)調(diào)入內(nèi)存,并執(zhí)行其NTDLR文件。

NTDLR會將微處理器從實模式(此模式下計算機認為內(nèi)存為64KB,其他未擴展內(nèi)存)轉換為32位的平面內(nèi)存模式(此模式下認為CPU可識別的全部內(nèi)存均是可用內(nèi)存)。然后,NTDLR啟動mini-filesystemdrivers以便它能夠識別全部采納NTFS和FAT(FAT32)文件系統(tǒng)的硬盤分區(qū)。

此后NTLDR會讀取boot.ini文件,以打算應當啟動哪一個系統(tǒng),假如boot.ini中僅顯示了一個系統(tǒng)或者將timeout(系統(tǒng)選擇頁面停留時間)參數(shù)設為0的話,這個系統(tǒng)選擇頁面就不會消失而是直接啟動默認的系統(tǒng)。

而假如boot.ini中含有多個啟動引導項,當選擇了不同的系統(tǒng)后計算機接下來的啟動流程就會產(chǎn)生區(qū)分,假如選擇的不是xp,NTLDR會讀取bootsect.dos來啟動相應系統(tǒng),假如選擇了xp的話,就會接著轉入硬件檢測階段。

在這個階段,ntdetect.會收集計算機的硬件信息列表并將其返回到NTLDR中,以便以后將這些信息寫入注冊表(詳細而言是HKEY_LOCAL_MACHINE下的hardware)中。

然后會進行硬件配置選擇,假如計算機含多個硬件配置,會消失配置選擇頁面,假如僅有一個的話,系統(tǒng)直接進入默認配置。

此后開頭加載xp內(nèi)核,NTLDR首先加載ntoskrnl.exe(即xp系統(tǒng)內(nèi)核),不過此時并未初始化內(nèi)核,而是緊接著加載了硬件抽象層(即HAL,一個hal.dll文件),然后加載底層設備驅動程序和需要的服務。

完成這些后才開頭初始化內(nèi)核,此時我們就能看到xp的LOGO和啟動進度條了,在進度條運動的過程中,內(nèi)核使用剛才ntdetect.收集到的意見配置信息創(chuàng)建HKEY_LOCAL_MACHINE的hardware鍵。然后創(chuàng)建計算機數(shù)據(jù)備份,初始化并加載設備驅動程序,SessionManager啟動xp的高級子系統(tǒng)及其服務并有win32子系統(tǒng)啟動Winlogon進程。

Winlogon.exe會啟動LocalSecurityAuthority,此時會顯示xp的歡迎屏幕或者登陸確認框(假如設置了多賬戶或密碼的話)。這個時候,系統(tǒng)還在連續(xù)初始化剛才沒有完成的驅動程序。

歡迎屏幕結束或者用戶正確登陸后,ServiceController最終還需要檢查是否還有服務需要加載并進行加載。此后xp桌面消失,系統(tǒng)啟動完成。

Vista(Windows7)的啟動

Vista和Windows7的啟動過程就簡潔多了(其實是將啟動步驟進行了簡化),它采納了全新的啟動方式。詳細如下:

MBR得到掌握權后,同樣會讀取引導扇區(qū),以便啟動Windows啟動管理器的bootmgr.exe程序,

Window

溫馨提示

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

評論

0/150

提交評論