Linux啟動探究文章分類:操作系統(tǒng) 關(guān)鍵字: linux 啟動1.系統(tǒng)初始化
a.初始化流程 POST->MBR->GRUB->VMLinuz->Init->其他進(jìn)程 POST:BIOS加電自檢,啟動設(shè)備選擇,讀取和執(zhí)行第一啟動設(shè)備 MBR:啟動盤的第一扇區(qū)(446IPL+64分區(qū)表+2 magic number)中前446字節(jié), 由于空間有限,無法完成復(fù)雜的啟動, 一般將高級啟動任務(wù)交給GRUB GRUB:不受大小限制,有菜單,圖形化和簡單交互 VMLinuz:操作系統(tǒng)核心 Init:所有進(jìn)程的祖先 2.啟動過程細(xì)節(jié): BIOS自檢成功,將啟動盤的MBR中的啟動程序復(fù)制到內(nèi)存中,執(zhí)行該啟動程序(stage1), 接著執(zhí)行/boot/grub目錄下相應(yīng)文件系統(tǒng)類型的stage1_5(Linux對應(yīng)的文件為 e2fs_stage1_5,這里裝載文件系統(tǒng)為之后核心讀取RAM盤作準(zhǔn)備), 然后是stage2(引導(dǎo)分區(qū)裝載),GRUB包含豐富的啟動設(shè)置,以菜單的方式指向核心和RAM文件系統(tǒng),通過stage2,Linux加載核心,讀取initrd(RAM盤,包含縮略的文件系統(tǒng)和必要的模塊,通過將模塊編譯在RAM盤中,縮小了核心大小,同時(shí)為了配置的方便),為加載真正的文件系統(tǒng)做準(zhǔn)備。 |
|
|