計算機的開機啟動原理

第一階段:BIOS

上個世紀70年代初擒贸,“只讀內(nèi)存”(read-only memory臀晃,縮寫為ROM)發(fā)明,開機程序被刷入ROM芯片介劫,計算機通電后徽惋,第一件事就是讀取它。

計算機的開機啟動原理-馬海祥博客

這塊芯片里的程序叫做“基本輸出輸入系統(tǒng)”(Basic Input/Output System)座韵,簡稱為BIOS险绘。

1、硬件自檢

BIOS程序首先檢查誉碴,計算機硬件能否滿足運行的基本條件宦棺,這叫做“硬件自檢”(Power-On Self-Test),縮寫為POST翔烁。

如果硬件出現(xiàn)問題渺氧,主板會發(fā)出不同含義的蜂鳴,啟動中止蹬屹。如果沒有問題侣背,屏幕就會顯示出CPU、內(nèi)存慨默、硬盤等信息贩耐。

計算機的開機啟動原理-馬海祥博客

2、啟動順序

硬件自檢完成后厦取,BIOS把控制權(quán)轉(zhuǎn)交給下一階段的啟動程序潮太。

這時,BIOS需要知道虾攻,“下一階段的啟動程序”具體存放在哪一個設備铡买。也就是說,BIOS需要有一個外部儲存設備的排序霎箍,排在前面的設備就是優(yōu)先轉(zhuǎn)交控制權(quán)的設備丁鹉。這種排序叫做“啟動順序”(Boot Sequence)稠项。

打開BIOS的操作界面褂始,里面有一項就是“設定啟動順序”谓罗。

計算機的開機啟動原理-馬海祥博客

第二階段:主引導記錄

BIOS按照“啟動順序”,把控制權(quán)轉(zhuǎn)交給排在第一位的儲存設備顶别。

這時谷徙,計算機讀取該設備的第一個扇區(qū),也就是讀取最前面的512個字節(jié)驯绎。如果這512個字節(jié)的最后兩個字節(jié)是0x55和0xAA完慧,表明這個設備可以用于啟動;如果不是剩失,表明設備不能用于啟動屈尼,控制權(quán)于是被轉(zhuǎn)交給"啟動順序"中的下一個設備蛤织。

這最前面的512個字節(jié),就叫做“主引導記錄”(Master boot record鸿染,縮寫為MBR)。

1乞巧、主引導記錄的結(jié)構(gòu)

“主引導記錄”只有512個字節(jié)涨椒,放不了太多東西。它的主要作用是绽媒,告訴計算機到硬盤的哪一個位置去找操作系統(tǒng)蚕冬。

主引導記錄由三個部分組成:

(1)、第1-446字節(jié):調(diào)用操作系統(tǒng)的機器碼是辕。

(2)囤热、第447-510字節(jié):分區(qū)表(Partition table)。

(3)获三、第511-512字節(jié):主引導記錄簽名(0x55和0xAA)旁蔼。

其中,第二部分“分區(qū)表”的作用疙教,是將硬盤分成若干個區(qū)棺聊。

2、分區(qū)表

硬盤分區(qū)有很多好處贞谓∠夼澹考慮到每個區(qū)可以安裝不同的操作系統(tǒng),“主引導記錄”因此必須知道將控制權(quán)轉(zhuǎn)交給哪個區(qū)裸弦。

分區(qū)表的長度只有64個字節(jié)祟同,里面又分成四項,每項16個字節(jié)理疙。所以晕城,一個硬盤最多只能分四個一級分區(qū),又叫做“主分區(qū)”沪斟。

每個主分區(qū)的16個字節(jié)广辰,由6個部分組成:

(1)、第1個字節(jié):如果為0x80主之,就表示該主分區(qū)是激活分區(qū)择吊,控制權(quán)要轉(zhuǎn)交給這個分區(qū)。四個主分區(qū)里面只能有一個是激活的槽奕。

(2)几睛、第2-4個字節(jié):主分區(qū)第一個扇區(qū)的物理位置(柱面、磁頭粤攒、扇區(qū)號等等)所森。

