操作系統(第5版)

宗大華,宗濤,陳吉人

立即出貨

商品描述

“操作系統”是電腦專業的一門必修課程。本書從資源管理的角度出發,介紹了電腦系統中各種軟、硬件資源管理的概念、原理和技術。

本書共有8章內容。第1章是對操作系統的概述;第2章至第5章是對電腦中的各種資源(硬件資源:處理器、存儲、設備;軟件資源:文件)管理的策略和技術做全面、深入、準確的講述;第6章介紹正確實現操作系統時必須要面對和解決的問題,它是使電腦充分發揮工作效率的關鍵所在。這6章涉及的是操作系統的基礎。第7章和第8章,是對兩個操作系統(Windows XP和Linux)的分析,以便使讀者對操作系統能夠有一個較為完整和實際的瞭解。這兩章是對操作系統學習的一種提高。

作者簡介

宗大华 出版汇编语言、C语言程序设计、数据结构、操作系统等多部有关计算机基础知识的教材,长期受到读者的欢迎和好评。其中的《操作系统》一书,入选为“普通高等教育‘十一五’国家级规划教材”, 目前已连续再版四次。

目錄大綱

第 1章

操作系統概述 1

1.1 電腦系統 1

1.1.1 硬件與軟件 1

1.1.2 操作系統的形成 2

1.1.3 操作系統發展的動力 3

1.2 操作系統的定義與功能 4

1.2.1 操作系統的定義 4

1.2.2 操作系統的功能 4

1.3 操作系統的種類 6

1.3.1 批處理操作系統 6

1.3.2 分時操作系統 7

1.3.3 實時操作系統 8

1.3.4 網絡操作系統 9

1.3.5 分佈式操作系統 10

1.3.6 嵌入式操作系統 10

習題 11

第 2章

處理器管理 13

2.1 進程 13

2.1.1 多道程序設計 13

2.1.2 進程的定義 15

2.1.3 進程的特徵 17

2.1.4 進程的狀態及狀態變遷 18

2.2 進程控制塊 21

2.2.1 進程的3個組成部分 21

2.2.2 進程控制塊 21

2.2.3 進程控制塊隊列 23

2.3 進程的調度與管理 24

2.3.1 進程調度算法 24

2.3.2 進程管理的基本原語 30

2.4 線程 32

2.4.1 線程的概念 32

2.4.2 線程的實現 34

2.4.3 線程與進程的關系 36

2.5 作業調度 38

2.5.1 用戶與操作系統的兩種接口 38

2.5.2 作業與作業管理 41

2.5.3 作業的調度算法 42

習題48

第3章

存儲管理 52

3.1 存儲管理綜述 52

3.1.1 存儲器的層次結構 52

3.1.2 高速緩沖存儲器的工作原理 53

3.1.3 存儲管理的功能 54

3.2 固定分區存儲管理 54

3.2.1 地址重定位 54

3.2.2 地址的定位方式和靜態重定位 56

3.2.3 單一連續分區存儲管理 57

3.2.4 固定分區存儲管理 59

3.3 可變分區存儲管理 62

3.3.1 可變分區存儲管理的基本思想 62

3.3.2 地址動態重定位的過程 64

3.3.3 空閑區的合並 65

3.3.4 分區的管理與組織方式 66

3.3.5 空閑分區的分配算法 70

3.3.6 夥伴系統 72

3.4 分頁式存儲管理 73

3.4.1 分頁式存儲管理的基本思想 73

3.4.2 分頁式存儲管理的地址轉換 75

3.4.3 內存塊的分配與回收 80

3.5 分段式存儲管理 81

3.5.1 分段及二維邏輯地址空間 81

3.5.2 段表及地址變換過程 83

3.5.3 存儲保護與共享 84

3.5.4 分段與分頁的區別 85

3.6 虛擬存儲與請求分頁式存儲管理 86

3.6.1 虛擬存儲器的概念 86

3.6.2 請求分頁式存儲管理的基本思想 87

3.6.3 缺頁中斷的處理 88

3.6.4 頁面淘汰算法 92

習題 99

第4章

設備管理 102

4.1 設備管理概述 102

4.1.1 I/O系統的組織結構 102

4.1.2 電腦設備的分類 105

4.1.3 設備管理的目標與功能 108

