Linux載入流程筆記

2021-06-22 12:56:51 字數 1288 閱讀 7142

bios, 啟動自我測試與 mbr

我們必須要以乙個啟動管理程式來處理核心檔案載入 (load) 的問題,因此這個啟動管理程式就被稱為 boot loader 了。那這個boot loader 程式安裝在**呢?就在啟動裝置的第乙個磁區 (sector) 內,也就是我們一直談到的 mbr (master boot record, 主要啟動記錄區)。

boot loader 的功能

boot loader主要的功能如下:

圖 1.2.2、 啟動管理程式的選單功能與控制權轉交功能示意圖

而最終 boot loader 的功能就是『載入 kernel 檔案』啦! !

[root@www ~]# ls --format=single-column -f /boot

config-2.6.18-92.el5 <==此版本核心被編譯時選擇的功能與模組配置檔

grub/ <==就是啟動管理程式 grub 相關資料目錄

initrd-2.6.18-92.el5.img

<==虛擬檔案系統檔!

system.map-2.6.18-92.el5 <==核心功能放置到記憶體位址的對應表

vmlinuz-2.6.18-92.el5

<==就是核心檔案啦!最重要者!

第一支程式 init 及配置檔/etc/inittab 與 runlevel

在核心載入完畢、進行完硬體偵測與驅動程式載入後,此時你的主機硬體應該已經準備就緒了 (ready) ,此時核心會主動的呼叫第一支程式,那就是 /sbin/init 羅。這也是為啥第十七章的 pstree 命令介紹時,你會發現 init 的 pid 號碼是一號啦。/sbin/init 最主要的功能就是準備軟體執行的環境,包括系統的主機名稱、網路配置、語系處理、檔案系統格式及其他服務的啟動等。而所有的動作都會透過 init 的配置檔,亦即是 /etc/inittab 來規劃,而 inittab 內還有乙個很重要的配置專案,那就是預設的 runlevel (啟動執行等級) 啦!

那麼什麼是 run level 呢?他有什麼功用啊?其實很簡單啦, linux 就是藉由配置 run level 來規定系統使用不同的服務來啟動,讓 linux 的使用環境不同。基本上,依據有無網路與有無 x window而將 run level 分為 7 個等級,分別是:

Linux核心載入全流程

無論是linux還是windows,在加電後的第一步都是先執行bios basic input output system 程式 不知道是不是所以的電腦系統都是如此。bios儲存在主機板上的乙個non volatile 即非易失 儲存器,如prom,eprom,flash等。以前的bios一般都是唯...

Zen cart 載入流程

根據 session language 設定主語言目錄 從 includes modules page page name 目錄載入全部的 header php.php 檔案 載入 html header.php 這是乙個通用的模板檔案 載入 main template vars.php 這是乙個通...

cakephp載入流程

2 如果不是也會請求到那個檔案,所以web root就是入口檔案 入口檔案定義了全域性變數,定義了很多路徑相關的資訊,比如 web root css這裡實在是太多了 3 載入三個檔案 require cake basics.php require cake error ds exceptions.p...