作業系統原理與實踐教程(第三版)

作業系統原理與實踐教程(第三版)

《作業系統原理與實踐教程(第三版)》是2014年清華大學出版社出版的圖書,作者是陶永才、史葦杭、張青。

基本介紹

  • 書名:作業系統原理與實踐教程(第三版)
  • 作者:陶永才、史葦杭、張青
  • 出版社清華大學出版社
  • 定價:39 元
  • 裝幀:平裝
  • ISBN:9787302385097
  • 印次:3-1
  • 印刷日期:2014-11-21
圖書簡介,圖書目錄,

圖書簡介

本書全面系統地介紹了現代計算機作業系統的基本理論和最新技術。全書共分為8章,第1章介紹了作業系統的概念、特徵和功能、發展歷史、結構和設計的相關問題,並介紹了常用的作業系統產品;第2章介紹了操作系達歡院統的生成與引導、向用戶提供的接口和服務;第3、4章詳細介紹了進程和執行緒的概念、處理器調度、同步和通信機制、調度與死鎖等問題;第5、6、7章分別介紹了作業系統的存儲管理、檔案管理和設備管理符凳端功能;第8章介紹了作業系統的安全和保護問題。
本書可作為高等院校計算機科學與技術、軟體工程、信息管理等專業本、專科生教材和考研、考證參考書,亦可供從事計算機科學、工程和套用等方面工作的科技人員參考。

圖書目錄

