01操作系統啓動

操作系統裝在硬盤上(磁盤),因此操作系統的啓動第一步就是把操作系統文件載入內存。載入內存的過程主要爲三部分

  1. boot sect.s(引導程序)
  2. set up.s,完成os啓動前的設置
  3. system模塊執行

set up:

           主要工作有 

  1. 15號中斷獲取內存大小並保存
  2. 獲取硬件參數 如顯卡、根設備號等
  3. 讓操作系統置於地址從0開始的位置
  4. 進入保護模式:
                           CS IP的解釋方式改變,由實模式(CS<<4+IP)切換到選擇子模式(即根據CS查表+IP) 
                           這樣做尋址空間大小由16位(<1M)擴展到32位模式(4G)20位是1M 2的10次方是1024,所以30位是1G,  1位是1byte即8bit

system模塊:     ​​​​​
               setup跳到system的第一部分代碼,主要構成有

  1.         MAKE FILE:操作系統控制代碼,makefile產生image(OS鏡像文件)寫入磁盤0扇區,makefile是束狀結構的
  2.         head.s :初始化GDT列表即CS查表,開啓20號地址線
               |
             main.c:初始化工作 例如 mem.int(內存初始化)2片4K空間形成存儲內存中哪些用了,哪些沒使用的表格

總之操作系統啓動的2個主要工作就是將OS文件載入內存和初始化

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章