'UEFI+GPT與BIOS+MBR詳細引導過程及多系統引導原理'

"

系統啟動的兩種引導方式

計算機系統引導方式主要有兩種:一種是傳統的BIOS模式,另一種是新型UEFI(全稱統一的可擴展固件接口)模式。UEFI啟動也可以看作是Bios的升級版。不同模式對應不同的磁盤分區類型,BIOS只可以識別MBR分區;而UEFI可同時識別MBR分區和GPT分區,所以在UEFI下可以啟動不同磁盤類型中的操作系統。

"

系統啟動的兩種引導方式

計算機系統引導方式主要有兩種:一種是傳統的BIOS模式,另一種是新型UEFI(全稱統一的可擴展固件接口)模式。UEFI啟動也可以看作是Bios的升級版。不同模式對應不同的磁盤分區類型,BIOS只可以識別MBR分區;而UEFI可同時識別MBR分區和GPT分區,所以在UEFI下可以啟動不同磁盤類型中的操作系統。

UEFI+GPT與BIOS+MBR詳細引導過程及多系統引導原理

BIOS芯片

  • BIOS+MBR引導過程

BIOS引導過程:開機自檢>BIOS>MBR(主引導記錄)–>DPT(磁盤分區表)>PBR(分區引導記錄)> Bootmgr(引導管理器)/NTLDR>BCD(從vista開始的引導配置數據)/boot.ini(XP 引導配置文件)>Winload.exe>內核加載 >windows vista+/windows xp

"

系統啟動的兩種引導方式

計算機系統引導方式主要有兩種:一種是傳統的BIOS模式,另一種是新型UEFI(全稱統一的可擴展固件接口)模式。UEFI啟動也可以看作是Bios的升級版。不同模式對應不同的磁盤分區類型,BIOS只可以識別MBR分區;而UEFI可同時識別MBR分區和GPT分區,所以在UEFI下可以啟動不同磁盤類型中的操作系統。

UEFI+GPT與BIOS+MBR詳細引導過程及多系統引導原理

BIOS芯片

  • BIOS+MBR引導過程

BIOS引導過程:開機自檢>BIOS>MBR(主引導記錄)–>DPT(磁盤分區表)>PBR(分區引導記錄)> Bootmgr(引導管理器)/NTLDR>BCD(從vista開始的引導配置數據)/boot.ini(XP 引導配置文件)>Winload.exe>內核加載 >windows vista+/windows xp

UEFI+GPT與BIOS+MBR詳細引導過程及多系統引導原理

  1. 開機自檢,BIOS先要對CPU初始化,然後跳轉到BIOS啟動處進行POST自檢,(此過程如有嚴重錯誤,則電腦會用不同的報警聲音提醒),接下來採用讀中斷的方式加載各種硬件,完成硬件的初始化。
  2. 讀入MBR(主引導記錄),MBR主要功能是在分區表(DPT)中尋找可引導的活動分區(也叫激活主分區),並找到該分區的引導扇區(分區的第一個扇區)中的分區引導記錄(PBR),載入PBR中的啟動管理器(bootmgr.exe或NTLDR)。注意:MBR磁盤分區格式下,一個磁盤只允許有一個分區是活動的,因此啟動文件(bootmgr、BCD)必須存放在活動的主分區內,這樣才能找到系統載入程序。
  3. 啟動管理器讀取該分區boot文件夾裡的啟動配置文本BCD(或根目錄下boot.ini),然後根據啟動設置文件定位並加載二級引導載入程序winload.exe來加載OS內核。如果有多個系統,啟動配置文件就會有多個啟動項,相應的bootmgr也會提供選擇菜單,然後則根據用戶選擇來決定加載哪個系統的Winload(多系統引導選擇)。
  • UEFI+GPT 引導過程

UEFI引導過程:開機>UEFI>GPT分區表>ESP分區(也稱EFI分區)>\\efi\\Microsoft\\boot\\bootmgfw.efi>efi\\Microsoft\\BCD>\\Windows\\system32\\winload.efi。此過程沒有MBR參與。

"

系統啟動的兩種引導方式

