天天看點

系統開機過程

系統開機過程

  首先,按下電源時開始上電自檢即POST,是根據主機闆上CMOS中

的BIOS檢查周邊的硬體裝置的健康狀況,如:主機闆,記憶體,

顯示卡,CPU等。

  若正常,BIOS開始初始化,在BIOS裡有啟動次序,就是說在

系統啟動時先啟動哪些有一定的優先級,是根據BOOT SEQ

判定,然後加載對應儲存設備的MBR。

  硬碟上第0磁盤的一個扇區被稱為RMB,MBR裡面最重要的是

bootloader,它是一段程式很小446個位元組,但在Linux裡開機

引導界面還有圖形還可以引導很多作業系統,那是因為MBR分

成三段,bootloader僅放第一個段,第一段什麼也不做隻用

引導第二段,在系統啟動時bootloader預設會找到辨別活動

分區的那個分區加載作業系統的核心,如果加載的到就把核心

讀到記憶體中,在記憶體中展開并讓它運作起來,核心加載後就開

始核心的初始化Kernel initalization,核心會在實體記憶體中

展開并運作起來。

  若完成後bootloader把權利交給核心,此時核心就擁有整

個系統的控制權利,核心獲得控制權後加載外圍裝置的驅動并

進行初始化,但核心很小,固化的驅動很少,但磁盤啟動是必

不可少的,然後以隻讀的方式加載根檔案系統,核心加載後

運作的第一個程式是/sbin/init,該檔案會讀取/etc/inittab

檔案,并依據此檔案來初始化工作。

  /etc/inittab檔案最主要的作用是設定Linux的運作級别,

有7個運作級别,

  0:關機

  1:單使用者模式,不需要輸入賬戶密碼,直接登入root使用者,

很多服務不啟用,一般用于修複,維護模式,一般用S或或

single辨別

  2:多使用者模式,不啟動檔案服務

  3:完全多使用者模式,正常模式,預設非圖形界面,可用作

預設級别

  4:預留,沒有被使用

  5:完全多使用者模式,正常模式,啟動圖形界面Xil

  6:重新開機reboot

  在等級設定完成之後,Linux系統執行第一個使用者層檔案

/etc/rc.d/rc.sysinit腳本程式,它可以設定網絡配置,設定

/proc,啟動/swap分區等,所有的啟動流程都有。/etc/rc.d/rc

會利用/etc/rc.d/rc[0-6].d/目錄下所有腳本啟動或停止服務,

K表示kill,S表示start,數字越小優先級越高

/etc/rc.local(/etc/rc.d/rc.local)提醒使用者這是最後一個

運作的腳本,例改變主機名

繼續閱讀