1. 程式人生 > >UEFI啟動流程

UEFI啟動流程

efi 圖片 一個 異常 控制 進入 boot 空間 流程

UEFI系統啟動流程

技術分享圖片

以上是UEFI系統運行的7個階段,下邊是詳細描述:

SEC階段:(安全驗證)

1、接收和處理系統的啟動,重啟,異常信號;

2、SEC階段特色功能“Cache As RAM(CAR)”,在Cache上開辟一段空間作為內存使用(原因:因為此時內存還沒有被初始化,C語言運行需要內存和棧空間);

3、傳遞系統參數給PEI階段

1-可啟用的固件的地址和大小;

2-內存和棧的地址和大小;

PEI階段:(EFI前期初始化)

在PEI階段主要為DXE階段準備執行環境,主要做CPU相關硬件初始化,最主要是對於內存的初始化,將DXE階段需要的參數以HOB列表的形式進行封裝,傳遞給DXE階段。

DXE階段:(驅動執行環境)

在DXE階段已經有足夠的內存可以使用,因此可以完成大量的驅動加載和初始化工作。遍歷固件中所有的Driver,當Driver所依賴的資源都滿足要求時,調度Driver到執行隊列執行,直到所有的Driver都被加載和執行完畢,系統完成初始化。

BDS階段:(啟動設備選擇)

在BDS階段,主要是初始化控制臺設備,加載執行必要的設備驅動,根據用戶的選擇,執行相應的啟動項。

TSL階段:(操作系統加載前期)

TSL階段是OS Loader執行的第一個階段,為OS Loader準備執行環境,OS Loader調用ExitBootService結束啟動服務,進入RunTime階段。

RT階段:

在RT階段,OS Loader已經完全取得了系統的控制權,因此要清理和回收一些之前被UEFI占用的資源,runtime services隨著操作系統的運行提供相應的運行時的服務,這個期間一旦出現錯誤和異常,將進入AL進行修復。

AL階段:(災難恢復)

根據廠家自定義修復方案,UEFI標準未進行規定。

UEFI啟動流程