PC操作系統(tǒng)啟動(dòng)過程_第1頁(yè)
PC操作系統(tǒng)啟動(dòng)過程_第2頁(yè)
PC操作系統(tǒng)啟動(dòng)過程_第3頁(yè)
PC操作系統(tǒng)啟動(dòng)過程_第4頁(yè)
PC操作系統(tǒng)啟動(dòng)過程_第5頁(yè)
已閱讀5頁(yè),還剩23頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、PC 32位操作系統(tǒng)啟動(dòng)過程朱韜朱韜2015-01-202015-01-20課程內(nèi)容lPCPC系統(tǒng)啟動(dòng)模式歷史系統(tǒng)啟動(dòng)模式歷史lPCPC主機(jī)硬件結(jié)構(gòu)主機(jī)硬件結(jié)構(gòu)lBIOSBIOS主要功能主要功能l相關(guān)概念相關(guān)概念lPCPC系統(tǒng)物理地址空間(系統(tǒng)物理地址空間(X86 32X86 32位)位)lPCPC保護(hù)模式內(nèi)存地址轉(zhuǎn)換保護(hù)模式內(nèi)存地址轉(zhuǎn)換lMBRMBRlDOSDOS啟動(dòng)啟動(dòng)l操作系統(tǒng)啟動(dòng)操作系統(tǒng)啟動(dòng)l操作系統(tǒng)啟動(dòng)最終結(jié)果操作系統(tǒng)啟動(dòng)最終結(jié)果l好書推薦好書推薦PC系統(tǒng)啟動(dòng)模式歷史lDOSDOS時(shí)代(時(shí)代(它不能算是真正的操作系統(tǒng)它不能算是真正的操作系統(tǒng))uMAC和磁帶(都以為是喬布斯最先實(shí)現(xiàn)的)

2、uPC和軟盤 (IBM實(shí)現(xiàn),這時(shí)還沒微軟什么事)uPC、BIOS、MBR和硬盤(也沒微軟什么事)lPCPC操作系統(tǒng)時(shí)代操作系統(tǒng)時(shí)代uPC、BIOS、MBR、硬盤和單個(gè)kerneluPC、BIOS、MBR、硬盤、bootloader和多個(gè)kernellPCPC、EFI EFI / / UEFIUEFI、GUIDGUID、storagestorage、bootloaderbootloader和多個(gè)操作和多個(gè)操作系統(tǒng)環(huán)境系統(tǒng)環(huán)境PC主機(jī)硬件結(jié)構(gòu)90后00后BIOS主要功能l自診自診斷程斷程序:通過讀取序:通過讀取CMOS RAMCMOS RAM中的內(nèi)容識(shí)別硬件配置,并對(duì)中的內(nèi)容識(shí)別硬件配置,并對(duì)其其

3、進(jìn)行自檢和初始化進(jìn)行自檢和初始化lCMOSCMOS設(shè)置設(shè)置程序:引導(dǎo)過程中,用特殊熱鍵啟動(dòng),進(jìn)行設(shè)置后,程序:引導(dǎo)過程中,用特殊熱鍵啟動(dòng),進(jìn)行設(shè)置后,存存入入CMOS RAMCMOS RAM中中l(wèi)系統(tǒng)系統(tǒng)自舉自舉裝載程序:在自檢成功后將磁盤相對(duì)裝載程序:在自檢成功后將磁盤相對(duì)0 0道道0 0扇區(qū)上扇區(qū)上MBRMBR的的引導(dǎo)程序裝入內(nèi)存,讓其運(yùn)行以裝入操作系統(tǒng)(引導(dǎo)程序裝入內(nèi)存,讓其運(yùn)行以裝入操作系統(tǒng)(歷史原因很復(fù)歷史原因很復(fù)雜雜)l主要主要I/OI/O設(shè)備的驅(qū)動(dòng)程序和中斷服務(wù):由于設(shè)備的驅(qū)動(dòng)程序和中斷服務(wù):由于BIOSBIOS直接和系統(tǒng)硬件直接和系統(tǒng)硬件資源打交道,因此總是針對(duì)某一類型的硬件系

4、統(tǒng),而各種硬件資源打交道,因此總是針對(duì)某一類型的硬件系統(tǒng),而各種硬件系系統(tǒng)又各有不同,所以存在各種不同種類的統(tǒng)又各有不同,所以存在各種不同種類的BIOSBIOS,隨著硬件技術(shù),隨著硬件技術(shù)的的發(fā)展,同一種發(fā)展,同一種BIOSBIOS也先后出現(xiàn)了不同的版本,也先后出現(xiàn)了不同的版本,新版本的新版本的BIOSBIOS比比起起老版本來說,功能更強(qiáng)(經(jīng)典廢話)老版本來說,功能更強(qiáng)(經(jīng)典廢話)最煩人的概念l實(shí)模式和保護(hù)模式實(shí)模式和保護(hù)模式 (兼容是個(gè)政治問題兼容是個(gè)政治問題)l物理存儲(chǔ)器物理存儲(chǔ)器 (內(nèi)存條內(nèi)存條)l物理地址物理地址 (操作系統(tǒng)看不見操作系統(tǒng)看不見)l虛擬存儲(chǔ)器虛擬存儲(chǔ)器 (內(nèi)存通貨膨脹后

5、的解決方法內(nèi)存通貨膨脹后的解決方法)l虛擬地址虛擬地址 / / 線性地址線性地址 (一眼看不清一眼看不清)l邏輯地址(哥只是個(gè)傳說)邏輯地址(哥只是個(gè)傳說)實(shí)模式lIntel 8086Intel 8086u16位寄存器,尋址能力 64K(可以支持文本圖形)u20位地址線,尋址能力 1M(當(dāng)時(shí)可不得了)u地址線和寄存器有矛盾,因此產(chǎn)生了段(64K)u16位基地址左移4位+16位偏移 = 20位地址uDOS和Windows2.0 3.1lIntel 80286Intel 80286u地址總線由原來的20根發(fā)展為24根,尋址能力16M(可以支持真正的圖形界面)uCPU通過A20 GATE來控制A20

6、地址線u為了向下兼容,依然只是用20根地址線,多出來的4位地址造成了后來許多運(yùn)行時(shí)BUG,因此286是個(gè)失敗的產(chǎn)品保護(hù)模式lIntel 80386+ Intel 80386+ (LinuxLinux誕生與此誕生與此)u32位寄存器,4G尋址(順理成章的事)u32位地址線,4G尋址(當(dāng)時(shí)被認(rèn)為足夠用了)u為了向下兼容,A20地址被用作實(shí)模式和保護(hù)模式的開關(guān)u沒有實(shí)際的內(nèi)存段(段長(zhǎng)可變,最大4G)u全局描述符表(GDT) 和局部描述符表(LDT)重要概念點(diǎn)(繞口令)l線性地址空間:指線性地址空間:指linuxlinux系統(tǒng)中的虛擬地址空間,但虛擬地址系統(tǒng)中的虛擬地址空間,但虛擬地址不是線性地址!不

7、是線性地址?。]有更好的表述了)(沒有更好的表述了)lcpucpu尋址使用的是物理地址。所以在使用尋址使用的是物理地址。所以在使用cpucpu尋址前要把地址轉(zhuǎn)尋址前要把地址轉(zhuǎn)換好。換好。(基本沒有讓你使用(基本沒有讓你使用cpucpu尋址的可能)尋址的可能)l物理內(nèi)存中的高端內(nèi)存是物理內(nèi)存中的高端內(nèi)存是DDRDDR減去減去896M896M后多出來的那一段。后多出來的那一段。虛虛擬地址里面的高端內(nèi)存是指用于映射物理高端內(nèi)存的虛擬地址擬地址里面的高端內(nèi)存是指用于映射物理高端內(nèi)存的虛擬地址空間空間。不過高端內(nèi)存被映射到用戶空間,那就是另外一回事了。不過高端內(nèi)存被映射到用戶空間,那就是另外一回事了(進(jìn)

8、程間通信時(shí)使用進(jìn)程間通信時(shí)使用)。)。l內(nèi)核空間是可以訪問用戶空間的,不過不是通過虛擬地址直接內(nèi)核空間是可以訪問用戶空間的,不過不是通過虛擬地址直接訪問的(訪問的(用戶空間是內(nèi)核空間映射出來的用戶空間是內(nèi)核空間映射出來的,我花了一年時(shí)間才,我花了一年時(shí)間才理解)。理解)。l內(nèi)存映射,在不同的情境中意義也不相同。內(nèi)存映射,在不同的情境中意義也不相同。(看不明白的時(shí)候(看不明白的時(shí)候大多就是出現(xiàn)內(nèi)存映射了)大多就是出現(xiàn)內(nèi)存映射了)PC系統(tǒng)物理地址空間(X86 32位)PC虛擬地址與物理地址轉(zhuǎn)換MBR功能 硬盤的0柱面、0磁頭、1扇區(qū)稱為主引導(dǎo)扇區(qū)(也叫主引導(dǎo)記錄MBR)。它由三個(gè)部分組成,主引導(dǎo)代