4.2 輸入/輸出的處理步驟 108

4.2.1 I/O請求的提出 109

4.2.2 對I/O請求的管理 109

4.2.3 I/O請求的具體實現 110

4.3 設備的分配與調度算法 110

4.3.1 管理設備時的數據結構 110

4.3.2 獨享設備的分配 113

4.3.3 共享磁盤的調度 115

4.4 數據傳輸的方式 119

4.4.1 程序循環測試方式 119

4.4.2 中斷方式 120

4.4.3 直接存儲器存取方式 121

4.4.4 通道方式 122

4.5 設備管理中的若乾技術 123

4.5.1 I/O緩沖技術 123

4.5.2 虛擬設備與SPOOLing技術 125

習題 126

第5章

文件管理 129

5.1 文件的結構 129

5.1.1 文件與文件系統 129

5.1.2 文件的邏輯結構 132

5.1.3 文件的物理結構 133

5.1.4 文件的存取 135

5.2 磁盤存儲空間的管理 136

5.2.1 位示圖 136

5.2.2 空閑區表 138

5.2.3 空閑塊鏈 138

5.3 文件管理與目錄結構 139

5.3.1 文件控制塊與目錄 140

5.3.2 目錄的層次結構 141

5.3.3 “按名存取”的實現 143

5.4 文件的使用 145

5.4.1 文件的共享 145

5.4.2 文件的保護 146

5.4.3 文件的備份 147

5.4.4 文件的操作 149

習題 150

第6章

進程間的制約關系 153

6.1 進程間的制約關系 153

6.1.1 與時間有關的錯誤 153

6.1.2 競爭資源——互斥 156

6.1.3 協同工作——同步 157

6.2 信號量與P、V操作 159

6.2.1 信號量與P、V操作的定義 159

6.2.2 用P、V操作實現互斥 159

6.2.3 用P、V操作實現同步 162

6.2.4 用P、V操作實現資源分配 164

6.2.5 互斥/同步的案例分析 165

6.3 死鎖、高級進程通信 169

6.3.1 死鎖與產生死鎖的必要條件 169

6.3.2 死鎖的預防 171

6.3.3 死鎖的避免 172

6.3.4 死鎖的檢測並恢復 175

6.3.5 高級進程通信 177

習題 179

第7章

實例分析:Windows XP

操作系統 184

7.1 Windows XP的處理器

管理 184

7.1.1 Windows XP的結構 184

7.1.2 Windows XP的進程和線程 188

7.1.3 Windows XP的線程調度 190

7.1.4 Windows XP的同步機制 194

7.2 Windows XP的存儲管理 195

7.2.1 Windows XP進程的空間佈局 195

7.2.2 Windows XP的地址變換機構 196

7.2.3 Windows XP對內存的管理 199

7.2.4 Windows XP的頁面調度 202

7.3 Windows XP的設備管理 203

7.3.1 Windows XP設備管理綜述 203

7.3.2 Windows XP的I/O處理 205

7.3.3 Windows XP兩級中斷處理過程 208

7.4 Windows XP的文件管理 209

7.4.1 Windows XP文件系統綜述 209

7.4.2 Windows XP的NTFS文件系統 213

7.4.3 NTFS的主文件表 214

7.4.4 NTFS的文件和目錄結構 217

7.4.5 NTFS對可恢復性的支持 217

習題 220

第8章

實例分析: Linux操作

系統 223

8.1 Linux的處理機管理 223

8.1.1 Linux的進程 223

8.1.2 Linux的進程調度 226

8.1.3 Linux進程間的通信——消息隊列 228

8.2 Linux的存儲管理 230

8.2.1 Linux的虛擬存儲空間 230

8.2.2 管理虛擬存儲空間的數據結構 232

8.2.3 管理內存空間的數據結構 233

8.2.4 內存區的分配和頁面淘汰策略 234

8.3 Linux的文件管理 234

8.3.1 Linux文件系統的構成 235

8.3.2 Ext2對磁盤的組織 235

8.3.3 Ext2文件的物理結構 238

8.3.4 虛擬文件系統VFS的數據結構 240

8.4 Linux的設備管理 242

8.4.1 Linux設備管理概述 242

8.4.2 Linux對字符設備的管理 243

8.4.3 Linux對塊設備的管理 244

習題 246

 

參考文獻