作業系統(第5版)

《作業系統(第5版)》是2019年6月電子工業出版社出版的圖書,作者是羅宇、文艷軍。

出版信息
作業系統(第5版)
作譯者:羅宇,文艷軍
出版時間:2019-06
千 字 數:571
版次:01-01
頁 數:324
開本:16開
I S B N :9787121365805
內容簡介
本書是“十二五”普通高等教育本科國家級規劃教材,也是國防科技大學國家精品課程教材和國家優秀教學團隊教學成果。作業系統作為計算機系統的核心繫統軟體,負責控制和管理整個計算機系統的資源並組織用戶以進程為單位高效協調地使用這些資源。本書以多道程式技術為基礎,以通用作業系統主要功能部件為主線,介紹作業系統的概念、組成、功能、處理流程、設計等內容,包括:緒論,作業系統運行機制與用戶界面,進程與處理機管理,進程同步與通信、進程死鎖,存儲管理,設備管理,檔案系統,並行與分散式作業系統,保護與安全,系統虛擬機,Linux作業系統實例。附錄提供與課程配套的實驗與課程設計參考資料。配套有實驗教材《Linux 作業系統實驗教程》,為任課教師免費提供電子課件和習題解答。
第1章 緒論 1
1.1 什麼是作業系統 1
1.1.1 計算機系統的軟體構成 1
1.1.2 作業系統作為特殊子程式 2
1.1.3 作業系統作為資源管理者 3
1.1.4 作業系統提供程式並發運行機制 4
1.2 作業系統的發展歷史 4
1.2.1 監督程式 5
1.2.2 專用作業系統 8
1.2.3 多種方式作業系統 12
1.2.4 個人計算機作業系統、並行與分散式作業系統及其發展 12
1.3 主要作業系統介紹 14
1.3.1 Windows系列及MS DOS 14
1.3.2 UNIX大家族 16
1.3.3 自由軟體Linux和freeBSD等 19
習題1 23
第2章 作業系統運行機制與用戶界面 25
2.1 中斷和異常 25
2.1.1 中斷和異常的區別 25
2.1.2 中斷分級 26
2.2 中斷/異常回響和處理 28
2.2.1 中斷/異常回響 28
2.2.2 中斷/異常處理 29
2.3 作業系統運行模式 33
2.4 系統調用 35
2.5 人機界面 38
2.5.1 命令語言 39
2.5.2 圖形化的用戶界面 40
2.6 小結 42
習題2 42
第3章 進程與處理機管理 44
3.1 進程描述 44
3.1.1 進程定義 45
3.1.2 進程控制塊 46
3.2 進程狀態 48
3.2.1 進程的創建與結束 49
3.2.2 進程狀態變化模型 50
3.2.3 進程掛起 52
3.3 進程控制與調度 53
3.3.1 進程運行 53
3.3.2 進程調度 55
3.3.3 進程調度算法 58
3.4 作業與進程的關係 62
3.5 執行緒的引入 64
3.6 小結 66
習題3 66
第4章 進程同步與通信、進程死鎖 68
4.1 並行編程 68
4.1.1 並行編程方法 68
4.1.2 作業系統的支持 69
4.2 進程的同步與互斥 70
4.2.1 同步與臨界段問題 71
4.2.2 解決臨界段問題的硬體實現方法 72
4.2.3 信號量 74
4.2.4 管程 77
4.2.5 進程同步與互斥舉例 77
4.3 訊息傳遞 81
4.3.1 訊息傳遞原理 82
4.3.2 訊息傳遞示例 83
4.3.3 管道通信簡介 84
4.4 死鎖 85
4.4.1 死鎖示例 85
4.4.2 死鎖定義 86
4.4.3 死鎖防止 88
4.4.4 死鎖避免 90
4.4.5 死鎖檢測 92
4.4.6 死鎖的恢復 93
4.4.7 死鎖綜合處理 94
4.5 小結 94
習題4 95
第5章 存儲管理 99
5.1 連續空間分配 99
5.1.1 單道連續分配法 99
5.1.2 多道連續固定分區法 101
5.1.3 多道連續可變分區法 103
5.2 不連續空間分配 105
5.2.1 頁式管理 106
5.2.2 段式管理 109
5.2.3 段頁式管理 112
5.2.4 改進的頁式管理 113
5.3 虛擬存儲管理 114
5.3.1 頁式虛存的基本思想 114
5.3.2 頁式虛存管理實現 115
5.3.3 多級頁表 117
5.3.4 頁替換策略 119
5.4 小結 125
習題5 126
第6章 設備管理 129
6.1 I/O硬體概念 129
6.1.1 常見外部設備分類 129
6.1.2 設備控制器(I/O部件) 130
6.1.3 I/O控制方式 131
6.1.4 I/O控制方式的發展過程 134
6.2 設備I/O子系統 134
6.2.1 設備的使用方法 134
6.2.2 I/O層次結構 136
6.2.3 設備驅動程式 139
6.2.4 緩衝技術 141
6.3 存儲設備 144
6.3.1 常見存儲外部設備 144
6.3.2 磁碟調度 147
6.3.3 磁碟陣列 150
6.4 小結 154
習題6 154
第7章 檔案系統 156
7.1 檔案結構 156
7.1.1 檔案概念 156
7.1.2 檔案的邏輯結構 156
7.1.3 檔案的物理存儲 158
7.1.4 檔案控制塊 160
7.2 檔案目錄結構 161
7.2.1 一級目錄結構 161
7.2.2 二級目錄結構 162
7.2.3 樹狀目錄結構 162
7.2.4 無環圖目錄結構 163
7.2.5 目錄操作 164
7.3 檔案存儲器空間布局與管理 165
7.4 檔案訪問接口 166
7.4.1 傳統檔案系統調用的實現 167
7.4.2 存儲映射檔案訪問 169
7.5 檔案保護 169
7.5.1 檔案訪問保護 170
7.5.2 檔案備份 171
7.6 檔案系統的基本模型 172
7.7 FAT檔案系統磁碟布局 175
7.8 小結 176
習題7 177
第8章 並行與分散式作業系統 178
8.1 並行作業系統 178
8.1.1 對稱多處理機 178
8.1.2 執行緒概念 180
8.1.3 執行緒實現 186
8.1.4 執行緒調度 190
8.2 分散式系統 194
8.2.1 分散式系統特點 195
8.2.2 幾種分散式系統套用模型 197
8.2.3 分散式系統實現模型 200
8.2.4 分散式作業系統主要研究內容 202
8.2.5 分散式系統基礎——通信協定層次簡介 203
8.3 小結 206
習題8 207
第9章 保護與安全 208
9.1 安全威脅 208
9.1.1 病毒 208
9.1.2 蠕蟲 209
9.1.3 特洛伊木馬 209
9.1.4 隱蔽通道 210
9.2 安全機制 210
9.2.1 硬體保護機制 210
9.2.2 標識與鑑別 211
9.2.3 存取控制 213
9.2.4 最小特權管理 214
9.2.5 安全審計 215
9.2.6 入侵檢測 216
9.2.7 網路信息安全技術 217
9.2.8 軟體漏洞防護技術 219
9.3 Linux的安全機制 221
9.4 安全評測標準 223
9.4.1 TCSEC 223
9.4.2 GB 17859-1999 224
9.5 小結 225
習題9 226
第10章 系統虛擬機 227
10.1 虛擬機概述 227
10.1.1 為什麼需要虛擬機 227
10.1.2 虛擬機管理器的分類 228
10.1.3 系統虛擬化的優勢及發展目標 228
10.1.4 虛擬機管理器的架構 229
10.2 CPU的虛擬化 230
10.2.1 軟體完全虛擬化 230
10.2.2 硬體輔助虛擬化 230
10.3 記憶體的虛擬化 232
10.3.1 軟體實現記憶體虛擬化 232
10.3.2 EPT頁表輔助記憶體虛擬化 233
10.4 I/O設備的虛擬化 233
10.4.1 完全的軟體I/O設備虛擬化 233
10.4.2 半虛擬化設備模擬 234
10.5 小結 235
習題10 235
第11章 Linux作業系統實例 236
11.1 進程管理 236
11.1.1 進程與進程描述符 236
11.1.2 進程狀態及切換時機 237
11.1.3 進程的調度算法 239
11.1.4 進程的創建與消亡 239
11.2 存儲管理 242
11.2.1 物理記憶體的管理 242
11.2.2 進程地址空間的管理 244
11.3 檔案系統 248
11.3.1 VFS 248
11.3.2 EXT2 253
11.3.3 主要檔案系統中系統調用的處理流程 256
11.4 設備管理 258
11.4.1 設備檔案的概念 258
11.4.2 設備模型基礎 259
11.4.3 相關數據結構 260
11.4.4 塊設備檔案的open()和read()操作 262
11.5 中斷、異常及系統調用 263
11.5.1 中斷/異常的基本知識 263
11.5.2 異常處理函式 264
11.5.3 系統調用 264
11.5.4 中斷的處理 265
11.5.5 軟中斷 267
11.6 SysV進程間通信 268
11.6.1 共有的特性 268
11.6.2 信號量 270
11.6.3 訊息佇列 271
11.6.4 共享記憶體 273
習題11 275
附錄A bash腳本編程簡介 276
A.1 注釋和簡單命令 276
A.2 環境變數 276
A.3 控制結構 277
A.3.1 if語句 277
A.3.2 case語句 278
A.3.3 for語句 278
A.3.4 while語句和until語句 279
A.4 函式 279
附錄B 實現一個簡單的Linux命令解釋器 281
B.1 myshell的語法 281
B.2 程式框架 281
B.3 命令行的語法分析 282
B.4 簡單命令的執行 284
B.5 Makefile 284
附錄C Linux常用命令 285
C.1 用戶終端命令 285
C.2 vi編輯器的使用 292
附錄D Linux常用函式 295
D.1 進程管理函式 295
D.2 檔案管理函式 296
D.3 進程間通信函式 298
D.4 多執行緒庫函式 301
附錄E Linux核心綜合實驗指南 303
E1 實驗目標與內容 303
E2 實驗基礎知識 303
E2.1 核心模組 303
E2.2 系統調用 307
E2.3 記憶體管理 309
E2.4 其他 311
E3 實驗設計 313
E4 實驗步驟 314
E5 常見問題 314
參考文獻 316

相關詞條

熱門詞條

聯絡我們