這一段時間分三步完成
1,啟動BIOS,准備實模式下的中斷向量表和中斷服務程序。
2,加載操作系統到內存。用步驟1中准備的中斷服務程序實現。
3,為執行main函數做過渡工作。
一,啟動BIOS
靠硬件方法來啟動BIOS,BIOS程序入口地址0xFFFF0。加電瞬間強行將CS的值置為0xFFFF,把IP的值強行置為0x0000,這樣CS:IP就指向0xFFFF0這地址。
二,加載操作系統到內存分三步
(1)加載引導程序bootsect(bootsect程序主要是規劃內存)。
給CPU一個0x19中斷,CPU查向量表做出反應,加載第一扇區的512B的bootsect到內存0x07C00。
(這裡涉及到BIOS和操作系統“兩頭約定,定位識別”慣例,有興趣讀者自查,俺不贅述。)
(2)加載setup代碼。
(3)加載system代碼。
三,開始向32位模式轉變,為main函數做准備。
此階段主要工作是,打開32位尋址空間,打開保護模式,建立保護模式下的中斷響應機制,建立內存分頁機制等。