(3)囱持、第5個字節(jié):主分區(qū)類型。

(4)焕济、第6-8個字節(jié):主分區(qū)最后一個扇區(qū)的物理位置纷妆。

(5)、第9-12字節(jié):該主分區(qū)第一個扇區(qū)的邏輯地址晴弃。

(6)掩幢、第13-16字節(jié):主分區(qū)的扇區(qū)總數(shù)。

最后的四個字節(jié)(主分區(qū)的扇區(qū)總數(shù))上鞠,決定了這個主分區(qū)的長度际邻。也就是說,一個主分區(qū)的扇區(qū)總數(shù)最多不超過2的32次方芍阎。

如果每個扇區(qū)為512個字節(jié)世曾,就意味著單個分區(qū)最大不超過2TB。再考慮到扇區(qū)的邏輯地址也是32位谴咸,所以單個硬盤可利用的空間最大也不超過2TB轮听。如果想使用更大的硬盤,只有2個方法:一是提高每個扇區(qū)的字節(jié)數(shù)岭佳,二是增加扇區(qū)總數(shù)蕊程。

第三階段:硬盤啟動

這時,計算機的控制權(quán)就要轉(zhuǎn)交給硬盤的某個分區(qū)了驼唱,這里又分成三種情況藻茂。

1、情況A:卷引導記錄

上一節(jié)提到玫恳,四個主分區(qū)里面辨赐,只有一個是激活的。計算機會讀取激活分區(qū)的第一個扇區(qū)京办,叫做“卷引導記錄”(Volume boot record掀序,縮寫為VBR)。

“卷引導記錄”的主要作用是惭婿,告訴計算機不恭,操作系統(tǒng)在這個分區(qū)里的位置。然后财饥,計算機就會加載操作系統(tǒng)了换吧。

2、情況B:擴展分區(qū)和邏輯分區(qū)

隨著硬盤越來越大钥星,四個主分區(qū)已經(jīng)不夠了沾瓦,需要更多的分區(qū)。但是,分區(qū)表只有四項贯莺,因此規(guī)定有且僅有一個區(qū)可以被定義成“擴展分區(qū)”(Extended partition)风喇。

所謂“擴展分區(qū)”,就是指這個區(qū)里面又分成多個區(qū)缕探。這種分區(qū)里面的分區(qū)魂莫,就叫做“邏輯分區(qū)”(logical partition)。

計算機先讀取擴展分區(qū)的第一個扇區(qū)爹耗,叫做“擴展引導記錄”(Extended boot record豁鲤,縮寫為EBR)。它里面也包含一張64字節(jié)的分區(qū)表鲸沮,但是最多只有兩項(也就是兩個邏輯分區(qū))。

計算機接著讀取第二個邏輯分區(qū)的第一個扇區(qū)锅论,再從里面的分區(qū)表中找到第三個邏輯分區(qū)的位置讼溺,以此類推,直到某個邏輯分區(qū)的分區(qū)表只包含它自身為止(即只有一個分區(qū)項)最易。因此怒坯,擴展分區(qū)可以包含無數(shù)個邏輯分區(qū)。

但是藻懒,似乎很少通過這種方式啟動操作系統(tǒng)剔猿。如果操作系統(tǒng)確實安裝在擴展分區(qū),一般采用下一種方式啟動嬉荆。

3归敬、情況C:啟動管理器

在這種情況下,計算機讀取“主引導記錄”前面446字節(jié)的機器碼之后鄙早,不再把控制權(quán)轉(zhuǎn)交給某一個分區(qū)汪茧,而是運行事先安裝的“啟動管理器”(boot loader),由用戶選擇啟動哪一個操作系統(tǒng)限番。

Linux環(huán)境中舱污,目前最流行的啟動管理器是Grub。

計算機的開機啟動原理-馬海祥博客

第四階段:操作系統(tǒng)

控制權(quán)轉(zhuǎn)交給操作系統(tǒng)后弥虐,操作系統(tǒng)的內(nèi)核首先被載入內(nèi)存扩灯。

