Linux系統啓動流程

本博客已遷往http://coredumper.cn


Linux系統啓動流程(以CentOS爲例):


1. 加載BIOS,獲得主機的硬件信息並進行開機自檢,然後根據設置取得第一個可啓動的設備(如硬盤)。
2. 執行第一個可啓動設備內MBR(主引導分區)的Boot Loader(如grub)。
3. 根據Boot Loader的設置加載kernel和initrd(虛擬文件系統),kernel開始檢測硬件並加載內核模塊(如驅動程序),有些內核模塊需要通過initrd才能加載,例如SATA磁盤的驅動程序。
4. kernel調用init進程,init會取得run-level,通常run-level的默認值爲3(純文本模式)或者5(X Window模式)。
5. init執行/etc/rc.d/rc.sysinit文件來設置系統環境。
6. init啓動run-level指定的各個服務(daemon進程)。
7. init執行/etc/rc.d/rc.local文件,可以將用戶自定義開機啓動命令寫入該文件。
8. init執行終端機模擬程序mingetty來啓動login進程,等待用戶登錄。
發佈了85 篇原創文章 · 獲贊 9 · 訪問量 14萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章