操作系統學習(四)、系統啟動過程


一、操作系統啟動部分主要執行流程

  • 當PC電源打開后,80x86結構的CPU將自動進入實時模式。並從地址0xFFFF0 (FFFF:0) 開始自動執行程序代碼,這個地址通常是是ROM-BIOS中的地址。

  • PC機的BIOS將執行某些系統檢測,並在物理地址0處開始初始化中斷向量。 此后,它將可啟動設備的第一個扇區(磁盤引導扇區,512字節)讀入絕對內存地址 0x7C00 處,並跳轉到這個地方。

注:啟動設備通常是軟驅或硬盤。

二、具體執行過程

  1. 開機后,CPU自動進入到FFFF:0 單元處執行,此處有一條跳轉指令。CPU執行該跳轉指令后,轉去執行BIOS中的硬件系統檢測和初始化程序。

  2. 初始化程序將將建立BIOS所支持的中斷向量,即將BIOS提供的中斷例程的入口地址登記在中斷向量表中。

  3. 硬件系統初始化完成后,調用 int 19h 進行操作系統引導工作。

    • 如果設為從軟盤啟動操作系統,則int 19h 將主要完成以下工作。

         a. 將控制0號軟驅,讀取軟盤0道0面1扇區的內容到0:7C00
      
         b. 將CS:IP 指向0:7C00
      
    • 如果在0號軟驅中沒有軟盤,或發生軟盤I/O錯誤,則int 19h將主要完成以下工作

         a. 讀取硬盤C的0道0面1扇區的內容到0:7c00
         b. 將CS:IP 指向0:7C00
      

注:如果從軟盤啟動軟盤的0道0面1扇區中裝有操作系統引導程序,int 19h 將其裝在到0:7c00處后,設置CPU從0:7c00開始執行此處的引導程序,操作系統被激活,控制計算機。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM