個人對操作系統的啓動原理的理解

於淵的《自己動手寫操作系統》是一本不錯的用代碼記錄,一步步完成一個小型的操作系統的書。下載地址:https://pan.baidu.com/s/1j1MfEFcfU_fFamkjovOMRA,提取碼:bjwv。需要有彙編語言基礎的讀者閱讀。

計算機的啓動過程如下:通電啓動 -> 執行BIOS程序(建立中斷向量表)-> 加載指定磁盤第一個扇區(512字節)入內存 -> 跳轉到內存制定位置(07c00h),並將控制權交給這邊的代碼。

所以,操作系統的引導程序是存儲在該指定磁盤第一個扇區,07c00h開頭處,不超過512字節的程序。引導程序使用彙編語言編寫,主要工作包括:從實模式到保護模式,建立內存分頁。最後要做的就是將操作系統的內核程序加載進內存。內核程序可以放在磁盤的任何位置,使用C語言開發的可執行文件。

這裏涉及到解析elf格式的可執行文件,按照可執行文件的相關描述,加載到內存的指定位置。

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