linux初探之linux啟動(基礎)
linux作業系統現在廣泛應用於各種伺服器。它的啟動總共可以分為9個步驟。
第一步:
bios自檢:
也稱上電自檢
(post,power on self test)。 指計算機系統
,接通電源,自動執行主機板coms晶元
固化的程式(bios程式)的行為,包括對cpu、系統主機板、基本記憶體、擴充套件記憶體
、系統rom bios等器件的測試。如發現錯誤,給操作者提示或警告。簡化或加快該過程,可使系統能夠快速啟動
。第二步:
讀取mbr
在已經設定從硬碟啟動的情況下(也可能從cd-rom,軟盤,usb啟動這裡是從硬碟啟動的情況)讀取mbr區域(引導扇區)這個區域共有512個位元組,其中446個位元組儲存著作業系統的啟動程式。引導啟動我們需要的作業系統就是我們常說的grub。
第三步:
bootloader:
執行乙個引導裝載程式bootloader,通過這個程式我們可以初始化硬體裝置、建立記憶體空間的對映圖,從而將系統的軟硬體環境帶到乙個合適的狀 態,以便為最終呼叫作業系統核心做好一切準備,通常,bootloade:是嚴重地依賴於硬體而實現的,不同體系結構的系統存在著不同的boot loader。
第四步:
載入核心
第五步:
讀取/etc/inittab進行初始化工作。
核心核心被載入後,第乙個執行的程式便是/sbin/init,該檔案會讀取/etc/inittab檔案,並依據此檔案來進行初始化工作。
其實/etc/inittab檔案最主要的作用就是設定linux的執行等級,其設定形式是「:id:5:initdefault:」,這就表明linux需要執行在等級5上。linux的執行等級設定如下:
0:關機
1:單使用者模式
2:無網路支援的多使用者模式
3:有網路支援的多使用者模式
4:保留,未使用
5:有網路支援有x-window支援的多使用者模式
6:重新引導系統,即重啟
核心初始化各種硬體裝置
第六步:
執行rc.sysinit
init程序執行rc.sysinit
在設定了執行等級後,linux系統執行的第乙個使用者層檔案就是/etc/rc.d/rc.sysinit指令碼程式,它做的工作非常多,包括設定path、設定網路配置(/etc/sysconfig/network)、啟動swap分割槽、設定/proc
第六步:根據執行級別的不同,系統會執行rc0.d到rc6.d中的相應的指令碼程式,來完成相應的初始化工作和啟動相應的服務。
第七步:
具體是依據/etc/modules.conf檔案或/etc/modules.d目錄下的檔案來裝載核心模組
第八步:
init執行run-level的各種scripts,啟動服務
根據執行級別的不同,系統會執行rc0.d到rc6.d中的相應的指令碼程式,來完成相應的初始化工作和啟動相應的服務。
第九步:
init執行/etc/rc.d/rc.local
載入使用者自己設定的一些引數,具體參照自己個人設定。
最後,執行/bin/login程式,進入登入狀態
Linux開機過程
參考 linux開機過程 linux啟動流程 計算機是如何啟動的 每個硬碟最多有乙個mbr,這個mbr有512bytes,以0x55開始,0xaa結束。mbr分為446bytes與64bytes,前446bytes是一些開機的資訊,後64bytes是分割槽表資訊,每個分割槽有16bytes,所以最多...
Linux開機過程
linux初探之linux啟動 基礎 linux作業系統現在廣泛應用於各種伺服器。它的啟動總共可以分為9個步驟。第一步 bios自檢 也稱上電自檢 post,power on self test 指計算機系統,接通電源,自動執行主機板coms晶元固化的程式 bios程式 的行為,包括對cpu 系統主...
linux主機開機過程
linux主機開機過程 1,計算機通電後,開始讀取bios並進行主機的自我測試 2,通過bios取得第乙個可開機裝置,讀取主要開機區 mbr 取得啟動裝載程式 3,通過啟動裝載程式的設定,取得核心並載入記憶體且監測系統硬體 4,核心主動呼叫init程序 5,init程序開始執行系統初始化 etc r...