面試官:你來說說 Linux 是如何啟動的?
Linux 是怎么啟動的?
幾乎每個軟件工程師都用過 Linux,但并不是每個人都知道它的啟動過程。讓我們深入了解一下。
下圖給我們展示了具體步驟。
第 1 步
當我們打開電源時,BIOS(基本輸入/輸出系統(tǒng),Basic Input/Output System)或 UEFI(統(tǒng)一可擴展固件接口,Unified Extensible Firmware Interface)固件會從非易失性內存中加載,并執(zhí)行 POST(開機自檢,Power On Self Test)。
第 2 步
BIOS/UEFI 檢測連接到系統(tǒng)的設備,包括 CPU、內存和存儲設備。
第 3 步
選擇一個啟動設備來啟動操作系統(tǒng)。可以是硬盤、網(wǎng)絡服務器或 CD ROM。
第 4 步
BIOS/UEFI 運行引導加載器 (GRUB),它提供了一個選擇操作系統(tǒng)或內核功能的菜單。
第 5 步
內核準備就緒后,我們現(xiàn)在切換到用戶空間。內核啟動 systemd 作為第一個用戶空間進程,負責管理進程和服務、探測所有剩余硬件、掛載文件系統(tǒng)并運行桌面環(huán)境。
第 6 步
系統(tǒng)啟動時,systemd 默認激活 default.target 單元。同時還會執(zhí)行其他分析單元。
第 7 步
系統(tǒng)運行一組啟動腳本并配置環(huán)境。
第 8 步
用戶將看到一個登錄窗口。系統(tǒng)現(xiàn)已準備就緒。