計算機系統引導方式主要有兩種:一種是傳統的BIOS模式,另一種是新型UEFI(全稱統一的可擴展固件接口)模式。UEFI啟動也可以看作是Bios的升級版。不同模式對應不同的磁盤分區類型,BIOS只可以識別MBR分區;而UEFI可同時識別MBR分區和GPT分區,所以在UEFI下可以啟動不同磁盤類型中的操作系統。

UEFI+GPT與BIOS+MBR詳細引導過程及多系統引導原理

BIOS芯片

  • BIOS+MBR引導過程

BIOS引導過程:開機自檢>BIOS>MBR(主引導記錄)–>DPT(磁盤分區表)>PBR(分區引導記錄)> Bootmgr(引導管理器)/NTLDR>BCD(從vista開始的引導配置數據)/boot.ini(XP 引導配置文件)>Winload.exe>內核加載 >windows vista+/windows xp

UEFI+GPT與BIOS+MBR詳細引導過程及多系統引導原理

  1. 開機自檢,BIOS先要對CPU初始化,然後跳轉到BIOS啟動處進行POST自檢,(此過程如有嚴重錯誤,則電腦會用不同的報警聲音提醒),接下來採用讀中斷的方式加載各種硬件,完成硬件的初始化。
  2. 讀入MBR(主引導記錄),MBR主要功能是在分區表(DPT)中尋找可引導的活動分區(也叫激活主分區),並找到該分區的引導扇區(分區的第一個扇區)中的分區引導記錄(PBR),載入PBR中的啟動管理器(bootmgr.exe或NTLDR)。注意:MBR磁盤分區格式下,一個磁盤只允許有一個分區是活動的,因此啟動文件(bootmgr、BCD)必須存放在活動的主分區內,這樣才能找到系統載入程序。
  3. 啟動管理器讀取該分區boot文件夾裡的啟動配置文本BCD(或根目錄下boot.ini),然後根據啟動設置文件定位並加載二級引導載入程序winload.exe來加載OS內核。如果有多個系統,啟動配置文件就會有多個啟動項,相應的bootmgr也會提供選擇菜單,然後則根據用戶選擇來決定加載哪個系統的Winload(多系統引導選擇)。
  • UEFI+GPT 引導過程

UEFI引導過程:開機>UEFI>GPT分區表>ESP分區(也稱EFI分區)>\\efi\\Microsoft\\boot\\bootmgfw.efi>efi\\Microsoft\\BCD>\\Windows\\system32\\winload.efi。此過程沒有MBR參與。

UEFI+GPT與BIOS+MBR詳細引導過程及多系統引導原理

  1. 開機啟動自檢,執行UEFI初始化模塊;
  2. UEFI執行後,會進行CPU、北橋、南橋及存儲器初始化工作,當這部分設備就緒後,緊接著它就載入UEFI驅動執行環境(Driver Execution Environment,簡稱DXE)。當DXE被載入時,系統就可以加載硬件設備的UEFI驅動程序了。DXE使用了枚舉的方式加載各種總線及設備驅動,UEFI驅動程序可以放置於系統的任何位置,只要保證它可以按順序被正確枚舉。藉助這一點,我們可以把眾多設備的驅動放置在磁盤的UEFI專用分區中(ESP分區),當系統正確加載這個磁盤後,這些驅動就可以被讀取並應用了。在這個特性的作用下,即使新設備再多,UEFI也可以輕鬆地一一支持,由此克服了傳統BIOS捉襟見肘的情形。UEFI能支持網絡設備並輕鬆聯網,原因就在於此。
  3. 從EFI分區找到啟動管理器(\\efi\\Microsoft\\boot\\bootmgfw.efi)。
  4. 啟動管理器導入EFI分區BCD文件(efi\\Microsoft\\BCD),然後根據其配置內容加載引導加載程序winload.efi(C:\\Windows\\system32\\winload.efi)來加載OS內核。如果BCD中有多個配置項,則會讓用戶選擇要啟動的系統。如果有多個系統,啟動設置文件就會有多個啟動項,相應的bootmgr也會提供選擇菜單,然後則根據用戶選擇來決定加載哪個系統的Winload(多系統引導原理)。
"

系統啟動的兩種引導方式