9、碼、硬盤分區(qū)表DPT(Disk Partition table)和分區(qū)有效標(biāo)志(55AA)。 在總共512字節(jié)的主引導(dǎo)扇區(qū)里主引導(dǎo)程序(boot loader)占446個(gè)字節(jié),第二部分是Partition table區(qū)(分區(qū)表),即DPT,占64個(gè)字節(jié),硬盤中分區(qū)有多少以及每一分區(qū)的大小都記在其中。第三部分是magic number,占2個(gè)字節(jié),固定為55AA。MBR結(jié)構(gòu)DOS硬盤分區(qū)早期PC系統(tǒng)啟動(dòng)過程l DOSDOS系統(tǒng)啟動(dòng)系統(tǒng)啟動(dòng)成熟的PC系統(tǒng)啟動(dòng)過程(Win95+、Linux)l 無無bootloaderbootloader的系統(tǒng)啟動(dòng)(裸奔)的系統(tǒng)啟動(dòng)(裸奔)l 有有bootloade

10、rbootloader的單內(nèi)核單操作系統(tǒng)的啟動(dòng)的單內(nèi)核單操作系統(tǒng)的啟動(dòng)l 有有bootloaderbootloader的多內(nèi)核單操作系統(tǒng)的啟動(dòng)的多內(nèi)核單操作系統(tǒng)的啟動(dòng)l 有有bootloaderbootloader的多內(nèi)核多操作系統(tǒng)的啟動(dòng)的多內(nèi)核多操作系統(tǒng)的啟動(dòng)l 高級(jí)高級(jí)bootloaderbootloader啟動(dòng)多種操作系統(tǒng)啟動(dòng)多種操作系統(tǒng)l UEFIUEFI模式下的模式下的bootloaderbootloader啟動(dòng)多種操作系統(tǒng)啟動(dòng)多種操作系統(tǒng)無bootloader的系統(tǒng)啟動(dòng)(kernel 0.11)bootsect.sbootsect.s:內(nèi)核引導(dǎo):內(nèi)核引導(dǎo)程序保存在程序保存在MBRM

