新聞中心
linux 是一個可安裝在普通PC機上面的 多用戶、多任務(wù)的類Unix操作系統(tǒng)。當(dāng)用戶按下電腦開機鍵,系統(tǒng)會進入啟動序列,并在一定程度上有規(guī)律性的按照某種順序啟動。Linux啟動順序主要涉及硬件組件自檢(BIOS),讀取引導(dǎo)程序(bootloader),建立內(nèi)核和根文件系統(tǒng)等步驟,具體的啟動過程如下:

1. 引導(dǎo)組件自檢(BIOS),確定計算機的硬件組件,檢測內(nèi)存,I/O設(shè)備等信息;
2. 讀取引導(dǎo)程序(bootloader),用來加載Linux系統(tǒng)內(nèi)核,bootloader可以支持多種操作系統(tǒng),典型的bootloader有g(shù)rub、grub2等;
3. 加載和緩沖內(nèi)核,使用預(yù)先設(shè)定好的參數(shù);
4. 創(chuàng)建根文件系統(tǒng),并加載其中的基本程序;
5. 初始化特定的定義參數(shù),包括網(wǎng)絡(luò)信息,鍵盤布局,控制臺信息等;
6. 掛載文件系統(tǒng),讀取各個文件系統(tǒng)的位置,把文件系統(tǒng)加載到內(nèi)存中,系統(tǒng)完成檢測;
7. 開始啟動服務(wù),初始化一系列準備就緒的服務(wù);
8. 激活用戶環(huán)境,如登錄窗口或者shell終端等,完成開機啟動過程。
Linux系統(tǒng)完成啟動后,也可以去查看啟動過程的錯誤信息,以針對不同的問題進行分析解決。內(nèi)核啟動過程的細節(jié)較多,有很多內(nèi)核代碼用于處理啟動過程中涉及的硬件和軟件設(shè)置,部分關(guān)鍵的代碼如下:
/* start_kernel()函數(shù)用于啟動Linux內(nèi)核 */
void __INIT start_kernel(void)
{
…
setup_arch(&command_line);
…
init_IRQ();
init_timers();
init_sched_fair_class();
init_sched_features();
sched_init();
do_pre_smp_initcalls();
lockup_detector_init();
…
}
Linux系統(tǒng)啟動順序描述了開機過程及其全過程,用戶如果日常遇到系統(tǒng)開機問題,可以通過了解開機順序,掌握相關(guān)知識,找到并解決它們。
成都網(wǎng)站設(shè)計制作選創(chuàng)新互聯(lián),專業(yè)網(wǎng)站建設(shè)公司。
成都創(chuàng)新互聯(lián)10余年專注成都高端網(wǎng)站建設(shè)定制開發(fā)服務(wù),為客戶提供專業(yè)的成都網(wǎng)站制作,成都網(wǎng)頁設(shè)計,成都網(wǎng)站設(shè)計服務(wù);成都創(chuàng)新互聯(lián)服務(wù)內(nèi)容包含成都網(wǎng)站建設(shè),小程序開發(fā),營銷網(wǎng)站建設(shè),網(wǎng)站改版,服務(wù)器托管租用等互聯(lián)網(wǎng)服務(wù)。
分享標題:Linux 啟動順序:掌握系統(tǒng)啟動知識(linux加載順序)
文章源于:http://www.dlmjj.cn/article/dpsogce.html


咨詢
建站咨詢
