實驗內容
代碼量估計
1.os啓動,中斷與設備管理(bootloader)
200~1800行
2.物理內存管理
1800~2500行
3.虛擬內存管理
2500~3200行
4.內核線程管理
3200~3600行
5.用戶進程管理
3600~4300行
6.處理器調度
4300~5100行
7.同步互斥
5100~6400行
8.文件系統
6400~9999行
用戶態
{
各種用戶態應用和測試實例
用戶態函數庫
}
內核態
{
系統調用接口
進程管理子系統(進程間共享庫支持,進程間調度算法,進程調度框架,進程生命週期管理)
文件管理子系統(FAT文件系統,UNIX文件系統,Buffer Cache)
網絡(TCP/IP協議棧)
進程間通信(消息隊列,PIPE)
內存管理子系統(不連續地址空間分配算法,連續地址分配空間算法,虛擬內存分配管理,物理內存分配管理,頁式內存管理)
同步互斥/死鎖(解決死鎖問題的實例,同步互斥應用實例,semaphore實現,lock實現)
}
Lab1
設計一個bootloader加載操作系統
外設中斷
陷阱中斷
基於分段機制的存儲管理
設備管理的基本概念
PC啓動bootloader的過程
bootloader的文件組成
編譯運行bootloader的過程
調試bootloader的方法
在彙編級瞭解棧的結構和處理過程
中斷處理機制
通過串口/並口/CGA輸出字符的方法