11、BR中中setup.ssetup.s:操作系統(tǒng)加載:操作系統(tǒng)加載程序,通常在程序,通常在bootloaderbootloader中中head.shead.s:是:是systemsystem模塊模塊的最開始部分,使系統(tǒng)的最開始部分,使系統(tǒng)進(jìn)入保護(hù)模式下運(yùn)行進(jìn)入保護(hù)模式下運(yùn)行系統(tǒng)啟動(dòng)過程中的控制權(quán)變化主機(jī)加電BIOS加載入內(nèi)存實(shí)模式運(yùn)行設(shè)備自檢BIOS運(yùn)行搜尋啟動(dòng)設(shè)備運(yùn)行引導(dǎo)代碼將啟程引導(dǎo)序加載進(jìn)內(nèi)存從MBR加載啟動(dòng)引導(dǎo)代碼啟動(dòng)引導(dǎo)程序接管主機(jī)控制權(quán)運(yùn)行并開啟保護(hù)模式加載系統(tǒng)內(nèi)核系統(tǒng)內(nèi)核接管主機(jī)控制權(quán)運(yùn)行內(nèi)核操作系統(tǒng)啟動(dòng)完成運(yùn)行init進(jìn)程操作系統(tǒng)初始化有bootloader的系統(tǒng)啟動(dòng)bootlo

12、ader和MBR以及各分區(qū)間的關(guān)系Linux kernel 2.2+ 啟動(dòng)過程MBR系統(tǒng)啟動(dòng)后物理地址與虛擬地址的映射關(guān)系 物理地址有物理地址有896M896M直接映射直接映射到虛擬地址的內(nèi)存空間,這是到虛擬地址的內(nèi)存空間,這是一一對(duì)應(yīng)的映射,只有起始地一一對(duì)應(yīng)的映射,只有起始地址不一樣,偏移是一樣的。址不一樣,偏移是一樣的。 用戶區(qū)的代碼也是放在這用戶區(qū)的代碼也是放在這段物理地址里面的,就是說物段物理地址里面的,就是說物理地址可以進(jìn)行二次映射。理地址可以進(jìn)行二次映射。 多出來的叫做高端內(nèi)存,多出來的叫做高端內(nèi)存,如果你使用如果你使用vmallocvmalloc申請(qǐng)空間,申請(qǐng)空間,就會(huì)在高端內(nèi)存中分配,如果就會(huì)在高端內(nèi)存中分配,如果你使用你使用kmallockmalloc申請(qǐng)空間,就會(huì)申請(qǐng)空間,就會(huì)在小于在小于896896的內(nèi)存中分配

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論