作業系統(第三版)

作業系統(第三版)

《作業系統(第三版)》是一本劉振鵬 王 煜 張 明編制,由中國鐵道出版社在2010年出版的書籍。

基本介紹

  • 書名:作業系統(第三版)
  • 頁數:328頁
  • 出版社:中國鐵道出版社
  • 開本:16開 
基本信息,內容介紹,圖書目錄,

基本信息

書名:作業系統(第三版)
套系名稱:21世紀高等院校計算機專業規劃教材
出版社:中國鐵道出版社
書號:978-7-113-10968-4
開本:16開
頁碼:328頁
作者:劉振鵬 王 煜 張 明
出版時間:2010-07-01
定價:32 元

內容介紹

本書為普通高等教育“十一五”國家級規劃教材,是在《作業系統(第二版)》的基礎上修訂而成的。與第二版相比,第三版在結構、內容上都作了調整、修改和增刪。全書內容包括:作業系統的形成、類型、結構和功能,用戶接口和作業管理,進程與進程管理,進程的同步與通信,存儲器管理,檔案管理,設備管理以及網路與分散式系統等。本書以Linux作業系統為例,具體分析了當代作業系統的設計思想和實現技術。本書內容豐富,結構清晰,突出基礎,注重套用,強調理論與實踐的結合,適合作為高等院校計算機及相關專業的教材,也可供計算機愛好者自學使用。另外,本書對於從事計算機套用和開發的技術人員也具有一定的參考價值。

圖書目錄