以Linux系統(tǒng)為例,先載入/boot目錄下面的kernel霜瘪。內(nèi)核加載成功后珠插,第一個運行的程序是/sbin/init。它根據(jù)配置文件(Debian系統(tǒng)是/etc/initab)產(chǎn)生init進程颖对。這是Linux啟動后的第一個進程丧失,pid進程編號為1,其他進程都是它的后代惜互。

然后布讹,init線程加載系統(tǒng)的各個模塊琳拭,比如窗口程序和網(wǎng)絡程序,直至執(zhí)行/bin/login程序描验,跳出登錄界面白嘁,等待用戶輸入用戶名和密碼。

至此膘流,全部啟動過程完成絮缅。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市呼股,隨后出現(xiàn)的幾起案子耕魄,更是在濱河造成了極大的恐慌,老刑警劉巖彭谁,帶你破解...
    沈念sama閱讀 212,542評論 6 493
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件吸奴,死亡現(xiàn)場離奇詭異,居然都是意外死亡缠局,警方通過查閱死者的電腦和手機则奥,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,596評論 3 385
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來狭园,“玉大人读处,你說我怎么就攤上這事〕” “怎么了罚舱?”我有些...
    開封第一講書人閱讀 158,021評論 0 348
  • 文/不壞的土叔 我叫張陵,是天一觀的道長绎谦。 經(jīng)常有香客問我馆匿,道長,這世上最難降的妖魔是什么燥滑? 我笑而不...
    開封第一講書人閱讀 56,682評論 1 284
  • 正文 為了忘掉前任渐北,我火速辦了婚禮,結(jié)果婚禮上铭拧,老公的妹妹穿的比我還像新娘赃蛛。我一直安慰自己,他們只是感情好搀菩,可當我...
    茶點故事閱讀 65,792評論 6 386
  • 文/花漫 我一把揭開白布呕臂。 她就那樣靜靜地躺著,像睡著了一般肪跋。 火紅的嫁衣襯著肌膚如雪歧蒋。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,985評論 1 291
  • 那天,我揣著相機與錄音谜洽,去河邊找鬼萝映。 笑死,一個胖子當著我的面吹牛阐虚,可吹牛的內(nèi)容都是我干的序臂。 我是一名探鬼主播,決...
    沈念sama閱讀 39,107評論 3 410
  • 文/蒼蘭香墨 我猛地睜開眼实束,長吁一口氣:“原來是場噩夢啊……” “哼奥秆!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起咸灿,我...
    開封第一講書人閱讀 37,845評論 0 268
  • 序言:老撾萬榮一對情侶失蹤构订,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后避矢,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體悼瘾,經(jīng)...
    沈念sama閱讀 44,299評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,612評論 2 327
  • 正文 我和宋清朗相戀三年谷异,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片锦聊。...
    茶點故事閱讀 38,747評論 1 341
  • 序言:一個原本活蹦亂跳的男人離奇死亡歹嘹,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出孔庭,到底是詐尸還是另有隱情尺上,我是刑警寧澤,帶...
    沈念sama閱讀 34,441評論 4 333
  • 正文 年R本政府宣布圆到,位于F島的核電站怎抛,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏芽淡。R本人自食惡果不足惜马绝,卻給世界環(huán)境...
    茶點故事閱讀 40,072評論 3 317
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望挣菲。 院中可真熱鬧富稻,春花似錦、人聲如沸白胀。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,828評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽或杠。三九已至哪怔,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背认境。 一陣腳步聲響...
    開封第一講書人閱讀 32,069評論 1 267
  • 我被黑心中介騙來泰國打工胚委, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人元暴。 一個月前我還...
    沈念sama閱讀 46,545評論 2 362
  • 正文 我出身青樓篷扩,卻偏偏與公主長得像,于是被迫代替她去往敵國和親茉盏。 傳聞我的和親對象是個殘疾皇子鉴未,可洞房花燭夜當晚...
    茶點故事閱讀 43,658評論 2 350