'/boot/efi' 是否以 ROM 位於記憶體中

'/boot/efi' 是否以 ROM 位於記憶體中

我從書上學到了計算機科學:概述 引導程式駐留在記憶體中 在此輸入影像描述

在通用電腦中,稱為開機載入程式的程式永久儲存在機器的 ROM 中。這就是機器開機時最初執行的程序。引導程式中的指令

然而,在其他書中,它指出引導程式位於硬碟上。

至於BIOS

引導過程從 BIOS 開始。如第 3 章所述,您告訴 BIOS 使用哪個開機裝置—硬碟、USB 記憶棒、CD/DVD 光碟機或其他裝置。假設您選擇硬碟作為主開機裝置(或較高優先順序的裝置不可開機),BIOS 會從主開機記錄 (MBR)(硬碟上的第一個磁區)載入程式碼。

在此輸入影像描述

對於 UEFI

為了運作,EFI 必須了解安裝在硬碟 ESP 上的開機載入程式。

在此輸入影像描述

用另一種方​​式提出我的問題

me@host:~$ df -h | grep 'boot'
/dev/sda1       511M  7.3M  504M   2% /boot/efi

是否/boot/efi作為 ROM 位於記憶體中?

答案1

不,它/boot/efi是系統磁碟上的檔案系統,通常是 FAT32 檔案系統。

這裡的術語很不統一:你的第一本書認為 BIOS 中負責選擇要啟動的磁碟並從磁碟加載第一個內容的部分是引導程式......或至少是主要的部分。

在 BIOS 韌體中,嵌入韌體中的主開機載入程式的功能非常有限:它本質上只是從磁碟的開頭讀取一個區塊,然後執行它。

在UEFI 韌體中,主開機載入程式的功能更強大:它可以理解FAT32 文件系統(並且還可以選擇理解其他文件系統類型),因此它可以從指定文件系統載入指定文件,或從任何受支援的文件系統的標準後備文件載入;對於 64 位元 x86 系統,標準後備檔案路徑名是\EFI\BOOT\BOOTx64.efi.

您的另一本書掩蓋了引導過程的 BIOS 元件,並更專注於引導過程的第二部分:磁碟開機載入程序,它可以(但不一定)特定於正在引導的作業系統。這可以稱為中學引導程序,如果您需要談論它和韌體內主引導程序。但是,如果您不是在談論系統韌體的內部結構,那麼通常也將磁碟輔助引導程式稱為「引導程式」。

對於替代術語,讓我描述一下 HP-UX 如何在 PA-RISC 硬體上做到這一點:

  • 該韌體被稱為 PDC。
  • IPLPDC 韌體包含一個名為或初始程式載入器的 ROM 內開機載入程式例程。顧名思義,它的工作只是載入並執行一個程式。
  • IPL 例程從磁碟載入的第一個程式稱為ISL「初始系統載入程式」。它的工作是載入實際的作業系統核心。它實際上首先載入了另一個模組,HPUX該模組負責載入實際的 HP-UX 核心。

由於韌體可能很難更新,因此將引導程式分成多個元件,這樣可以在開發創新需要時更輕鬆地更改作業系統核心的結構:只有相對較小的(輔助)引導程式(ISL)絕對需要符合韌體 API 要求。如有必要,任何後續組件都可以重新編程,以完全不同的方式執行操作。

相關內容