第1章 引論 1
1.1 作業系統的概念 1
1.1.1 計算機系統 1
1.1.2 什麼是作業系統 3
1.1.3 作業系統的目標 4
1.2 作業系統的形成與發展 4
1.2.1 作業系統的形成 5
1.2.2 作業系統的進一步發展 12
1.2.3 推動作業系統發展的主要動力 17
1.3 研究作業系統的幾種觀點 18
1.3.1 軟體的觀點 18
1.3.2 計算機系統資源管理的觀點 18
1.3.3 進程的觀點 19
1.3.4 用戶與計算機硬體系統之間接口的觀點 19
1.3.5 虛機器觀點 20
1.3.6 服務提供者觀點 20
1.4 作業系統的功能與特徵 21
1.4.1 作業系統的功能 21
1.4.2 作業系統的特徵 26
1.5 作業系統結構設計 27
1.5.1 傳統的作業系統結構 27
1.5.2 現代的作業系統結構 29
1.6 作業系統的硬體環境 31
1.6.1 中央處理機 31
1.6.2 存儲系統 34
1.6.3 緩衝技術 36
1.6.4 中斷技術 37
1.6.5 時鐘 43
小結 44
習題 45
第2章 用戶接口和作業管理 46
2.1 概述 46
2.1.1 作業的基本概念 46
2.1.2 用戶接口 47
2.2 命令接口 48
2.2.1 在線上命令接口 48
2.2.2 脫機命令接口 50
2.3 系統調用 51
2.3.1 系統調用的概念 51
2.3.2 系統調用的處理過程 52
2.4 作業管理 53
2.4.1 作業控制塊和作業表 53
2.4.2 作業的建立 54
2.4.3 批處理作業的調度 55
2.4.4 作業的執行 58
2.4.5 作業的終止與撤銷 58
2.4.6 作業狀態 59
小結 60
習題 60
第3章 進程與進程管理 62
3.1 進程的引入 62
3.1.1 前趨圖的定義 62
3.1.2 程式順序執行 63
3.1.3 程式並發執行 63
3.1.4 多道程式設計 65
3.2 進程 66
3.2.1 進程的概念 66
3.2.2 進程的基本狀態及其轉換 67
3.2.3 進程控制塊 70
3.2.4 進程控制 72
3.3 進程調度 77
3.3.1 調度的基本概念 77
3.3.2 進程調度算法 78
3.3.3 進程調度的時機和過程 82
3.4 執行緒的基本概念 83
3.4.1 執行緒的引入 83
3.4.2 執行緒的定義和屬性 84
3.4.3 執行緒與進程的比較 85
3.4.4 執行緒的實現機制 86
3.5 Linux的進程與進程管理 87
3.5.1 Linux的進程結構與進程控制 87
3.5.2 Linux的核心進程調度 88
小結 94
習題 95
第4章 進程同步與通信 97
4.1 進程間的相互作用 97
4.1.1 進程間的聯繫 97
4.1.2 利用軟體方法解決進程互斥問題 99
4.1.3 利用硬體方法解決進程互斥問題 102
4.1.4 信號量機制 103
4.1.5 經典進程同步問題 107
4.1.6 管程機制 115
4.2 進程通信 121
4.2.1 進程通信的類型 121
4.2.2 直接通信和間接通信 123
4.2.3 訊息緩衝佇列通信機制 124
4.3 死鎖 125
4.3.1 產生死鎖的原因和必要條件 126
4.3.2 預防死鎖 129
4.3.3 避免死鎖 130
4.3.4 檢測死鎖 134
4.3.5 解除死鎖 136
4.4 Linux進程間通信 136
4.4.1 Linux進程通信的基本概念 136
4.4.2 Linux訊息佇列 139
4.4.3 Linux的信號量 142
4.4.4 共享記憶體 144
4.4.5 Linux系統調用與進程通信 146
4.4.6 進程通信信號 146
小結 147
習題 148
第5章 存儲器管理 151
5.1 概述 151
5.1.1 存儲體系 151
5.1.2 存儲管理的目的 151
5.1.3 存儲管理的任務 152
5.1.4 程式的連結和裝入 153
5.1.5 存儲管理方式的分類 155
5.2 連續存儲管理方式 156
5.2.1 單一連續分配 156
5.2.2 分區分配 156
5.3 覆蓋技術與交換技術 161
5.3.1 覆蓋技術 161
5.3.2 交換技術 162
5.4 分頁存儲管理方式 162
5.4.1 工作原理 163
5.4.2 動態地址變換 164
5.4.3 快表 165
5.4.4 兩級和多級頁表 166
5.4.5 分配與回收 167
5.5 分段存儲管理方式 167
5.5.1 工作原理 168
5.5.2 動態地址變換 168
5.5.3 存儲保護 169
5.5.4 分頁和分段的主要區別 169
5.6 段頁式存儲管理方式 169
5.6.1 工作原理 170
5.6.2 地址變換 170
5.7 虛擬存儲器 171
5.7.1 概述 171
5.7.2 分頁虛擬存儲管理 172
5.7.3 分段虛擬存儲管理 180
5.8 Linux的記憶體管理 182
5.8.1 Linux存儲管理的重要數據結構 182
5.8.2 頁表的管理 184
5.8.3 頁面分配和回收 184
5.8.4 頁面換入 185
5.8.5 換出與丟棄頁面 186
5.8.6 頁面錯誤的處理 187
5.8.7 頁面cache 188
5.8.8 Linux的swap cache 188
5.8.9 核心cache的管理 189
小結 191
習題 192
第6章 檔案管理 194
6.1 概述 194
6.1.1 檔案和檔案系統 194
6.1.2 檔案的分類 195
6.2 檔案的結構和存取方式 196
6.2.1 檔案的存取方式 196
6.2.2 檔案的邏輯結構 197
6.2.3 存儲介質 198
6.2.4 檔案的物理結構 201
6.3 檔案目錄 209
6.3.1 檔案控制塊 210
6.3.2 檔案目錄結構 210
6.3.3 目錄的查找和目錄的改進 212
6.4 檔案系統的實現 214
6.4.1 打開檔案表 214
6.4.2 外存空間管理 215
6.5 檔案的使用 217
6.5.1 主要操作 217
6.5.2 檔案共享 219
6.6 檔案系統的安全性和數據一致性 222
6.6.1 防止人為因素造成的檔案不安全性 223
6.6.2 防止系統因素或自然因素造成的檔案不安全性 225
6.6.3 檔案系統的數據一致性 229
6.7 磁碟調度 230
6.7.1 磁碟I/O時間 231
6.7.2 磁碟的移臂調度 231
6.7.3 磁碟的最佳化分布 233
6.8 Linux的檔案系統 234
6.8.1 Linux檔案系統的結構 234
6.8.2 Linux檔案類型 235
6.8.3 Linux檔案系統的目錄 235
6.8.4 Linux檔案的查找 236
6.8.5 Linux檔案的操作 236
6.8.6 Linux檔案的共享 239
6.8.7 Linux檔案目錄操作 240
6.8.8 Linux檔案的一致性處理 240
6.8.9 Linux EXT2檔案系統 241
6.8.10 EXT2位示圖和I結點圖 242
6.8.11 Linux高速快取 243
小結 245
習題 246
第7章 設備管理 248
7.1 概述 248
7.1.1 設備的分類 248
7.1.2 設備管理的目標和功能 249
7.2 I/O硬體特點 250
7.2.1 設備組成 250
7.2.2 設備接口 250
7.2.3 設備控制器 250
7.2.4 通道 251
7.2.5 I/O控制方式 253
7.2.6 緩衝技術 256
7.3 I/O軟體的組成 259
7.3.1 I/O軟體的目標 259
7.3.2 中斷處理程式 259
7.3.3 設備驅動程式 261
7.3.4 獨立於設備的軟體 262
7.3.5 用戶空間的I/O軟體 264
7.4 設備分配 264
7.4.1 設備分配中的數據結構 265
7.4.2 設備獨立性 266
7.4.3 設備分配 267
7.5 虛擬設備 268
7.5.1 Spooling技術 268
7.5.2 共享印表機 269
7.5.3 Spooling系統的優缺點 270
7.6 Linux的I/O設備管理 270
7.6.1 Linux中的設備檔案 270
7.6.2 Linux的設備驅動程式 271
7.6.3 Linux的中斷處理 276
小結 278
習題 278
第8章 網路與分散式系統 280
8.1 分散式系統概述 280
8.1.1 分散式系統的概念 280
8.1.2 通信結構 281
8.1.3 開放式系統互連通信結構 284
8.2 網路伺服器 288
8.2.1 伺服器的結構 289
8.2.2 磁碟和檔案伺服器 290
8.2.3 檔案高速緩衝存儲器的一致性問題 290
8.2.4 印表機伺服器 291
8.2.5 數據機伺服器 292
8.3 分散式進程管理 292
8.3.1 分散式進程的狀態及其轉換 292
8.3.2 處理機管理 293
8.4 進程遷移 294
8.4.1 進程遷移機制 295
8.4.2 遷移處理 296
8.5 分散式進程通信 297
8.5.1 信息傳送機制 297
8.5.2 遠程過程調用 298
8.5.3 確定分散式系統的全局狀態 300
8.6 分散式進程同步與互斥 303
8.6.1 事件定序法 303
8.6.2 分散式互斥 304
8.6.3 分散式算法 306
8.7 分散式進程死鎖問題 309
8.7.1 資源分配中的死鎖 309
8.7.2 訊息通信中的死鎖 311
小結 312
習題 313
參考文獻 314

相關詞條

熱門詞條

聯絡我們