首頁>Club>
12
回覆列表
  • 1 # 使用者1248012419750

    BIOS啟動細節:

    a) 按下電源開關,電源就開始向主機板和其它裝置供電;當晶片組檢測到電源已經開始穩定供電了(當然從不穩定到穩定的過程只是一瞬間的事情),它便撤去RESET訊號(如果是手工按下計算機面板上的Reset按鈕來重啟機器,那麼鬆開該按鈕時晶片組就會撤去RESET訊號);CPU馬上就從地址FFFF:0000H 處開始執行指令,放在這裡的只是一條跳轉指令,跳到系統BIOS中真正的啟動程式碼處。

    b) 系統BIOS的啟動程式碼首先進行POST(Power-On Self Test,加電後自檢)。POST的主要檢測系統中一些關鍵裝置是否存在和能否正常工作,例如記憶體和顯示卡等裝置;由於POST是最早進行的檢測過程,此時顯示卡還沒有初始化,如果系統BIOS在進行POST的過程中發現了一些致命錯誤,例如沒有找到記憶體或者記憶體有問題(此時只會檢查640K常規記憶體),那麼系統BIOS就會直接控制喇叭發聲來報告錯誤,聲音的長短和次數代表了錯誤的型別;在正常情況下,POST過程進行得非常快,幾乎無法感覺到它的存在。POST結束之後就會呼叫其它程式碼來進行更完整的硬體檢測。

    c) 接下來系統BIOS將查詢顯示卡的BIOS。前面說過,存放顯示卡BIOS的ROM晶片的起始地址通常設在C0000H處,系統BIOS在這個地方找到顯示卡BIOS之後就呼叫它的初始化程式碼,由顯示卡BIOS來初始化顯示卡。此時多數顯示卡都會在螢幕上顯示出一些初始化資訊,介紹生產廠商、圖形晶片型別等內容,不過這個畫面幾乎是一閃而過。系統BIOS接著會查詢其它裝置的BIOS程式,找到之後同樣要呼叫這些BIOS內部的初始化程式碼來初始化相關的裝置。

    d) 查詢完所有其它裝置的BIOS之後,系統BIOS將顯示出它自己的啟動畫面,其中包括有系統BIOS的型別、序列號和版本號等內容。

    e) 接著系統BIOS將檢測和顯示CPU的型別和工作頻率,測試所有的RAM,並同時在螢幕上顯示記憶體測試的進度。可以在CMOS設定中自行決定使用簡單耗時少或者詳細耗時多的測試方式。

    f) 記憶體測試透過之後,系統BIOS將開始檢測系統中安裝的一些標準硬體裝置,包括硬碟、CD-ROM、串列埠、並口和軟碟機等裝置,另外絕大多數較新版本的系統BIOS在這一過程中還要自動檢測和設定記憶體的定時引數、硬碟引數和訪問模式等。

    g) 標準裝置檢測完畢後,系統BIOS內部支援即插即用的程式碼將開始檢測和配置系統中安裝的即插即用裝置。每找到一個裝置之後,系統BIOS都會在螢幕上顯示出裝置的名稱和型號等資訊,同時為該裝置分配中斷、DMA通道和I/O埠等資源。

    h) 到這一步為止,所有硬體都已經檢測配置完畢了,多數系統BIOS會重新清屏並在螢幕上方顯示出一個表格,其中概略地列出了系統中安裝的各種標準硬體裝置,以及它們使用的資源和一些相關工作引數。

    i) 接下來系統BIOS將更新ESCD(Extended System Configuration Data,擴充套件系統配置資料)。ESCD是系統BIOS用來與作業系統交換硬體配置資訊的一種手段,這些資料被存放在CMOS(一小塊特殊的RAM,由主機板上的電池來供電)之中。通常ESCD資料只在系統硬體配置發生改變後才會更新,所以不是每次啟動機器時都能夠看到“Update ESCD… Success”這樣的資訊。不過,某些主機板的系統BIOS在儲存ESCD資料時使用了與Windows 9x不相同的資料格式,於是Windows 9x在它自己的啟動過程中會把ESCD資料修改成自己的格式。但在下一次啟動機器時,即使硬體配置沒有發生改變,系統BIOS也會把ESCD的資料格式改回來。如此迴圈,將會導致在每次啟動機器時,系統BIOS都要更新一遍ESCD,這就是為什麼有些機器在每次啟動時都會顯示出相關資訊的原因。

    j) ESCD更新完畢後,系統BIOS的啟動程式碼將進行它的最後一項工作:即根據使用者指定的啟動順序從軟盤、硬碟或光碟機啟動MBR。在這個過程中會按照啟動順序順序比較其放置MBR的位置的結尾兩位是否為0xAA55,透過這種方式判斷從哪個引導裝置進行引導。在確定之後,將該引導裝置的MBR內容讀入到0x7C00[1]的位置,並再次判斷其最後兩位,當檢測正確之後,進行階段1的引導。

    轉至計算機的啟動過程(詳細) - Langeldep的專欄 - 部落格頻道 - CSDN.NET

  • 中秋節和大豐收的關聯?
  • 陰線買入法怎麼買進暴漲前的牛股?