github地址: https://github.com/RandyLambert/ssxOS
ssxOS
▄▄▄▄▄▄▄▄▄▄▄ ▄▄▄▄▄▄▄▄▄▄▄ ▄ ▄ ▄▄▄▄▄▄▄▄▄▄▄ ▄▄▄▄▄▄▄▄▄▄▄
????????????▌????????????▌??▌ ??▌????????????▌????????????▌
??█????????? ??█????????? ??▌ ??▌ ??█???????█?▌??█?????????
??▌ ??▌ ??▌ ??▌ ??▌ ??▌??▌
??█▄▄▄▄▄▄▄▄▄ ??█▄▄▄▄▄▄▄▄▄ ????▌ ??▌ ??▌??█▄▄▄▄▄▄▄▄▄
????????????▌????????????▌ ??▌ ??▌ ??▌????????????▌
?????????█?▌ ?????????█?▌ ??▌?▌ ??▌ ??▌ ?????????█?▌
??▌ ??▌ ??▌ ??▌ ??▌ ??▌ ??▌
▄▄▄▄▄▄▄▄▄█?▌ ▄▄▄▄▄▄▄▄▄█?▌ ??▌ ??▌ ??█▄▄▄▄▄▄▄█?▌ ▄▄▄▄▄▄▄▄▄█?▌
????????????▌????????????▌??▌ ??▌????????????▌????????????▌
??????????? ??????????? ? ? ??????????? ???????????
一個小型作業系統的學習與實作
開發環境
作業系統版本: 5.4.70-amd64-desktop
型別: 64位
處理器: Intel? Core? i7-8750H CPU @2.20GHz
編譯器版本: GCC 9.3
nasm 版本: 2.14
bochs 版本: 2.6.9
dd 版本: 8.3
如何運行
-
請在運行之前確保你使用的 Linux 發型版本之下中擁有 gcc , bochs , dd , nasm , bximage 命令,以上命令在Debian/Ubuntu 環境下都可以直接通過軟體包直接安裝,當然網上也能很容易查到相應的安裝教程.
sudo install apt-get xx -
通過 bximage 命令生成硬碟,然后放到固定的一個目錄下(我選擇放在 /usr/share/bochs/ ),有兩種方式.
-
方式一: 直接通過輸入命令(但是我的 bximage 版本無法執行該陳述句).
bximage -hd -mode="flat" -size=60 -q hd60M.img -
方式二: 命令列輸 bximage 互動生成硬碟.

-
-
按照自己的實際開發環境創建 bochsrc.disk 檔案,可以參考我的 bochsrc.disk 檔案寫法.
-
修改 Makefile 中的 img 路徑為自己硬碟路徑,例如
img=/usr/share/bochs/hd60M.img -
在主目錄運行 make all 和 make image 命令.
-
運行 bochs -f bochsrc.disk所在路徑,例如:
bochs -f bochsrc.disk
之后就可以通過 bochs 進行除錯運行了.
運行截圖

參考書籍
- 《X86匯編語言 從實模式到保護模式》
- 《作業系統真相還原》
- 《程式員的自我修養》
- 《深入理解計算機系統》
- 還有很多的博客文章,再次不一一列舉了,十分感謝.
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/240479.html
標籤:其他
