電腦科學

xv6: a simple, Unix-like teaching operating system

Russ Cox; Frans Kaashoek; Robert Morris

英文原名: xv6: a simple, Unix-like teaching operating system

完整教學作業系統課本,沿系統呼叫追入小型RISC-V核心,把記憶體、異常、排程與檔案系統聯絡到程式碼,適合已有C語言基礎的系統課程。

需要的基礎

需熟悉C、指標、基礎彙編和計算機體系結構,複習虛擬記憶體、棧及併發。應已能編譯除錯小程式,再開始逐行追蹤核心。

版次
RISC-V revision 5
出版年份
2025
難度等級
中級
學術層次
大學部
operating systemsRISC-Vkernel design

01 / 導讀

導讀

作業系統:選鎖之前先解釋交錯執行

比較免費概念教材、小型RISC-V核心與綜合參考,用原創事件軌跡和同步變式區分原子性、互斥、確定順序及模型邊界。

學習計畫與例題由 University Reading List 編輯整理。

適合誰

適合把作業系統概念與實現相連的本科課程。核心經過刻意精簡,但仍要嚴密推理機器狀態和併發;應配合同版RISC-V程式碼和課程執行環境。

需要的基礎

需熟悉C、指標、基礎彙編和計算機體系結構,複習虛擬記憶體、棧及併發。應已能編譯除錯小程式,再開始逐行追蹤核心。

涵蓋內容

由系統介面進入核心組織、頁表、陷阱與系統呼叫、缺頁、中斷、鎖、排程、睡眠喚醒及檔案系統,並透過程式碼路徑解釋設計選擇和教學簡化。

如何使用

從使用者程式追一條系統呼叫,記錄許可權、棧和地址空間的變化;分析鎖之前先畫兩個執行路徑共享的狀態。在模擬器重現現象並用程式碼解釋,修改機制前預測可能破壞的不變數,再設計小測試;行號保持與對應原始碼冊一致。

版本與來源

MIT課程入口連結原始碼和課本,完整revision 5 PDF署2025年9月2日。課本倉庫採用MIT式寬鬆許可,保留版權通知;不要把歷史Unix原始碼的權利條件直接套給xv6。

前往官方資源