作業系統# 第1章 導論與歷史 1.1-1950年代監督程式與批次處理的誕生 1.2-1960年代MULTICS與UNIX(1969)的分岔革命 1.3-作業系統的核心概念(中斷、模式切換、系統呼叫) 第2章 行程與排班 2.1-行程抽象與狀態機 2.2-CPU排班演算法(FCFS、SJF、RoundRobin與理論分析) 2.3-執行緒與contextswitch的實作 第3章 併發與同步 3.1-Dijkstra(1965)的臨界區問題與信號(semaphore) 3.2-互斥鎖的硬體支援(test-and-set、compare-and-swap)與無鎖演算法 3.3-死結:條件、預防與銀行家演算法 第4章 記憶體管理 4.1-分頁與虛擬記憶體(Atlas1962、DemandPaging) 4.2-分頁置換演算法(FIFO、LRU、Clock與理論上界) 4.3-TLB、多層分頁與現代位址轉譯 第5章 檔案系統與I/O 5.1-檔案系統的設計(FAT、UNIXinode) 5.2-日誌式檔案系統與崩潰一致性(含journaling理論) 5.3-裝置驅動、中斷處理與IO排班