關於UEFI標準
UEFI(Unified Extensible Firmware Interface Forum)的簡稱 ,是目前從智能手機到打印機,筆記本電腦,服務器,甚至超級計算都被廣泛應用的技術標準,其中它與傳統BIOS的不同之處可以用3句話進行概括:
- 規範了各種接口標準
- 爲不同的操作系統提供統一的接口
- 代碼開源
一:UEFI啓動流程圖
- 共7個階段
- STEP1
- SEC階段:(安全驗證)
- 接受系統的啓動、重啓、異常信號
- Cache AS RAM(CAR),在Cache上開闢一段空間作爲內存使用(此時內存還沒初始化,相關C語言運行需要內存和棧的空間)
- 傳遞系統參數給PEI階段
- STEP2
- PEI階段:(EFI前期的初始化)
- 此階段主要是爲DXE階段做的相關準備工作
- 做CPU和相關硬件的初始化,最主要的是內存初始化
- 將DXE階段需要的參數以HOB列表形式進行封裝,並傳遞給DXE階段
- STEP3
- DXE階段:(驅動執行環境)
- 此階段主要是進行大量的驅動加載和初始化工作
- 通過對固件中所有Driver的遍歷,當Driver
- 當Driver都被執行完成了,系統即完成了初始化
- STEP4
- BDS階段:(啓動設備選擇)
- 此階段主要初始化控制檯設備
- 加載必要的設備驅動
- 根據用戶選擇執行相應啓動項
- STEP5
- TSL階段:(操作系統加載前期)
- 此階段是OS Loader執行的第一個階段
- 爲OS Loader準備執行環境
- OS Loader調用EXITBootService結束啓動服務
- 進入RT階段(RunTime)階段
- STEP6
- RT階段:(OS環境執行時期)
- 此階段主要是RT隨着操作系統運行提供相應服務
- OS已經完全獲得控制權,RT會清理和回收一些之前UEFI佔用資源
- 這一階段運行出現錯誤時,將進入RL修復
- STEP7
- AL:(災難恢復)
- 此階段主要根據廠家定義的修復方案進行,UEFI未進行相關規定