《作業系統實用教程(第二版)》是2006年清華大學出版社出版的圖書,作者是任愛華。
基本介紹
- 書名:作業系統實用教程(第二版)
- 作者:任愛華
- ISBN:9787302077480
- 定價:36元
- 出版社:清華大學出版社
- 出版時間:2006年
- 裝幀:平裝
圖書簡介,目錄,
圖書簡介
本書著重講述作業系統的原理和概念,並且以此來指導作業系統的設計和實現。
全書共分8章。第1章概論,介紹作業系統的定義、發展、現狀和它在計算機系統中的重要作用。第2章介紹作業系統用戶接口,Linux的安裝與使用。第3-7章主要討論作業系統的基本原理和概念,包括進程管理、並發程式設計、存儲管理、設備管理、檔案管理以及磁碟管理等內容。在闡述基本原理和概念的基礎上,為了使讀者對作業系統有一個整體概念,將所學知識能融會貫通,每章都從問題的提出開始,進入到對具體作業系統原理的介紹,然後利用Linux相關部分有針對性地進行實例介紹。第8章介紹作業系統的較深入的內容。
目錄
第1章概論1
1.1計算機與作業系統1
1.1.1計算機發展簡介1
1.1.2作業系統的發展4
1.1.3存儲程式式計算機的結構和特點19
1.2作業系統的基本概念21
1.2.1作業系統的定義及其在計算機系統中的地位21
1.2.2作業系統的功能23
1.2.3作業系統的特性及其應解決的基本問題25
1.3作業系統的整體框架27
1.3.1計算機系統的層次劃分28
1.3.2作業系統提供抽象的計算環境30
1.3.3作業系統的總體結構31
1.3.4支撐作業系統的知識框架41
1.4從不同角度刻畫作業系統42
1.4.1用戶觀點42
1.4.2資源管理觀點42
1.4.3進程觀點44
1.4.4模組分層觀點45
1.5安全作業系統46
1.5.1主要的安全評價準則46
1.5.2可信計算機系統安全評價準則TCSEC48
1.5.3安全標準套用分析50
1.6小結51
1.7習題52
第2章作業系統接口53
2.1概述53
2.1.1系統調用53
2.1.2shell命令及其解釋程式58
2.2Linux的安裝67
2.2.1安裝前的準備67
2.2.2建立硬碟分區68
2.2.3安裝類型69
2.2.4安裝過程70
2.2.5作業系統的安裝概念70
2.3Linux的使用71
2.3.1使用常識71
2.3.2檔案操作命令72
2.3.3文本編輯命令80
2.3.4shell的特殊字元82
2.3.5進程控制命令86
2.3.6網路配置和網路套用工具88
2.3.7在線上幫助92
2.4系統管理92
2.4.1超級用戶93
2.4.2用戶和用戶組管理93
2.4.3檔案系統管理95
2.4.4Linux原始碼檔案安置的目錄結構99
2.5小結100
2.6習題100
第3章進程機制與並發程式設計101
3.1概述101
3.2進程的基本概念102
3.2.1計算機執行程式的最基本的方式——單道程式的執行102
3.2.2多個程式駐留記憶體——多個程式依次順序執行102
3.2.3進程的概念和結構——多個程式並發執行102
3.2.4進程的定義105
3.3進程的狀態和進程控制塊107
3.3.1進程的狀態及狀態變化圖107
3.3.2進程控制塊109
3.4進程控制110
3.4.1原語110
3.4.2進程控制原語111
3.5執行緒的基本概念112
3.5.1執行緒的引入112
3.5.2執行緒與進程的比較113
3.6進程調度114
3.6.1進程調度的職能114
3.6.2進程調度算法115
3.6.3調度時的進程狀態圖117
3.7進程通信118
3.7.1臨界資源和臨界區118
3.7.2進程的通信方式之一——同步與互斥119
3.7.3兩上經典的同步/互斥問題122
3.7.4結構化的同步/互斥機制——管程124
3.7.5進程的通信方式之二——訊息緩衝126
3.8死鎖128
3.8.1死鎖原因和必要條件128
3.8.2預防死鎖130
3.8.3發現死鎖132
3.8.4解除死鎖133
3.9Linux中的進程134
3.9.1Linux進程控制塊PCB簡介134
3.9.2進程的創建140
3.9.3進程調度142
3.9.4進程的退出與消亡144
3.9.5相關的系統調用145
3.9.6信號147
3.9.7信號量與PV操作148
3.9.8等待佇列149
3.9.9管道150
3.9.10Linux核心體系結構151
3.10並發程式設計實例152
3.11小結154
3.12習題154
第4章存儲管理156
4.1概述156
4.2分區式存儲管理157
4.2.1地址重定位157
4.2.2固定式分區和可變式分區159
4.2.3覆蓋與交換技術163
4.3分頁式存儲管理165
4.3.1虛擬存儲器165
4.3.2分頁式存儲管理的實現方法166
4.3.3頁表和快表168
4.3.4頁面交換172
4.3.5頁式存儲管理的保護措施174
4.3.6工作集模型174
4.4分段存儲管理176
4.4.1分段存儲管理的特點176
4.4.2段式地址變換176
4.4.3擴充段表功能177
4.5段頁式存儲管理178
4.6用戶編程中的記憶體管理實例分析180
4.7Linux記憶體管理概述183
4.7.1基本思想183
4.7.2Linux中的頁表184
4.7.3記憶體頁的分配和釋放185
4.7.4記憶體映射和需求分頁185
4.7.5記憶體交換187
4.7.6頁目錄和頁表的數據結構表示188
4.8小結189
4.9習題189
第5章輸入/輸出系統190
5.1概述191
5.2輸入/輸出硬體193
5.2.1輸入/輸出設備193
5.2.2設備控制器196
5.2.3通道197
5.2.4存儲器直接存取(DMA)設備198
5.3輸入/輸出軟體199
5.3.1輸入/輸出軟體的作用199
5.3.2數據傳送控制方式200
5.3.3中斷處理技術206
5.3.4設備驅動程式209
5.3.5與設備無關的I/O軟體210
5.3.6用戶層的輸入/輸出軟體210
5.3.7設備分配211
5.3.8I/O進程控制213
5.3.9緩衝技術216
5.4Linux輸入/輸出系統概述219
5.4.1Linux輸入/輸出的過程概述219
5.4.2Linux設備管理基礎220
5.4.3Linux的中斷處理224
5.4.4設備驅動程式的框架225
5.4.5並口列印設備驅動程式227
5.4.6Linux輸入/輸出實現層次及數據結構230
5.5小結231
5.6習題232
第6章檔案系統234
6.1概述234
6.2檔案235
6.2.1檔案的概念235
6.2.2檔案的分類235
6.2.3檔案的操作236
6.2.4檔案的轉儲和恢復236
6.3目錄237
6.3.1目錄的概念237
6.3.2目錄的層次結構238
6.3.3目錄的操作239
6.4檔案系統239
6.4.1檔案系統的概念239
6.4.2檔案系統的功能240
6.4.3檔案系統的組成240
6.5檔案系統的實現241
6.5.1實現檔案241
6.5.2實現目錄251
6.5.3磁碟空間管理254
6.5.4檔案系統的結構和工作流程255
6.6檔案系統的安全性和保護機制258
6.6.1檔案存取控制矩陣259
6.6.2檔案存取控制表259
6.6.3用戶許可權表260
6.6.4檔案口令260
6.6.5檔案加密261
6.7Linux檔案系統261
6.7.1虛擬檔案系統261
6.7.2ext2檔案系統267
6.7.3Linux檔案系統管理271
6.7.4Linux系統調用273
6.7.5Linux檔案系統的數據結構280
6.8小結282
6.9習題283第7章磁碟存儲管理284
7.1概述284
7.2磁碟結構284
7.2.1磁碟設備284
7.2.2磁碟種類285
7.2.3磁碟訪問時間285
7.3磁碟調度286
7.3.1先來先服務FCFS算法287
7.3.2最短尋道時間優先SSTF287
7.3.3各種掃描算法287
7.3.4磁碟調度算法的選擇289
7.4磁碟格式化289
7.5廉價冗餘磁碟陣列290
7.5.1利用冗餘技術提高可靠性290
7.5.2利用並行提高性能291
7.5.3RAID層次292
7.6高速快取管理293
7.6.1磁碟高速快取的形式293
7.6.2數據交付293
7.6.3置換算法293
7.6.4周期性寫回磁碟294
7.6.5提高磁碟I/O速度的其他方法295
7.7存儲可靠性的實現296
7.8小結296
7.9習題297
第8章多機系統與實時系統298
8.1多處理機系統298
8.1.1硬體結構298
8.1.2多處理機作業系統300
8.2網路與網路作業系統305
8.2.1網路硬體概念305
8.2.2網路軟體概念308
8.2.3網路作業系統311
8.3分散式作業系統313
8.3.1分散式作業系統的通信機制314
8.3.2分散式系統中的互斥315
8.3.3分散式系統中的死鎖316
8.3.4分散式系統中的進程管理317
8.4集群系統(Cluster)317
8.4.1集群系統的分類318
8.4.2集群作業管理技術319
8.4.3集群作業管理軟體例——LSF319
8.5實時作業系統324
8.5.1什麼是實時作業系統324
8.5.2實時作業系統325
8.5.3RTLinux的實現原理328
8.6小結329
8.7習題329附錄A實驗330
附錄BLinux常用命令336
附錄C實時系統、集群、格線和Agent工具簡介349
參考文獻373