国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 系統(tǒng) > Linux > 正文

Linux啟動(dòng)引導(dǎo)程序GRUB加載內(nèi)核的流程

2024-08-27 23:56:12
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友
  在剛剛的啟動(dòng)過(guò)程中,我們已經(jīng)知道啟動(dòng)引導(dǎo)程序(Boot Loader,也就是 GRUB)會(huì)在啟動(dòng)過(guò)程中加載內(nèi)核,之后內(nèi)核才能取代 BIOS 接管啟動(dòng)過(guò)程。如果沒(méi)有啟動(dòng)引導(dǎo)程,那么內(nèi)核是不能被加載的。
 
  本節(jié),我們就來(lái)看看啟動(dòng)引導(dǎo)程序加載內(nèi)核的過(guò)程,當(dāng)然 initramfs 這個(gè)虛擬文件系統(tǒng)也是要靠啟動(dòng)引導(dǎo)程序調(diào)用的。在 CentOS 6.x 中,啟動(dòng)引導(dǎo)程序默認(rèn)是 GRUB,GRUB 是現(xiàn)在最為流行的啟動(dòng)引導(dǎo)程序,我們也用 GRUB 來(lái)說(shuō)明啟動(dòng)引導(dǎo)程序的作用。
 
  早期的 LILO 引導(dǎo)程序已經(jīng)不是很常見(jiàn)了,GRUB 相比來(lái)講有很多優(yōu)勢(shì),主要有:
 
  支持更多的文件系統(tǒng)。
 
  GRUB 的主程序可以直接在文件系統(tǒng)中查找內(nèi)核文件。
 
  在系統(tǒng)啟動(dòng)時(shí),可以利用 GRUB 的交互界面編輯和修改啟動(dòng)選項(xiàng)。
 
  可以動(dòng)態(tài)修改 GRUB 的配置文件,這樣在修改配置文件之后不需要重新安裝 GRUB,而只需重新啟動(dòng)就可以生效。
 
  GRUB加載內(nèi)核的過(guò)程
 
  Stage 1:執(zhí)行GRUB主程序
 
  第一階段是用來(lái)執(zhí)行 GRUB 主程序的,這個(gè)主程序必須放在啟動(dòng)區(qū)中(也就是 MBR 或者引導(dǎo)扇區(qū)中)。但是 MBR 太小了,所以只能安裝 GRUB 的最小的主程序,而不能安裝 GRUB 的相關(guān)配置文件。這個(gè)主程序主要是用來(lái)啟動(dòng) Stage 1.5 和 Stage 2 的。
 
  Stage 1.5:識(shí)別不同的文件系統(tǒng)
 
  Stage 2 比較大,只能放在文件系統(tǒng)中(分區(qū)),但是 Stage 1 不能識(shí)別不同的文件系統(tǒng),所以不能直接加載 Stage 2。這時(shí)需要先加載 Stage 1.5,由 Stage 1.5 來(lái)加載不同文件系統(tǒng)中的 Stage 2。
 
  還有一個(gè)問(wèn)題,難道 Stage 1.5 不是放在文件系統(tǒng)中的嗎?如果是,那么 Stage 1 同樣不能找到 Stage 1.5。其實(shí),Stage 1.5 還真沒(méi)有放在文件系統(tǒng)中,而是在安裝 GRUB 時(shí),直接安裝到緊跟 MBR 之后的 32KB 的空間中,這段硬盤(pán)空間是空白無(wú)用的,而且是沒(méi)有文件系統(tǒng)的,所以 Stage 1 可以直接讀取 Stage 1.5。讀取了 Stage 1.5 就能識(shí)別不同的文件系統(tǒng),才能加載 Stage 2。
 
  Stage 2:加載GRUB的配置文件
 
  Stage 2 階段主要就是加載 GRUB 的配置文件 /boot/grub/grub.conf,然后根據(jù)配置文件中的定義,加載內(nèi)核和虛擬文件系統(tǒng)。接下來(lái)內(nèi)核就可以接管啟動(dòng)過(guò)程,繼續(xù)自檢與加載硬件模塊了。

GRUB 的作用有以下幾個(gè):
 
  加載操作系統(tǒng)的內(nèi)核;
 
  擁有一個(gè)可以讓用戶(hù)選擇的的菜單,來(lái)選擇到底啟動(dòng)哪個(gè)系統(tǒng);
 
  可以調(diào)用其他的啟動(dòng)引導(dǎo)程序,來(lái)實(shí)現(xiàn)多系統(tǒng)引導(dǎo)。
 
  按照啟動(dòng)流程,BIOS 在自檢完成后,會(huì)到第一個(gè)啟動(dòng)設(shè)備的 MBR 中讀取 GRUB。在 MBR 中用來(lái)放置啟動(dòng)引導(dǎo)程序的空間只有 446 Byte,那么 GRUB 可以放到這里嗎?答案是空間不夠,GRUB 的功能非常強(qiáng)大,MBRM 空間是不夠使用的。那么 Linux 的解決辦法是把 GRUB 的程序分成了三個(gè)階段來(lái)執(zhí)行。
 

(編輯:武林網(wǎng))

發(fā)表評(píng)論 共有條評(píng)論
用戶(hù)名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 漳州市| 中超| 延安市| 林西县| 岳普湖县| 吉首市| 句容市| 丰原市| 沅陵县| 荥阳市| 萨嘎县| 怀安县| 清镇市| 汉阴县| 石台县| 宜城市| 凌云县| 石楼县| 攀枝花市| 濮阳市| 夏邑县| 神农架林区| 大埔区| 株洲市| 天祝| 政和县| 湘西| 陕西省| 丰顺县| 永善县| 安仁县| 壶关县| 裕民县| 湟中县| 汝阳县| 辉县市| 夏河县| 黔西县| 武鸣县| 贺州市| 灵石县|