Show Table of Contents
F.2. 開機過程的詳細資訊
開機過程一開始會因所使用的硬體平台而有所不同。然而,當開機載入程式找到核心並將其載入後,所有電腦架構的預設開機過程將會同化。本章將針對 x86 系統架構來進行討論。
F.2.1. 韌體介面
F.2.1.1. 基於 BIOS 的 x86 系統
Basic Input/Output System(BIOS)是個韌體介面,它並不僅是控制開機過程的第一階段,同時也提供了最低層的週邊裝置介面。在包含了 BIOS 的 x86 系統上,此程式會被設為唯讀、常駐記憶,並且能夠隨時使用。當系統啟動後,處理器會在系統記憶體尾端搜尋 BIOS,並執行它。
在載入之後,BIOS 會檢測系統,偵測、檢查週邊裝置,並尋找可用來啟動系統的裝置。通常,它會先檢測磁碟機與光碟機中,是否有可用來開機的磁片或光碟片,如果偵測不到才會開始檢測系統硬碟。大部分的情況下,在開機時磁碟搜尋的順序是由 BIOS 中的設定來控制的,它會自行在主 IDE 匯流排上搜尋主 IDE 裝置。接著 BIOS 會將位於主磁區的程式載入記憶體中,稱之為主開機紀錄或 MBR。MBR 的大小只有 512 位元組,含有用來啟動電腦的編碼指令(稱之為開機載入程式),以及分割表。在 BIOS 找到並將開機載入程式載入記憶體後,開機載入程式便會取得開機過程的控制權。
開機載入程式的第一階段為在 MBR 上的小型二進位編碼。其唯一的工作即找出第二階段的開機載入程式(GRUB),並將第一階段載入記憶體中。
F.2.1.2. 基於 UEFI 的 x86 系統
Unified Extensible Firmware Interface(UEFI)的設計如同 BIOS,用來控制開機程序(透過 boot services)並在系統韌體以及作業系統之間(透過 runtime services)提供一個介面。和 BIOS 不同的是,它擁有自己的架構、無須依賴 CPU,並且擁有自己的裝置驅動程式。UEFI 能掛載分割區,並讀取特定檔案系統。
當一部搭配了 UEFI 的 x86 系統啟動時,介面會搜尋系統儲存裝置,以找尋一個標籤為特定 globally unique identifier(GUID),並且被標記為 EFI System Partition(ESP)的分割區。此分割區包含了為 EFI 架構編譯的應用程式,並且可能包含了作業系統與工具軟體的開機載入程式。UEFI 系統包含了一個 EFI boot manager,它可藉由預設配置來啟動一部系統,或是提示使用者選擇欲啟動的作業系統。當(手動或自動)選擇了開機載入程式後,UEFI 會將它讀入記憶體中,並授予其開機程序的控制權。

Where did the comment section go?
Red Hat's documentation publication system recently went through an upgrade to enable speedier, more mobile-friendly content. We decided to re-evaluate our commenting platform to ensure that it meets your expectations and serves as an optimal feedback mechanism. During this redesign, we invite your input on providing feedback on Red Hat documentation via the discussion platform.