計算機系統引導方式主要有兩種:一種是傳統的BIOS模式,另一種是新型UEFI(全稱統一的可擴展固件接口)模式。UEFI啟動也可以看作是Bios的升級版。不同模式對應不同的磁盤分區類型,BIOS只可以識別MBR分區;而UEFI可同時識別MBR分區和GPT分區,所以在UEFI下可以啟動不同磁盤類型中的操作系統。

UEFI+GPT與BIOS+MBR詳細引導過程及多系統引導原理

BIOS芯片

  • BIOS+MBR引導過程

BIOS引導過程:開機自檢>BIOS>MBR(主引導記錄)–>DPT(磁盤分區表)>PBR(分區引導記錄)> Bootmgr(引導管理器)/NTLDR>BCD(從vista開始的引導配置數據)/boot.ini(XP 引導配置文件)>Winload.exe>內核加載 >windows vista+/windows xp

UEFI+GPT與BIOS+MBR詳細引導過程及多系統引導原理

  1. 開機自檢,BIOS先要對CPU初始化,然後跳轉到BIOS啟動處進行POST自檢,(此過程如有嚴重錯誤,則電腦會用不同的報警聲音提醒),接下來採用讀中斷的方式加載各種硬件,完成硬件的初始化。
  2. 讀入MBR(主引導記錄),MBR主要功能是在分區表(DPT)中尋找可引導的活動分區(也叫激活主分區),並找到該分區的引導扇區(分區的第一個扇區)中的分區引導記錄(PBR),載入PBR中的啟動管理器(bootmgr.exe或NTLDR)。注意:MBR磁盤分區格式下,一個磁盤只允許有一個分區是活動的,因此啟動文件(bootmgr、BCD)必須存放在活動的主分區內,這樣才能找到系統載入程序。
  3. 啟動管理器讀取該分區boot文件夾裡的啟動配置文本BCD(或根目錄下boot.ini),然後根據啟動設置文件定位並加載二級引導載入程序winload.exe來加載OS內核。如果有多個系統,啟動配置文件就會有多個啟動項,相應的bootmgr也會提供選擇菜單,然後則根據用戶選擇來決定加載哪個系統的Winload(多系統引導選擇)。
  • UEFI+GPT 引導過程

UEFI引導過程:開機>UEFI>GPT分區表>ESP分區(也稱EFI分區)>\\efi\\Microsoft\\boot\\bootmgfw.efi>efi\\Microsoft\\BCD>\\Windows\\system32\\winload.efi。此過程沒有MBR參與。

UEFI+GPT與BIOS+MBR詳細引導過程及多系統引導原理

  1. 開機啟動自檢,執行UEFI初始化模塊;
  2. UEFI執行後,會進行CPU、北橋、南橋及存儲器初始化工作,當這部分設備就緒後,緊接著它就載入UEFI驅動執行環境(Driver Execution Environment,簡稱DXE)。當DXE被載入時,系統就可以加載硬件設備的UEFI驅動程序了。DXE使用了枚舉的方式加載各種總線及設備驅動,UEFI驅動程序可以放置於系統的任何位置,只要保證它可以按順序被正確枚舉。藉助這一點,我們可以把眾多設備的驅動放置在磁盤的UEFI專用分區中(ESP分區),當系統正確加載這個磁盤後,這些驅動就可以被讀取並應用了。在這個特性的作用下,即使新設備再多,UEFI也可以輕鬆地一一支持,由此克服了傳統BIOS捉襟見肘的情形。UEFI能支持網絡設備並輕鬆聯網,原因就在於此。
  3. 從EFI分區找到啟動管理器(\\efi\\Microsoft\\boot\\bootmgfw.efi)。
  4. 啟動管理器導入EFI分區BCD文件(efi\\Microsoft\\BCD),然後根據其配置內容加載引導加載程序winload.efi(C:\\Windows\\system32\\winload.efi)來加載OS內核。如果BCD中有多個配置項,則會讓用戶選擇要啟動的系統。如果有多個系統,啟動設置文件就會有多個啟動項,相應的bootmgr也會提供選擇菜單,然後則根據用戶選擇來決定加載哪個系統的Winload(多系統引導原理)。
UEFI+GPT與BIOS+MBR詳細引導過程及多系統引導原理

