現(xiàn)代操作系統(tǒng)(原書第4版)
定 價:89 元
叢書名:計算機科學叢書
- 作者:Andrew S. Tanenbaum; Herbert Bos
- 出版時間:2017/7/19
- ISBN:9787111573692
- 出 版 社:機械工業(yè)出版社
- 中圖法分類:TP316
- 頁碼:610
- 紙張:膠版紙
- 版次:1
- 開本:16K
本書是操作系統(tǒng)領域的經典教材,主要內容包括進程與線程、內存管理、文件系統(tǒng)、輸入/輸出、死鎖、虛擬化和云、多處理機系統(tǒng)、安全,以及關于UNIX、Linux、Android和Windows的實例研究等。第4版對知識點進行了全面更新,反映了當代操作系統(tǒng)的發(fā)展與動向。本書適合作為高等院校計算機專業(yè)的操作系統(tǒng)課程教材,也適合相關技術人員參考。
出版者的話
譯者序
前言
作者簡介
第1章 引論1
1.1 什么是操作系統(tǒng)2
1.1.1 作為擴展機器的操作系統(tǒng)2
1.1.2 作為資源管理者的操作系統(tǒng)3
1.2 操作系統(tǒng)的歷史4
1.2.1 第一代(1945~1955):真空管和穿孔卡片4
1.2.2 第二代(1955~1965):晶體管和批處理系統(tǒng)4
1.2.3 第三代(1965~1980):集成電路和多道程序設計6
1.2.4 第四代(1980年至今):個人計算機8
1.2.5 第五代(1990年至今):移動計算機10
1.3 計算機硬件簡介11
1.3.1 處理器12
1.3.2 存儲器14
1.3.3 磁盤15
1.3.4 I/O設備16
1.3.5 總線18
1.3.6 啟動計算機19
1.4 操作系統(tǒng)大觀園20
1.4.1 大型機操作系統(tǒng)20
1.4.2 服務器操作系統(tǒng)20
1.4.3 多處理器操作系統(tǒng)20
1.4.4 個人計算機操作系統(tǒng)20
1.4.5 掌上計算機操作系統(tǒng)21
1.4.6 嵌入式操作系統(tǒng)21
1.4.7 傳感器節(jié)點操作系統(tǒng)21
1.4.8 實時操作系統(tǒng)21
1.4.9 智能卡操作系統(tǒng)21
1.5 操作系統(tǒng)概念22
1.5.1 進程22
1.5.2 地址空間23
1.5.3 文件23
1.5.4 輸入/輸出25
1.5.5 保護25
1.5.6 shell25
1.5.7 個體重復系統(tǒng)發(fā)育26
1.6 系統(tǒng)調用28
1.6.1 用于進程管理的系統(tǒng)調用31
1.6.2 用于文件管理的系統(tǒng)調用32
1.6.3 用于目錄管理的系統(tǒng)調用32
1.6.4 各種系統(tǒng)調用34
1.6.5 Windows Win32 API34
1.7 操作系統(tǒng)結構35
1.7.1 單體系統(tǒng)36
1.7.2 層次式系統(tǒng)36
1.7.3 微內核37
1.7.4 客戶端–服務器模式38
1.7.5 虛擬機39
1.7.6 外核41
1.8 依靠C的世界41
1.8.1 C語言41
1.8.2 頭文件41
1.8.3 大型編程項目43
1.8.4 運行模型43
1.9 有關操作系統(tǒng)的研究44
1.10 本書其他部分概要45
1.11 公制單位45
1.12 小結46
習題46
第2章 進程與線程48
2.1 進程48
2.1.1 進程模型48
2.1.2 進程的創(chuàng)建49
2.1.3 進程的終止51
2.1.4 進程的層次結構51
2.1.5 進程的狀態(tài)51
2.1.6 進程的實現(xiàn)53
2.1.7 多道程序設計模型54
2.2 線程54
2.2.1 線程的使用54
2.2.2 經典的線程模型57
2.2.3 POSIX線程60
2.2.4 在用戶空間中實現(xiàn)線程60
2.2.5 在內核中實現(xiàn)線程63
2.2.6 混合實現(xiàn)63
2.2.7 調度程序激活機制64
2.2.8 彈出式線程64
2.2.9 使單線程代碼多線程化65
2.3 進程間通信67
2.3.1 競爭條件67
2.3.2 臨界區(qū)68
2.3.3 忙等待的互斥68
2.3.4 睡眠與喚醒71
2.3.5 信號量73
2.3.6 互斥量74
2.3.7 管程78
2.3.8 消息傳遞81
2.3.9 屏障82
2.3.10 避免鎖:讀–復制–更新83
2.4 調度84
2.4.1 調度簡介84
2.4.2 批處理系統(tǒng)中的調度88
2.4.3 交互式系統(tǒng)中的調度89
2.4.4 實時系統(tǒng)中的調度92
2.4.5 策略和機制93
2.4.6 線程調度93
2.5 經典的IPC問題94
2.5.1 哲學家就餐問題94
2.5.2 讀者–寫者問題96
2.6 有關進程與線程的研究97
2.7 小結97
習題98
第3章 內存管理102
3.1 無存儲器抽象102
3.2 一種存儲器抽象:地址空間104
3.2.1 地址空間的概念104
3.2.2 交換技術106
3.2.3 空閑內存管理107
3.3 虛擬內存109
3.3.1 分頁110
3.3.2 頁表112
3.3.3 加速分頁過程112
3.3.4 針對大內存的頁表114
3.4 頁面置換算法117
3.4.1 最優(yōu)頁面置換算法117
3.4.2 最近未使用頁面置換算法118
3.4.3 先進先出頁面置換算法118
3.4.4 第二次機會頁面置換算法118
3.4.5 時鐘頁面置換算法119
3.4.6 最近最少使用頁面置換算法119
3.4.7 用軟件模擬LRU120
3.4.8 工作集頁面置換算法121
3.4.9 工作集時鐘頁面置換算法123
3.4.10 頁面置換算法小結124
3.5 分頁系統(tǒng)中的設計問題124
3.5.1 局部分配策略與全局分配策略124
3.5.2 負載控制126
3.5.3 頁面大小126
3.5.4 分離的指令空間和數據空間127
3.5.5 共享頁面128
3.5.6 共享庫128
3.5.7 內存映射文件130
3.5.8 清除策略130
3.5.9 虛擬內存接口130
3.6 有關實現(xiàn)的問題131
3.6.1 與分頁有關的工作131
3.6.2 缺頁中斷處理131
3.6.3 指令備份132
3.6.4 鎖定內存中的頁面132
3.6.5 后備存儲133
3.6.6 策略和機制的分離134
3.7 分段134
3.7.1 純分段的實現(xiàn)136
3.7.2 分段和分頁結合:MULTICS136
3.7.3 分段和分頁結合:Intel x86138
3.8 有關內存管理的研究141
3.9 小結141
習題142
第4章 文件系統(tǒng)147
4.1 文件148
4.1.1 文件命名148
4.1.2 文件結構149
4.1.3 文件類型149
4.1.4 文件訪問151
4.1.5 文件屬性151
4.1.6 文件操作152
4.1.7 使用文件系統(tǒng)調用的一個示例程序152
4.2 目錄154
4.2.1 一級目錄系統(tǒng)154
4.2.2 層次目錄系統(tǒng)154
4.2.3 路徑名154
4.2.4 目錄操作156
4.3 文件系統(tǒng)的實現(xiàn)157
4.3.1 文件系統(tǒng)布局157
4.3.2 文件的實現(xiàn)157
4.3.3 目錄的實現(xiàn)160
4.3.4 共享文件162
4.3.5 日志結構文件系統(tǒng)163
4.3.6 日志文件系統(tǒng)164
4.3.7 虛擬文件系統(tǒng)165
4.4 文件系統(tǒng)管理和優(yōu)化167
4.4.1 磁盤空間管理167
4.4.2 文件系統(tǒng)備份171
4.4.3 文件系統(tǒng)的一致性174