操作系統(tǒng)主要涉及對(duì)計(jì)算機(jī)軟/硬件資源的控制和管理。本書(shū)對(duì)操作系統(tǒng)的實(shí)現(xiàn)原理進(jìn)行了詳細(xì)和深入的分析,力求做到全面、系統(tǒng)、準(zhǔn)確和通俗,以便讀者透徹理解操作系統(tǒng)的設(shè)計(jì)思想,深化對(duì)基本概念的掌握。全書(shū)共分6章,主要包括引論、處理器管理、進(jìn)程同步與通信、存儲(chǔ)管理、設(shè)備管理和文件管理。 本書(shū)結(jié)構(gòu)清晰、內(nèi)容豐富、取材新穎,既強(qiáng)調(diào)知識(shí)的實(shí)用性,又注重理論的完整性,可作為高等院校計(jì)算機(jī)及相關(guān)專業(yè)的操作系統(tǒng)課程教材,也可作為從事計(jì)算機(jī)工作及報(bào)考研究生人員的參考資料。
黑新宏,1994.9-1998.7 西安理工大學(xué) 計(jì)算機(jī)及其應(yīng)用 學(xué)士;2000.9-2003.4 西安理工大學(xué) 計(jì)算機(jī)應(yīng)用技術(shù) 碩士;2005.4-2008.3 日本大學(xué) 理工學(xué)部 計(jì)算機(jī)科學(xué) 博士;2008.7-2013.11 西安理工大學(xué)計(jì)算機(jī)科學(xué)與工程學(xué)院 副教授;2013.12至今 西安理工大學(xué)計(jì)算機(jī)科學(xué)與工程學(xué)院 教授;2018.1至今,西安理工大學(xué)計(jì)算機(jī)學(xué)院教授、院長(zhǎng)。
目錄
第1章 引論 1
1.1 操作系統(tǒng)的概念 1
1.1.1 什么是操作系統(tǒng) 1
1.1.2 操作系統(tǒng)的主要功能 4
1.1.3 操作系統(tǒng)的基本特征 6
1.2 操作系統(tǒng)的邏輯結(jié)構(gòu)和運(yùn)行模型 8
1.2.1 用戶態(tài)和內(nèi)核態(tài)的劃分 8
1.2.2 操作系統(tǒng)的邏輯結(jié)構(gòu) 9
1.2.3 操作系統(tǒng)的運(yùn)行模型 12
1.3 操作系統(tǒng)的形成與發(fā)展 12
1.3.1 操作系統(tǒng)的形成時(shí)期 13
1.3.2 操作系統(tǒng)的成熟時(shí)期 15
1.3.3 操作系統(tǒng)的進(jìn)一步發(fā)展時(shí)期 18
1.4 主要操作系統(tǒng)的類型 20
1.4.1 批處理操作系統(tǒng) 20
1.4.2 分時(shí)操作系統(tǒng) 21
1.4.3 實(shí)時(shí)操作系統(tǒng) 23
1.4.4 微機(jī)操作系統(tǒng) 24
1.4.5 網(wǎng)絡(luò)操作系統(tǒng) 26
1.4.6 多CPU操作系統(tǒng) 27
1.4.7 分布式操作系統(tǒng) 29
1.4.8 嵌入式操作系統(tǒng) 31
1.5 操作系統(tǒng)安全性概述 32
1.5.1 操作系統(tǒng)安全的重要性 32
1.5.2 操作系統(tǒng)的安全觀點(diǎn) 33
1.5.3 實(shí)現(xiàn)操作系統(tǒng)安全性的基本技術(shù) 33
1.6 操作系統(tǒng)運(yùn)行基礎(chǔ) 34
1.6.1 處理器及工作模式 34
1.6.2 中斷技術(shù) 38
1.6.3 系統(tǒng)調(diào)用 42
習(xí)題1 44
第2章 處理器管理 49
2.1 進(jìn)程的概念 49
2.1.1 程序的順序執(zhí)行 49
2.1.2 程序的并發(fā)執(zhí)行 50
2.1.3 進(jìn)程 52
2.2 進(jìn)程的狀態(tài)及轉(zhuǎn)換 55
2.2.1 兩狀態(tài)進(jìn)程模型 55
2.2.2 三狀態(tài)進(jìn)程模型 55
2.2.3 五狀態(tài)進(jìn)程模型 57
2.2.4 進(jìn)程的掛起 58
2.2.5 進(jìn)程控制塊 60
2.3 進(jìn)程控制 62
2.3.1 進(jìn)程切換 62
2.3.2 進(jìn)程控制原語(yǔ) 64
2.4 處理器調(diào)度 67
2.4.1 作業(yè)與進(jìn)程的關(guān)系 67
2.4.2 CPU的三級(jí)調(diào)度 69
2.4.3 處理器調(diào)度隊(duì)列模型 71
2.4.4 進(jìn)程調(diào)度的方式和時(shí)機(jī) 73
2.5 單處理器調(diào)度算法 75
2.5.1 調(diào)度原則 76
2.5.2 常用調(diào)度算法 77
2.5.3 實(shí)時(shí)調(diào)度 83
2.6 線程 84
2.6.1 線程的引入 85
2.6.2 線程的概念 86
2.6.3 線程與傳統(tǒng)進(jìn)程的比較 87
2.6.4 線程實(shí)現(xiàn)原理 88
習(xí)題2 89
第3章 進(jìn)程同步與通信 95
3.1 進(jìn)程同步的基本概念 95
3.1.1 并發(fā)進(jìn)程的關(guān)系 95
3.1.2 進(jìn)程的互斥與同步 96
3.1.3 臨界資源與臨界區(qū) 97
3.2 進(jìn)程互斥方法 99
3.2.1 實(shí)現(xiàn)進(jìn)程互斥的硬件方法 99
3.2.2 實(shí)現(xiàn)進(jìn)程互斥的軟件方法 101
3.3 信號(hào)量機(jī)制 103
3.3.1 信號(hào)量 103
3.3.2 使用信號(hào)量實(shí)現(xiàn)進(jìn)程互斥 107
3.3.3 使用信號(hào)量實(shí)現(xiàn)進(jìn)程同步 108
3.4 經(jīng)典互斥與同步問(wèn)題 111
3.4.1 生產(chǎn)者?消費(fèi)者問(wèn)題 111
3.4.2 哲學(xué)家進(jìn)餐問(wèn)題 114
3.4.3 讀者?寫(xiě)者問(wèn)題 117
3.4.4 睡眠理發(fā)師問(wèn)題 120
3.5 經(jīng)典互斥與同步問(wèn)題的應(yīng)用 122
3.5.1 緩沖區(qū)數(shù)據(jù)傳送問(wèn)題 122
3.5.2 吃水果問(wèn)題 123
3.5.3 汽車過(guò)橋問(wèn)題 125
3.6 管程機(jī)制 126
3.6.1 條件變量與管程結(jié)構(gòu) 126
3.6.2 生產(chǎn)者-消費(fèi)者問(wèn)題的管程解決方法 131
3.6.3 哲學(xué)家進(jìn)餐問(wèn)題的管程解決方法 133
3.6.4 讀者-寫(xiě)者問(wèn)題的管程解決方法 134
3.6.5 睡眠理發(fā)師問(wèn)題的管程解決方法 136
3.6.6 吃水果問(wèn)題的管程解決方法 137
3.7 進(jìn)程通信 139
3.7.1 進(jìn)程通信的概念 139
3.7.2 共享內(nèi)存通信方式 140
3.7.3 消息緩沖通信方式 141
3.7.4 信箱通信方式 144
3.7.5 管道通信方式 145
3.8 死鎖 147
3.8.1 產(chǎn)生死鎖的原因和必要條件 148
3.8.2 死鎖的預(yù)防 151
3.8.3 死鎖的避免 153
3.8.4 死鎖的檢測(cè)與解除 158
習(xí)題3 162
第4章 存儲(chǔ)管理 169
4.1 程序的鏈接和裝入 169
4.1.1 邏輯地址和物理地址 170
4.1.2 程序的鏈接 170
4.1.3 程序裝入與地址定位 171
4.2 存儲(chǔ)器及存儲(chǔ)管理的基本功能 174
4.2.1 多級(jí)存儲(chǔ)器體系 175
4.2.2 內(nèi)存的分配與回收以及地址轉(zhuǎn)換 175
4.2.3 內(nèi)存的共享、保護(hù)及擴(kuò)充 177
4.3 分區(qū)存儲(chǔ)管理 179
4.3.1 單一連續(xù)分區(qū)存儲(chǔ)管理 179
4.3.2 固定分區(qū)存儲(chǔ)管理 181
4.3.3 可變分區(qū)存儲(chǔ)管理 183
4.3.4 覆蓋與交換技術(shù) 188
4.4 分頁(yè)存儲(chǔ)管理 190
4.4.1 分頁(yè)存儲(chǔ)管理的基本原理 190
4.4.2 分頁(yè)存儲(chǔ)管理的地址轉(zhuǎn)換與存儲(chǔ)保護(hù) 192
4.4.3 兩級(jí)頁(yè)表和多級(jí)頁(yè)表 195
4.4.4 內(nèi)存物理塊的分配與回收 198
4.5 分段存儲(chǔ)管理 198
4.5.1 分段存儲(chǔ)管理的基本原理 198
4.5.2 分段存儲(chǔ)管理的地址轉(zhuǎn)換與存儲(chǔ)保護(hù) 200
4.5.3 分段存儲(chǔ)管理的優(yōu)缺點(diǎn) 203
4.6 段頁(yè)式存儲(chǔ)管理 204
4.6.1 段頁(yè)式存儲(chǔ)管理的基本原理 204
4.6.2 段頁(yè)式存儲(chǔ)管理的地址轉(zhuǎn)換和優(yōu)缺點(diǎn) 205
4.7 虛擬存儲(chǔ)管理 207
4.7.1 虛擬存儲(chǔ)器的概念 207
4.7.2 請(qǐng)求分頁(yè)存儲(chǔ)管理 209
4.7.3 請(qǐng)求分段存儲(chǔ)管理 219
4.7.4 請(qǐng)求段頁(yè)式存儲(chǔ)管理 223
習(xí)題4 226
第5章 設(shè)備管理 233
5.1 設(shè)備管理概述 233
5.1.1 設(shè)備的分類 233
5.1.2 設(shè)備管理的目標(biāo)和功能 234
5.2 I/O設(shè)備管理系統(tǒng)的組成 236
5.2.1 I/O設(shè)備管理系統(tǒng)的硬件組織 236
5.2.2 I/O設(shè)備管理系統(tǒng)的軟件組織 241
5.3 I/O設(shè)備控制方式 247
5.3.1 程序直接I/O控制方式 247
5.3.2 中斷I/O控制方式 248
5.3.3 DMA I/O控制方式 249
5.3.4 通道I/O控制方式 251
5.3.5 4種I/O控制方式的對(duì)比 253
5.4 緩沖技術(shù)與虛擬設(shè)備技術(shù) 254
5.4.1 緩沖技術(shù) 254
5.4.2 虛擬設(shè)備技術(shù) 259
5.5 設(shè)備的分配與回收 261
5.5.1 用于設(shè)備分配的數(shù)據(jù)結(jié)構(gòu) 261
5.5.2 設(shè)備分配 263
5.5.3 設(shè)備回收 267
5.6 磁盤(pán)存儲(chǔ)器管理 268
5.6.1 存儲(chǔ)設(shè)備概述 268
5.6.2 磁盤(pán)調(diào)度 269
5.6.3 提高磁盤(pán)I/O速度的方法 273
5.6.4 磁盤(pán)陣列(RAID) 275
習(xí)題5 279
第6章 文件管理 283
6.1 文件系統(tǒng)的基本概念 283
6.1.1 文件系統(tǒng)的引入 283
6.1.2 文件與文件系統(tǒng) 284
6.2 文件的組織結(jié)構(gòu) 288
6.2.1 文件的邏輯結(jié)構(gòu) 288
6.2.2 文件的物理結(jié)構(gòu) 290
6.3 文件目錄與文件操作 296
6.3.1 文件控制塊與索引節(jié)點(diǎn) 297
6.3.2 目錄結(jié)構(gòu) 300
6.3.3 文件目錄查找 303
6.3.4 文件操作 303
6.4 文件存儲(chǔ)空間管理 306
6.4.1 空閑分區(qū)表法 306
6.4.2 空閑塊鏈法 307
6.4.3 位示圖法 309
6.5 文件共享與文件安全 309
6.5.1 早期的文件共享方法 310
6.5.2 目前常用的文件共享方法 311
6.5.3 文件系統(tǒng)的安全 313
6.5.4 文件系統(tǒng)的可靠性 314
6.5.5 文件保護(hù) 316
習(xí)題6 318
參考文獻(xiàn) 322