Linux開機啟動過程的五大步驟
Linux開機啟動過程的五大步驟
我們都知道,Linux系統(tǒng)的啟動是非常快的,那么Linux系統(tǒng)在啟動過程中都加載了哪些內(nèi)容呢?下面學習啦小編就給大家介紹下Linux系統(tǒng)開機啟動的詳細過程,以便你有個詳細的了解。
按下電源按鈕的直到歡迎頁出來之后,linux總共做的事可以分為五步來完成。
1、 BIOS加電自檢:
加電自檢,檢測硬件設(shè)備。然后按照cmos上面的順序來搜索處在活動狀態(tài)下的可以引導的設(shè)備??梢允枪怛?qū)、軟盤、USB等。
2、 加載主引導加載程序(MBR):
主引導程序是一個512字節(jié)的映像。包含一點機器碼還有一個小的分區(qū)。
主引導程序的任務(wù)就是查找并且加載處在硬盤分區(qū)上的次引導程序。通過分區(qū)表查找活動分區(qū),并將處在活動分區(qū)的次引導加載程序讀取到內(nèi)存里面運行。
3、 加載次引導記載程序(GRUB)
次引導加載程序只要就是加載linux內(nèi)核。
上一階段結(jié)束之后次引導加載程序就會在內(nèi)存里面跑起來。就會出現(xiàn)GRUB圖形界面,讓用戶選擇加載什么樣的內(nèi)核。
4、 linux內(nèi)核映像:
用戶選擇要加載的內(nèi)核之后,次引導加載程序(GRUB)就會根據(jù)/boot/grub.conf配置文件中所設(shè)置的信息,從/boot/所在的分區(qū)上讀取Linux內(nèi)核映像,然后把內(nèi)核映像加載到內(nèi)存中并把控制權(quán)交給Linux內(nèi)核。
linux內(nèi)核獲得控制權(quán)之后開始干自己的事
1)、 檢測硬件
2)、 解壓縮自己并安裝必要驅(qū)動
3)、 初始化與文件系統(tǒng)相關(guān)的虛擬設(shè)備,LVM或RAID
4)、 裝載根文件系統(tǒng),掛在根目錄下面
5)、 完成之后,linux在進程空間里面加載init程序,下面輪到init干活
5、 init進程
init是所有進程的發(fā)起者和控制者,所有的進程都由此衍生。
init進程獲得控制權(quán)之后,它會執(zhí)行/etc/rc.d/rc.sysinit腳本,根據(jù)里面的代碼設(shè)置環(huán)境變量、網(wǎng)絡(luò)、啟動swap、檢查并掛載文件系統(tǒng)、執(zhí)行其他初始化工作。
至此,linux啟動完成。
我們稍微總結(jié)一下:
首先是BIOS加電自檢,之后加載主引導加載程序、次引導加載程序,最后就是linux內(nèi)核映像,完了把控制權(quán)交給init進程,完成初始化工作。
swap分區(qū)是什么?
類似windows系統(tǒng)中的虛擬內(nèi)存,當物理內(nèi)存不夠用的時候,使用swap中的內(nèi)存。
上面就是Linux系統(tǒng)開機啟動的詳細過程的介紹了,平時你在開機的時候可能沒有認真注意,其實Linux系統(tǒng)在開機的時候做了許多事。