Common sense ain't common.
- Will Rogers
EFI OS Loaders
OS loader是一種特殊的 UEFI Application,用來讓系統從 firmware
環境轉換到 OS環境。
- 要確定是從哪被 load,這能讓其從相同位置取得其他檔案。
- 要確定 OS被存放在哪。OS可能會在硬碟中的某個 partition,所以 OS Loader
需要實作或讀取檔案系統的驅動來存取OS partition的檔案。 - 需要建立實體記憶體的 memory map回報給 OS Kernel,有些 memory resource是
OS不能碰的,所以 OS Loader也需要從UEFI API來獲得系統當前的 memory map。 - OS 能將 boot path及 boot options以環境變數的形式存在 nonvolatile storage
中。OS Loader也會使用這些環境變數,並且也需要將某些傳遞給 OS Kernel。 - 呼叫 ExitBootService ()後,UEFI Boot Service已經無法再使用,控制權轉交
OS Kernel,OS Kernel只能使用 UEFI Runtime Service。
沒有留言:
張貼留言