這是一個非常簡單的demo性質的操作系統,可以稱之為操作系統是因為已經實現了多任務以及任務切換:這可以說是操作系統最核心的功能。
8086sos的實現僅僅使用了300行彙編代碼,運行在MBR中:這是BIOS讀取並執行的第一個程序。雖然簡單,然而卻足夠讓人了解很多基本概念,包括彙編、寄存器、定址、BIOS、中斷、多任務,任務切換。
你可以使用bochs模擬器進行測試,這是一個強大的開源x86模擬器,模擬了包括x86處理器、BIOS、存儲器和各類硬體外設,還可以進行單步調試。
8086sos運行起來之後,會進行兩個任務taskA和taskB的切換,通過鍵盤中斷來進行任務的切換,為什麼不實用時鐘中斷?因為...我沒有調通8086模式下的時鐘中斷(捂臉...),BIOS中斷相關的資料實在太少。由於這只是一個簡單的demo,而且鍵盤中斷可以達到同樣的演示效果,並不影響對系統本質的理解。在實驗中按下任意一個按鍵即可觸發鍵盤中斷,中斷函數中會執行任務切換的操作。