第1章作業系統概論 1
1.1作業系統的概念 1
1.1.1作業系統的定義 1
1.1.2作業系統的特徵 3
1.1.3作業系統的滲和遷講功能 4
1.1.4作業系統的設計目標 8
1.1.5作業系統的性能指標 9
1.2作業系統的形成和發展 9
1.2.1人工操作階段 9
1.2.2單道批處理 10
1.2.3多道批處理 10
1.2.4分時作業系統 12
1.2.5個人計算機作業系統 13
1.2.7網路作業系統 16
1.2.8分散式作業系統 17
1.2.9作業系統的進一步發展 18
1.3作業系統的結構 19
1.3.1整體結構 20
1.3.2分層結構 21
1.3.3虛擬機 22
1.3.4外核 23
1.3.5客戶機/伺服器結構 23
1.4常用作業系統簡介 24
1.4.1Windows系列作業系統 24
1.4.2UNIX和Linux系統備凳 26
1.5小結 28
1.6思考練習 28
第2章作業系統的界面 30
2.1用戶工作環境 30
2.1.1用戶環境 30
2.1.2系統的生成與引導 31
2.1.3實例分析:Linux系統啟動 34
2.2作業系統的用戶接口 35
2.2.1命令接口 35
2.2.2圖形用戶接口 37
2.2.3程式接口 37
2.3作業系統提供的服務 38
2.3.1作業系統提供的基本服務 38
2.3.2作業系統提供的公共霸謎燥函式 39
2.4小結 40
2.5思考練習 40
第3章處理器管理 42
3.1進程的引入 42
3.1.1程式的順序執行 42
3.1.2程式的並發執行 43
3.2進程的概念 44
3.2.1進程的定義 44
3.2.2進程的狀態 45
3.3進程控制 48
3.3.1進程控制的概念 48
3.3.2進程控制機構 48
3.3.3進程創建 49
3.3.4進程撤銷 50
3.3.5進程阻塞 50
3.3.6進程喚醒 50
3.4執行緒 50
3.4.1執行緒的概念 51
3.4.2執行緒的特點與狀態霸悼淋 51
3.4.3執行緒的實現 52
3.4.4多執行緒模型 52
3.4.5執行緒池 54
3.5處理器調度 54
3.5.1處理器調度的層次 54
3.5.2選擇調度算法的準則 56
3.5.3作業調度 57
3.5.4進程調度 58
3.6調度算法 59
3.6.1先來先服務 59
3.6.2短作業(進程)優先 60
3.6.3優先權調度 60
3.6.4時間片輪轉法 61
3.6.5多級佇列調度算法 62
3.6.6多級反饋佇列調度 63
3.6.7高回響比優先調度 64
3.7多處理器調度和實時調度 65
3.7.1多處理器調度 65
3.7.2實時調度 65
3.8Linux的進程管理 66
3.8.1Linux的進程描述符 66
3.8.2Linux的進程狀態及轉換 68
3.8.3Linux進程的調度 69
3.8.4Linux進程的創建和終止 70
3.8.5Linux的執行緒管理 71
3.9小結 72
3.10思考練習 73
第4章進程同步與死鎖 75
4.1進程的同步和互斥 75
4.1.1進程的同步 75
4.1.2進程互斥 76
4.1.4信號量的使用方法 84
4.1.5信號量的套用實例 85
4.2經典同步問題 87
4.2.1生產者—消費者問題 87
4.2.2讀者—寫者問題 89
4.2.4理髮師問題 94
4.3管程 95
4.3.1管程道洪邀漿的基本概念 96
4.3.2條件變數 97
4.3.3使用管程解決生產者—消費者問題 98
4.4進程通信 99
4.4.1進程通信的概念 99
4.4.2進程通信的方式 100
4.4.3訊息傳遞系統 101
4.4.4訊息緩衝佇列通信機制 103
4.4.5管道通信方式 105
4.4.6Linux的進程通信 106
4.5死鎖 111
4.5.1死鎖的概念 111
4.5.2死鎖產生的原因和必要條件 112
4.5.3死鎖的描述—資源分配圖 114
4.5.4處理死鎖的方法 116
4.6死鎖的預防和避免 117
4.6.1死鎖的預防 117
4.6.2死鎖的避免 118
4.7死鎖的檢測和解除 124
4.7.1死鎖的檢測 125
4.7.2死鎖的解除 127
4.8小結 128
4.9思考練習 129
第5章存儲管理 131
5.1存儲管理的概念 131
5.1.1多級存儲結構 132
5.1.2程式的運行過程 134
5.1.3存儲管理的任務和功能 136
5.1.4存儲管理方式 141
5.2連續記憶體分配 142
5.2.1單一連續分配 143
5.2.2固定分區分配 143
5.2.3動態分區分配 145
5.2.4可重定位分區分配 149
5.3記憶體不足時的管理 151
5.3.1覆蓋 151
5.3.2交換 152
5.4分頁存儲管理 153
5.4.1分頁存儲管理的基本原理 153
5.4.2地址映射 155
5.4.3頁表的結構 158
5.4.4頁面的共享 160
5.5分段存儲管理 161
5.5.1分段存儲管理方式的引入 161
5.5.2分段存儲管理的基本原理 162
5.5.3段的共享和保護 164
5.5.4段頁式存儲管理 166
5.6.1虛擬存儲器的引入 168
5.6.2虛擬存儲器的實現方法 170
5.6.3虛擬存儲器的特徵 170
5.7請求分頁存儲管理技術 171
5.7.1請求分頁存儲管理的硬體支持 171
5.7.3請求分頁系統記憶體塊的分配 178
5.7.4工作集理論和抖動問題 180
5.8Linux的存儲管理 182
5.8.1物理記憶體管理 182
5.8.2進程虛擬地址空間管理 184
5.9小結 187
5.10思考練習 188
第6章檔案管理 190
6.1檔案的概念 190
6.1.1檔案及其分類 190
6.1.2檔案的屬性 193
6.2檔案目錄 193
6.2.1檔案控制塊和檔案目錄 194
6.2.2檔案目錄結構 196
6.2.3目錄的實現 199
6.3檔案和目錄操作 200
6.3.1檔案操作 200
6.3.2目錄操作 202
6.4檔案的邏輯結構 203
6.4.1檔案邏輯結構的類型 203
6.4.2順序檔案 205
6.4.3索引檔案 205
6.4.4索引順序檔案 206
6.5檔案的物理結構 207
6.5.1連續檔案 207
6.5.2連結檔案 208
6.5.3隨機檔案 209
6.5.4檔案物理結構比較 210
6.6檔案存儲空間的分配 210
6.6.1連續分配 211
6.6.2連結分配 212
6.6.3索引分配 217
6.7檔案存儲空間的管理 219
6.7.1空閒檔案目錄 219
6.7.2空閒鍊表法 220
6.7.3位示圖 222
6.8檔案系統 222
6.8.1檔案系統的結構 222
6.8.2檔案系統的實現 223
6.9檔案的共享和保護 224
6.9.1檔案的共享 224
6.9.2檔案保護 226
6.9.3檔案系統的可靠性 228
6.10Linux的檔案系統 228
6.10.1虛擬檔案系統VFS 228
6.10.2EXT2檔案系統 230
6.11小結 232
6.12思考練習 233
第7章設備管理 235
7.1設備管理的概念 235
7.1.1設備的分類 235
7.1.2設備管理的任務和功能 237
7.1.3I/O系統結構 238
7.2I/O控制方式 242
7.2.1程式直接控制方式 242
7.2.2中斷方式 243
7.2.3DMA方式 245
7.2.4通道控制方式 246
7.3中斷技術 249
7.3.1中斷的基本概念 249
7.3.2中斷的作用 249
7.3.3中斷的分類與優先權 250
7.3.4軟中斷 251
7.3.5中斷處理過程 251
7.4緩衝技術 252
7.4.1緩衝的引入 252
7.4.2緩衝的種類 253
7.4.3緩衝池的管理 254
7.5設備分配 257
7.5.1設備分配中的數據結構 257
7.5.2設備分配的原則 259
7.5.4虛擬設備——共享印表機 261
7.5.5SPOOLing系統的特點 262
7.6I/O軟體 262
7.6.1I/O軟體的設計目標和原則 262
7.6.2I/O中斷處理程式 264
7.6.4設備無關軟體 267
7.6.5用戶層I/O軟體 269
7.7磁碟調度和管理 270
7.7.1磁碟結構 270
7.7.3磁碟調度 271
7.7.5磁碟管理 276
7.8Linux的設備管理 280
7.8.1設備檔案 280
7.8.2字元設備管理 281
7.8.3塊設備管理 282
7.8.4網路設備管理 283
7.9小結 284
7.10思考練習 285
第8章作業系統的安全和保護 287
8.1計算機系統和作業系統安全 287
8.1.1計算機系統安全概述 287
8.1.2作業系統安全及信息安全評價準則 288
8.1.3計算機安全威脅分類 290
8.2作業系統安全機制 290
8.2.1數據加密的基本概念 290
8.2.2數字簽名和身份認證 292
8.2.3授權機制 294
8.2.4審計 295
8.3計算機病毒 295
8.3.1計算機病毒的基本概念 295
8.3.2計算機病毒的類型 297
8.3.3病毒的預防和檢測 299
8.4訪問控制機制 301
8.4.1保護域 301
8.4.2訪問矩陣 302
8.4.3訪問矩陣的實現 303
8.5Linux的安全機制 304
8.6小結 306
8.7思考練習 307
參考文獻 308
3.2.2進程的狀態 45
3.3進程控制 48
3.3.1進程控制的概念 48
3.3.2進程控制機構 48
3.3.3進程創建 49
3.3.4進程撤銷 50
3.3.5進程阻塞 50
3.3.6進程喚醒 50
3.4執行緒 50
3.4.1執行緒的概念 51
3.4.2執行緒的特點與狀態 51
3.4.3執行緒的實現 52
3.4.4多執行緒模型 52
3.4.5執行緒池 54
3.5處理器調度 54
3.5.1處理器調度的層次 54
3.5.2選擇調度算法的準則 56
3.5.3作業調度 57
3.5.4進程調度 58
3.6調度算法 59
3.6.1先來先服務 59
3.6.2短作業(進程)優先 60
3.6.3優先權調度 60
3.6.4時間片輪轉法 61
3.6.5多級佇列調度算法 62
3.6.6多級反饋佇列調度 63
3.6.7高回響比優先調度 64
3.7多處理器調度和實時調度 65
3.7.1多處理器調度 65
3.7.2實時調度 65
3.8Linux的進程管理 66
3.8.1Linux的進程描述符 66
3.8.2Linux的進程狀態及轉換 68
3.8.3Linux進程的調度 69
3.8.4Linux進程的創建和終止 70
3.8.5Linux的執行緒管理 71
3.9小結 72
3.10思考練習 73
第4章進程同步與死鎖 75
4.1進程的同步和互斥 75
4.1.1進程的同步 75
4.1.2進程互斥 76
4.1.4信號量的使用方法 84
4.1.5信號量的套用實例 85
4.2經典同步問題 87
4.2.1生產者—消費者問題 87
4.2.2讀者—寫者問題 89
4.2.4理髮師問題 94
4.3管程 95
4.3.1管程的基本概念 96
4.3.2條件變數 97
4.3.3使用管程解決生產者—消費者問題 98
4.4進程通信 99
4.4.1進程通信的概念 99
4.4.2進程通信的方式 100
4.4.3訊息傳遞系統 101
4.4.4訊息緩衝佇列通信機制 103
4.4.5管道通信方式 105
4.4.6Linux的進程通信 106
4.5死鎖 111
4.5.1死鎖的概念 111
4.5.2死鎖產生的原因和必要條件 112
4.5.3死鎖的描述—資源分配圖 114
4.5.4處理死鎖的方法 116
4.6死鎖的預防和避免 117
4.6.1死鎖的預防 117
4.6.2死鎖的避免 118
4.7死鎖的檢測和解除 124
4.7.1死鎖的檢測 125
4.7.2死鎖的解除 127
4.8小結 128
4.9思考練習 129
第5章存儲管理 131
5.1存儲管理的概念 131
5.1.1多級存儲結構 132
5.1.2程式的運行過程 134
5.1.3存儲管理的任務和功能 136
5.1.4存儲管理方式 141
5.2連續記憶體分配 142
5.2.1單一連續分配 143
5.2.2固定分區分配 143
5.2.3動態分區分配 145
5.2.4可重定位分區分配 149
5.3記憶體不足時的管理 151
5.3.1覆蓋 151
5.3.2交換 152
5.4分頁存儲管理 153
5.4.1分頁存儲管理的基本原理 153
5.4.2地址映射 155
5.4.3頁表的結構 158
5.4.4頁面的共享 160
5.5分段存儲管理 161
5.5.1分段存儲管理方式的引入 161
5.5.2分段存儲管理的基本原理 162
5.5.3段的共享和保護 164
5.5.4段頁式存儲管理 166
5.6.1虛擬存儲器的引入 168
5.6.2虛擬存儲器的實現方法 170
5.6.3虛擬存儲器的特徵 170
5.7請求分頁存儲管理技術 171
5.7.1請求分頁存儲管理的硬體支持 171
5.7.3請求分頁系統記憶體塊的分配 178
5.7.4工作集理論和抖動問題 180
5.8Linux的存儲管理 182
5.8.1物理記憶體管理 182
5.8.2進程虛擬地址空間管理 184
5.9小結 187
5.10思考練習 188
第6章檔案管理 190
6.1檔案的概念 190
6.1.1檔案及其分類 190
6.1.2檔案的屬性 193
6.2檔案目錄 193
6.2.1檔案控制塊和檔案目錄 194
6.2.2檔案目錄結構 196
6.2.3目錄的實現 199
6.3檔案和目錄操作 200
6.3.1檔案操作 200
6.3.2目錄操作 202
6.4檔案的邏輯結構 203
6.4.1檔案邏輯結構的類型 203
6.4.2順序檔案 205
6.4.3索引檔案 205
6.4.4索引順序檔案 206
6.5檔案的物理結構 207
6.5.1連續檔案 207
6.5.2連結檔案 208
6.5.3隨機檔案 209
6.5.4檔案物理結構比較 210
6.6檔案存儲空間的分配 210
6.6.1連續分配 211
6.6.2連結分配 212
6.6.3索引分配 217
6.7檔案存儲空間的管理 219
6.7.1空閒檔案目錄 219
6.7.2空閒鍊表法 220
6.7.3位示圖 222
6.8檔案系統 222
6.8.1檔案系統的結構 222
6.8.2檔案系統的實現 223
6.9檔案的共享和保護 224
6.9.1檔案的共享 224
6.9.2檔案保護 226
6.9.3檔案系統的可靠性 228
6.10Linux的檔案系統 228
6.10.1虛擬檔案系統VFS 228
6.10.2EXT2檔案系統 230
6.11小結 232
6.12思考練習 233
第7章設備管理 235
7.1設備管理的概念 235
7.1.1設備的分類 235
7.1.2設備管理的任務和功能 237
7.1.3I/O系統結構 238
7.2I/O控制方式 242
7.2.1程式直接控制方式 242
7.2.2中斷方式 243
7.2.3DMA方式 245
7.2.4通道控制方式 246
7.3中斷技術 249
7.3.1中斷的基本概念 249
7.3.2中斷的作用 249
7.3.3中斷的分類與優先權 250
7.3.4軟中斷 251
7.3.5中斷處理過程 251
7.4緩衝技術 252
7.4.1緩衝的引入 252
7.4.2緩衝的種類 253
7.4.3緩衝池的管理 254
7.5設備分配 257
7.5.1設備分配中的數據結構 257
7.5.2設備分配的原則 259
7.5.4虛擬設備——共享印表機 261
7.5.5SPOOLing系統的特點 262
7.6I/O軟體 262
7.6.1I/O軟體的設計目標和原則 262
7.6.2I/O中斷處理程式 264
7.6.4設備無關軟體 267
7.6.5用戶層I/O軟體 269
7.7磁碟調度和管理 270
7.7.1磁碟結構 270
7.7.3磁碟調度 271
7.7.5磁碟管理 276
7.8Linux的設備管理 280
7.8.1設備檔案 280
7.8.2字元設備管理 281
7.8.3塊設備管理 282
7.8.4網路設備管理 283
7.9小結 284
7.10思考練習 285
第8章作業系統的安全和保護 287
8.1計算機系統和作業系統安全 287
8.1.1計算機系統安全概述 287
8.1.2作業系統安全及信息安全評價準則 288
8.1.3計算機安全威脅分類 290
8.2作業系統安全機制 290
8.2.1數據加密的基本概念 290
8.2.2數字簽名和身份認證 292
8.2.3授權機制 294
8.2.4審計 295
8.3計算機病毒 295
8.3.1計算機病毒的基本概念 295
8.3.2計算機病毒的類型 297
8.3.3病毒的預防和檢測 299
8.4訪問控制機制 301
8.4.1保護域 301
8.4.2訪問矩陣 302
8.4.3訪問矩陣的實現 303
8.5Linux的安全機制 304
8.6小結 306
8.7思考練習 307
參考文獻 308

相關詞條

熱門詞條

聯絡我們