在GPT磁盤格式下,windows系統的啟動文件和啟動配置文件(bootmgfw.efi、BCD)是存放在一個不可見的FAT格式的分區裡的(也叫ESP分區或EFI分區)。

多系統啟動原理

多系統啟動(以Windows系統為例)中,BIOS+MBR和UEFI+GPT的引導方法基本上是一樣的,都是通過啟動配置文件(BCD或boot.ini)來顯示啟動菜單,當用戶選中其中某個啟動項後,啟動管理器會加載不同分區的Winload以啟動此分區下的操作系統。

以下是通過BOOTICE修改啟動配置文件(BCD),添加多系統啟動項:

"

系統啟動的兩種引導方式

計算機系統引導方式主要有兩種:一種是傳統的BIOS模式,另一種是新型UEFI(全稱統一的可擴展固件接口)模式。UEFI啟動也可以看作是Bios的升級版。不同模式對應不同的磁盤分區類型,BIOS只可以識別MBR分區;而UEFI可同時識別MBR分區和GPT分區,所以在UEFI下可以啟動不同磁盤類型中的操作系統。

UEFI+GPT與BIOS+MBR詳細引導過程及多系統引導原理

BIOS芯片

  • BIOS+MBR引導過程

BIOS引導過程:開機自檢>BIOS>MBR(主引導記錄)–>DPT(磁盤分區表)>PBR(分區引導記錄)> Bootmgr(引導管理器)/NTLDR>BCD(從vista開始的引導配置數據)/boot.ini(XP 引導配置文件)>Winload.exe>內核加載 >windows vista+/windows xp

UEFI+GPT與BIOS+MBR詳細引導過程及多系統引導原理

  1. 開機自檢,BIOS先要對CPU初始化,然後跳轉到BIOS啟動處進行POST自檢,(此過程如有嚴重錯誤,則電腦會用不同的報警聲音提醒),接下來採用讀中斷的方式加載各種硬件,完成硬件的初始化。
  2. 讀入MBR(主引導記錄),MBR主要功能是在分區表(DPT)中尋找可引導的活動分區(也叫激活主分區),並找到該分區的引導扇區(分區的第一個扇區)中的分區引導記錄(PBR),載入PBR中的啟動管理器(bootmgr.exe或NTLDR)。注意:MBR磁盤分區格式下,一個磁盤只允許有一個分區是活動的,因此啟動文件(bootmgr、BCD)必須存放在活動的主分區內,這樣才能找到系統載入程序。
  3. 啟動管理器讀取該分區boot文件夾裡的啟動配置文本BCD(或根目錄下boot.ini),然後根據啟動設置文件定位並加載二級引導載入程序winload.exe來加載OS內核。如果有多個系統,啟動配置文件就會有多個啟動項,相應的bootmgr也會提供選擇菜單,然後則根據用戶選擇來決定加載哪個系統的Winload(多系統引導選擇)。
  • UEFI+GPT 引導過程

UEFI引導過程:開機>UEFI>GPT分區表>ESP分區(也稱EFI分區)>\\efi\\Microsoft\\boot\\bootmgfw.efi>efi\\Microsoft\\BCD>\\Windows\\system32\\winload.efi。此過程沒有MBR參與。

UEFI+GPT與BIOS+MBR詳細引導過程及多系統引導原理

  1. 開機啟動自檢,執行UEFI初始化模塊;
  2. UEFI執行後,會進行CPU、北橋、南橋及存儲器初始化工作,當這部分設備就緒後,緊接著它就載入UEFI驅動執行環境(Driver Execution Environment,簡稱DXE)。當DXE被載入時,系統就可以加載硬件設備的UEFI驅動程序了。DXE使用了枚舉的方式加載各種總線及設備驅動,UEFI驅動程序可以放置於系統的任何位置,只要保證它可以按順序被正確枚舉。藉助這一點,我們可以把眾多設備的驅動放置在磁盤的UEFI專用分區中(ESP分區),當系統正確加載這個磁盤後,這些驅動就可以被讀取並應用了。在這個特性的作用下,即使新設備再多,UEFI也可以輕鬆地一一支持,由此克服了傳統BIOS捉襟見肘的情形。UEFI能支持網絡設備並輕鬆聯網,原因就在於此。
  3. 從EFI分區找到啟動管理器(\\efi\\Microsoft\\boot\\bootmgfw.efi)。
  4. 啟動管理器導入EFI分區BCD文件(efi\\Microsoft\\BCD),然後根據其配置內容加載引導加載程序winload.efi(C:\\Windows\\system32\\winload.efi)來加載OS內核。如果BCD中有多個配置項,則會讓用戶選擇要啟動的系統。如果有多個系統,啟動設置文件就會有多個啟動項,相應的bootmgr也會提供選擇菜單,然後則根據用戶選擇來決定加載哪個系統的Winload(多系統引導原理)。
