天天看點

作業系統--進階作業系統

A.由此我們可以的得出一個疑問,什麼是作業系統?

1.在我們日常生活中Windows,UNIX,Linux,Mas OS,Android,ios等是常見的作業系統

2.作業系統是直接運作于硬體之上的計算機程式

3.作業系統用于管理和控制計算機的硬體和軟體資源

4.作業系統為使用者軟體的開發提供必要的服務和接口

B.現代計算機系統架構

作業系統--進階作業系統

BIOS-Base Inout&Output System(需要注意的是 BIOS不是軟體,而是固件,固件是固化于硬體中的程式,在硬體出廠前已經燒寫固定)

1.BIOS是計算機上電後第一個運作的程式

2.BIOS首先檢查硬體狀态,檢測通過後立即進行硬體初始化

3.BIOS會在記憶體中建立中斷向量表(提供硬體通路的方法)

4.BIOS最後将控制權交由主引導程式執行

系統啟動流程(X86)

作業系統--進階作業系統

BIOS的運作機制

1.BIOS存儲于ROM中,位址映射為0xF0000-0xFFFFF(實位址)

2.BIOS的入口位址為:0xFFFF0

3.硬體電路的特殊設計使得開機後,CPU從0xFFFF0出開始執行

BIOS的最後使命

1.按照使用者設定掃描各個存儲媒體(光驅,軟驅,U盤等)

2.發現主引導區後,将主引導區中的主引導程式載入記憶體

3.主引導程式在記憶體中的入口位址為0x7c00

4.将控制權交由主程式執行(jmp 0x7c00)

Q:BIOS如何在存儲媒體中尋找主引導區?如何判斷引導區中有沒有主引導程式?

主引導區(MBR:Master Boot Record)

位置:位于存儲媒體的最開始位置處,大小為512位元組

特點:前512位元組的最後2個有效位元組為0x55aa

資料:0x55aa之前的資料被視為主引導程式

改進之後的系統啟動流程

作業系統--進階作業系統

小結

2.BIOS進行必要的初始化,并加載運作主引導程式

3.主引導程式位于存儲媒體的最開始512位元組處

4.主引導程式負責後續初始化,并加載運作作業系統核心