這個UEFI BIOS架構系列我是參考 I 公司內部訓練教材寫的, 雖然其他的貼文有些也參考了網路先進的文章但只有參考一點點, 而我計畫這一系列大致上會照著 I 公司的教材大綱並加以淺顯化, 同時省略一些我認為不重要的部分或是留待以後貼文再講解的東西, 所以我註明了出處, 雖然沒有獲得授權, 但根據我對台灣RD的了解 I 公司應該不會跟我計較, 舉例來說我跟 L 公司前同事基隆山豬仔講五四三他不理我, 但我跟他講COREBOOT電源供應器他就會理我, 台灣的RD只要你有心向學基本上都是熱心助人的(當然有競爭關係的對手例外)
現在開始介紹UEFI BIOS 架構, BIOS開機流程分四大階段, 第一階段是SEC(Security), 這個階段要做的事情很少, 最重要的是挖一塊cache記憶體來當暫時的記憶體供BIOS初始化使用, 電腦一開機第一行指令必定是0xFFFFFFF0, 而這個位址必定存放一個JMP指令, JMP指令會讓電腦跳轉到SEC CORE執行, SEC還要做電腦位元轉換, 電腦一開機時必定是16位元FAT模式, SEC要把電腦從16位元轉換到32位元讓下個階段(PEI 階段)可以順利執行, SEC結束後會跳轉到BFV(Boot Firmware Volume), 一套BIOS可以有很多FV但是只能有一個用來boot的BFV, PEI CORE就在BFV裡, 這是在編譯時就利用tool告知SEC的資訊, 並非SEC去掃描PEI的code, 最後SEC既然取名為Security當然也要檢查這套BIOS的安全性
沒有留言:
張貼留言