UEFI+GPT與BIOS+MBR詳細引導過程及多系統引導原理

在GPT磁盤格式下,windows系統的啟動文件和啟動配置文件(bootmgfw.efi、BCD)是存放在一個不可見的FAT格式的分區裡的(也叫ESP分區或EFI分區)。

多系統啟動原理

多系統啟動(以Windows系統為例)中,BIOS+MBR和UEFI+GPT的引導方法基本上是一樣的,都是通過啟動配置文件(BCD或boot.ini)來顯示啟動菜單,當用戶選中其中某個啟動項後,啟動管理器會加載不同分區的Winload以啟動此分區下的操作系統。

以下是通過BOOTICE修改啟動配置文件(BCD),添加多系統啟動項:

UEFI+GPT與BIOS+MBR詳細引導過程及多系統引導原理

名詞解釋

BIOS:基本輸入輸出系統(Basic Input Output System)。它是一組固化到計算機主板上一個ROM芯片上的程序,它保存著計算機最重要的基本輸入輸出的程序、開機後自檢程序和系統自啟動程序,它可從CMOS中讀寫系統設置的具體信息。完成硬件的初始化後,開始讀入磁盤中的主引導記錄(MBR)。

MBR:主引導記錄(Master Boot Record)是位於磁盤最前邊的一段引導(Loader)代碼,主要有啟動代碼、硬盤分區表和結束標誌字三部分組成。它負責磁盤操作系統(DOS)對磁盤進行讀寫時分區合法性的判別、分區引導信息的定位,硬盤的主引導記錄(MBR)是不屬於任何一個操作系統的,它先於所有的操作系統而被調入內存,併發揮作用,然後才將控制權交給主分區(活動分區)內的操作系統。

DPT:磁盤分區表(Disk Partition Table)屬於主引導記錄中的第二部分,佔據主引導扇區的64個字節(偏移01BEH--偏移01FDH),可以對四個分區的信息進行描述,其中每個分區的信息佔據16個字節。

PBR:分區引導記錄 (Partition Boot Record)可以加載該分區的io.sys (dos / win9x) 或 ntldr(win2000 xp 2003) 或 bootmgr (vista/win2008/win7/win10 )。

bootmgr:啟動管理器(Boot Manager),是在Windows Vista、Windows 7、windows 8/8.1和windows 10中使用的新的啟動管理器,以代替Windows NT系列操作系統(Windows XP、Windows 2003)中的啟動管理器——NTLDR。

NTLDR:是一個隱藏的、只讀的系統文件,位置在系統盤的根目錄,功能是讀取boot.ini,之後裝載所選操作系統。是windows nt 4.0/windows 2000/windows xp/windows server 2003的引導文件。

BCD:啟動設置數據(Boot Configuration Data) ,BCD是操作系統中的啟動設置數據,在有vista或windows7的多重操作系統中,系統通過bootmgr程序導入BCD文件完成啟動菜單的引導。可以在高級 系統設置-啟動和故障恢復 中調整開機默認操作系統和等待時間。

boot.ini:啟動配置文件,Windows NT、Windows 2000、Windows XP、Windows Server 2003主要依賴Boot.ini文件來確定計算機在引導過程中顯示的可供選取的操作系統類別、等待時間等。

UEFI:統一的可擴展固件接口(Unified Extensible Firmware Interface), 這種接口用於操作系統自動從預啟動的操作環境,加載到一種操作系統上。

GPT:GUID磁盤分區表(GUID Partition Table)是一個實體硬盤的分區表的結構佈局的標準。用於替代BIOS系統存儲邏輯塊地址和大小信息的主開機紀錄(MBR)分區表。

"

相關推薦

推薦中...