作業系統精髓與設計原理

作業系統精髓與設計原理

《作業系統精髓與設計原理》內容豐富,具有很強的實用價值,適合作為高等院校計算機及相關專業本科生的作業系統課程教材,也可供專業技術人員參考。

基本信息

書籍簡介

作業系統是計算機系統的核心繫統軟體,負責控制和管理整個系統,使之協調工作。本書不僅全面地講述了作業系統的基本概念、原理和方法,還清楚地展現了當代作業系統的本質和特點。全書分為八個部分,由淺入深地介紹了計算機系統、作業系統、進程描述和控制、執行緒、微核心、並發性、記憶體管理、虛擬記憶體、單處理器調度、多處理器和實時調度、I/O管理和磁碟調度、檔案管理、嵌入式作業系統、計算機安全技術以及分散式作業系統等內容。

本書是計算機界巨擘WilliamStallings的經典著作之一,其第4版曾獲得美國計算機科學與工程類大獎,得到了全球計算機教育界和工程技術人員的好評。書中不僅全面地講述了作業系統的基本概念、原理和方法,而且還以當代最流行的作業系統為例,全面清楚地展現了當代作業系統的本質和特點。作者針對近幾年作業系統領域的最新變化,對作業系統的設計原理進行深入的闡述,同時將其對作業系統整個領域全面而深入的理解呈現給讀者。

本書特色

•選擇WindowsVista、UNIX和Linux三個作業系統作為示例,以幫助讀者熟悉當代作業系統的設計原理和實現問題。

•新增嵌入式作業系統一章,討論了嵌入式作業系統的基本特點,並給出了兩個實例系統:TinyOS和eCos。

•在第5版的基礎上擴展了計算機安全的相關內容,包括計算機安全威脅和計算機安全技術。

•擴展和更新了並發的相關內容,並增加了有關遊戲軟體中多處理器調度設計問題的實例。

•補充動畫演示、模擬項目和編程項目,便於培養學生的動手實踐能力。

•改進了插圖,增加大量新的“現場測試”(field-tested)型家庭作業。

•調整和擴充了章末的練習題,有助於讀者深入理解作業系統的精髓。

作者簡介

(美國)斯托林斯(William Stallings)

擁有美國麻省理工學院計算機科學博士學位,現任教於澳大利亞新南威爾斯大學國防學院(坎培拉)信息技術與電子工程系。他是世界知名的計算機學者和暢銷教材作者,已經撰寫了17部著作,出版了40多本書籍,內容涉及計算機安全、計算機網路和計算機體系結構等方面,堪稱計算機界的全才。他曾九次榮獲美國“教材和學術專著作者協會”頒發的“年度最佳計算機科學教材”獎。

圖書目錄

【中文版目錄】

出版者的話

譯者序

前言

第0章 讀者指南 1

0.1 本書概述 1

0.2 讀者和教師的學習路線圖 1

0.3 Internet和Web資源 2

第一部分 背景

第1章 計算機系統概述 6

1.1 基本構成 6

1.2 處理器暫存器 6

1.2.1 用戶可見暫存器 7

1.2.2 控制和狀態暫存器 8

1.3 指令的執行 9

1.3.1 取指令和執行指令 9

1.3.2 I/O函式 11

1.4 中斷 11

1.4.1 中斷和指令周期 12

1.4.2 中斷處理 14

1.4.3 多箇中斷 15

1.4.4 多道程式設計 17

1.5 存儲器的層次結構 17

1.6 高速快取 20

1.6.1 動機 20

1.6.2 高速快取原理 20

1.6.3 高速快取設計 21

1.7 I/O通信技術 22

1.7.1 可程式I/O 22

1.7.2 中斷驅動I/O 22

1.7.3 直接記憶體存取 24

1.8 推薦讀物和網站 24

1.9 關鍵術語、複習題和習題 25

附錄1A 兩級存儲器的性能特徵 27

附錄1B 過程控制 30

第2章 作業系統概述 33

2.1 作業系統的目標和功能 33

2.1.1 作為用戶/計算機接口的

2.1.1 作業系統 33

2.1.2 作為資源管理器的操作

2.1.1 系統 34

2.1.3 作業系統的易擴展性 35

2.2 作業系統的發展 35

2.2.1 串列處理 35

2.2.2 簡單批處理系統 36

2.2.3 多道程式設計批處理系統 38

2.2.4 分時系統 40

2.3 主要的成就 42

2.3.1 進程 42

2.3.2 記憶體管理 44

2.3.3 信息保護和安全 46

2.3.4 調度和資源管理 46

2.3.5 系統結構 47

2.4 現代作業系統的特徵 49

2.5 微軟的Windows 概述 51

2.5.1 歷史 51

2.5.2 單用戶多任務 53

2.5.3 體系結構 53

2.5.4 客戶/伺服器模型 56

2.5.5 執行緒和SMP 57

2.5.6 Windows對象 57

2.6 傳統的UNIX系統 58

2.6.1 歷史 58

2.6.2 描述 59

2.7 現代UNIX系統 60

2.7.1 系統V版本4(SVR4) 60

2.7.2 BSD 61

2.7.3 Solaris 10 61

2.8 Linux作業系統 61

2.8.1 歷史 62

2.8.2 模組結構 63

2.8.3 核心組件 64

2.9 推薦讀物和網站 67

2.10 關鍵術語、複習題和習題 68

第二部分 進程

第3章 進程描述和控制 73

3.1 什麼是進程 73

3.1.1 背景 73

3.1.2 進程和進程控制塊 74

3.2 進程狀態 75

3.2.1 兩狀態進程模型 76

3.2.2 進程的創建和終止 77

3.2.3 五狀態模型 78

3.2.4 被掛起的進程 81

3.3 進程描述 84

3.3.1 作業系統的控制結構 85

3.3.2 進程控制結構 86

3.4 進程控制 90

3.4.1 執行模式 90

3.4.2 進程創建 91

3.4.3 進程切換 92

3.5 作業系統的執行 93

3.5.1 無進程的核心 94

3.5.2 在用戶進程中執行 94

3.5.3 基於進程的作業系統 95

3.6 安全問題 95

3.6.1 系統訪問威脅 96

3.6.2 對抗措施 96

3.7 UNIX SVR4進程管理 98

3.7.1 進程狀態 98

3.7.2 進程描述 99

3.7.3 進程控制 101

3.8 小結 102

3.9 推薦讀物 102

3.10 關鍵術語、複習題和習題 102

編程項目1:開發一個shell程式 105

第4章 執行緒、對稱多處理(SMP)

第4章 和微核心 107

4.1 進程和執行緒 107

4.1.1 多執行緒 107

4.1.2 執行緒功能特性 109

4.1.3 例子:Adobe PageMaker 111

4.1.4 用戶級和核心級執行緒 112

4.1.5 其他方案 115

4.2 對稱多處理 116

4.2.1 SMP體系結構 116

4.2.2 SMP系統的組織結構 117

4.2.3 多處理器作業系統的

4.2.3 設計思考 118

4.3 微核心 119

4.3.1 微核心體系結構 119

4.3.2 微核心組織結構的優點 120

4.3.3 微核心性能 121

4.3.4 微核心設計 121

4.4 Windows執行緒和SMP管理 122

4.4.1 進程對象和執行緒對象 123

4.4.2 多執行緒 125

4.4.3 執行緒狀態 125

4.4.4 對作業系統子系統的支持 126

4.4.5 對稱多處理的支持 126

4.5 Solaris的執行緒和SMP管理 127

4.5.1 多執行緒體系結構 127

4.5.2 動機 127

4.5.3 進程結構 128

4.5.4 執行緒的執行 129

4.5.5 把中斷當做執行緒 129

4.6 Linux的進程和執行緒管理 130

4.6.1 Linux任務 130

4.6.2 Linux執行緒 131

4.7 小結 132

4.8 推薦讀物 133

4.9 關鍵術語、複習題和習題 133

第5章 並發性:互斥和同步 138

5.1 並發的原理 139

5.1.1 一個簡單的例子 139

5.1.2 競爭條件 141

5.1.3 作業系統關注的問題 141

5.1.4 進程的互動 141

5.1.5 互斥的要求 144

5.2 互斥:硬體的支持 144

5.2.1 中斷禁用 144

5.2.2 專用機器指令 145

5.3 信號量 147

5.3.1 互斥 150

5.3.2 生產者/消費者問題 151

5.3.3 信號量的實現 154

5.4 管程 155

5.4.1 使用信號的管程 155

5.4.2 使用通知和廣播的管程 158

5.5 訊息傳遞 159

5.5.1 同步 160

5.5.2 定址 161

5.5.3 訊息格式 162

5.5.4 排隊原則 162

5.5.5 互斥 162

5.6 讀者-寫者問題 163

5.6.1 讀者優先 164

5.6.2 寫者優先 164

5.7 小結 166

5.8 推薦讀物 167

5.9 關鍵術語、複習題和習題 167

第6章 並發:死鎖和飢餓 178

6.1 死鎖的原理 178

6.1.1 可重用資源 180

6.1.2 可消耗資源 181

6.1.3 資源分配圖 182

6.1.4 死鎖的條件 183

6.2 死鎖預防 184

6.2.1 互斥 184

6.2.2 占有且等待 184

6.2.3 不可搶占 184

6.2.4 循環等待 184

6.3 死鎖避免 185

6.3.1 進程啟動拒絕 185

6.3.2 資源分配拒絕 186

6.4 死鎖檢測 189

6.4.1 死鎖檢測算法 189

6.4.2 恢復 190

6.5 一種綜合的死鎖策略 190

6.6 哲學家就餐問題 191

6.6.1 使用信號量解決方案 191

6.6.2 使用管程解決方案 192

6.7 UNIX的並發機制 192

6.7.1 管道 192

6.7.2 訊息 193

6.7.3 共享記憶體 193

6.7.4 信號量 194

6.7.5 信號 194

6.8 Linux核心並發機制 195

6.8.1 原子操作 195

6.8.2 自旋鎖 196

6.8.3 信號量 197

6.8.4 屏障 199

6.9 Solaris執行緒同步原語 199

6.9.1 互斥鎖 200

6.9.2 信號量 200

6.9.3 多讀者/單寫者鎖 201

6.9.4 條件變數 201

6.10 Windows並發機制 201

6.10.1 等待函式 201

6.10.2 分派器對象 202

6.10.3 臨界區 203

6.10.4 輕量級讀寫鎖和條件變數 203

6.11 小結 204

6.12 推薦讀物 204

6.13 關鍵術語、複習題和習題 205

第三部分 記憶體

第7章 記憶體管理 210

7.1 記憶體管理的需求 210

7.1.1 重定位 210

7.1.2 保護 211

7.1.3 共享 211

7.1.4 邏輯組織 211

7.1.5 物理組織 211

7.2 記憶體分區 212

7.2.1 固定分區 212

7.2.2 動態分區 214

7.2.3 夥伴系統 216

7.2.4 重定位 218

7.3 分頁 219

7.4 分段 222

7.5 安全問題 222

7.5.1 緩衝區溢出攻擊 222

7.5.2 預防緩衝區溢出 225

7.6 小結 225

7.7 推薦讀物 225

7.8 關鍵術語、複習題和習題 225

附錄7A 載入和連結 228

第8章 虛擬記憶體 232

8.1 硬體和控制結構 232

8.1.1 局部性和虛擬記憶體 233

8.1.2 分頁 235

8.1.3 分段 242

8.1.4 段頁式 243

8.1.5 保護和共享 244

8.2 作業系統軟體 244

8.2.1 讀取策略 245

8.2.2 放置策略 246

8.2.3 置換策略 246

8.2.4 駐留集管理 251

8.2.5 清除策略 255

8.2.6 載入控制 255

8.3 UNIX和Solaris記憶體管理 257

8.3.1 分頁系統 257

8.3.2 核心記憶體分配器 259

8.4 Linux記憶體管理 260

8.4.1 Linux虛擬記憶體 260

8.4.2 核心記憶體分配 261

8.5 Windows記憶體管理 262

8.5.1 Windows虛擬地址映射 263

8.5.2 Windows分頁 263

8.6 小結 264

8.7 推薦讀物和網站 264

8.8 關鍵術語、複習題和習題 265

附錄8A 散列表 268

第四部分 調度

第9章 單處理器調度 272

9.1 處理器調度的類型 272

9.1.1 長程調度 273

9.1.2 中程調度 274

9.1.3 短程調度 274

9.2 調度算法 274

9.2.1 短程調度準則 274

9.2.2 優先權的使用 275

9.2.3 選擇調度策略 276

9.2.4 性能比較 284

9.2.5 公平共享調度 287

9.3 傳統的UNIX調度 289

9.4 小結 290

9.5 推薦讀物 291

9.6 關鍵術語、複習題和習題 291

附錄9A 回響時間 294

附錄9B 排隊系統 296

編程項目2:主機調度shell程式 299

第10章 多處理器和實時調度 304

10.1 多處理器調度 304

10.1.1 粒度 304

10.1.2 設計問題 307

10.1.3 進程調度 308

10.1.4 執行緒調度 309

10.2 實時調度 312

10.2.1 背景 312

10.2.2 實時作業系統的特點 313

10.2.3 實時調度 315

10.2.4 限期調度 316

10.2.5 速率單調調度 319

10.2.6 優先權反轉 321

10.3 Linux調度 322

10.3.1 實時調度 322

10.3.2 非實時調度 323

10.4 UNIX SVR4調度 325

10.5 Windows調度 326

10.5.1 進程和執行緒優先權 326

10.5.2 多處理器調度 328

10.6 小結 328

10.7 推薦讀物 328

10.8 關鍵術語、複習題和習題 329

第五部分 I/O和檔案

第11章 I/O管理和磁碟調度 334

11.1 I/O設備 334

11.2 I/O功能的組織 335

11.2.1 I/O功能的發展 335

11.2.2 直接存儲器訪問 336

11.3 作業系統設計問題 337

11.3.1 設計目標 337

11.3.2 I/O功能的邏輯結構 338

11.4 I/O緩衝 339

11.4.1 單緩衝 340

11.4.2 雙緩衝 341

11.4.3 循環緩衝 341

11.4.4 緩衝的作用 341

11.5 磁碟調度 342

11.5.1 磁碟性能參數 342

11.5.2 磁碟調度策略 344

11.6 RAID 347

11.6.1 RAID級別0 349

11.6.2 RAID級別1 350

11.6.3 RAID級別2 351

11.6.4 RAID級別3 351

11.6.5 RAID級別4 352

11.6.6 RAID級別5 353

11.6.7 RAID級別6 353

11.7 磁碟高速快取 353

11.7.1 設計考慮 353

11.7.2 性能考慮 355

11.8 UNIX SVR4 I/O 355

11.8.1 緩衝區高速快取 356

11.8.2 字元佇列 356

11.8.3 無緩衝I/O 357

11.8.4 UNIX設備 357

11.9 Linux I/O 357

11.9.1 磁碟調度 358

11.9.2 Linux頁面快取 360

11.10 Windows I/O 360

11.10.1 基本I/O機制 360

11.10.2 異步I/O和同步I/O 361

11.10.3 軟體RAID 361

11.10.4 卷影複製 361

11.10.5 卷加密 362

11.11 小結 362

11.12 推薦讀物 362

11.13 關鍵術語、複習題和習題 363

附錄11A 磁碟存儲設備 365

第12章 檔案管理 371

12.1 概述 371

12.1.1 檔案和檔案系統 371

12.1.2 檔案結構 371

12.1.3 檔案管理系統 373

12.2 檔案組織和訪問 375

12.2.1 堆 376

12.2.2 順序檔案 376

12.2.3 索引順序檔案 377

12.2.4 索引檔案 377

12.2.5 直接檔案或散列檔案 378

12.3 檔案目錄 378

12.3.1 內容 378

12.3.2 結構 379

12.3.3 命名 380

12.4 檔案共享 381

12.4.1 訪問許可權 381

12.4.2 同時訪問 381

12.5 記錄組塊 382

12.6 二級存儲管理 383

12.6.1 檔案分配 383

12.6.2 空閒空間的管理 387

12.6.3 卷 388

12.6.4 可靠性 388

12.7 檔案系統安全 389

12.8 UNIX檔案管理 390

12.8.1 索引節點 391

12.8.2 檔案分配 392

12.8.3 目錄 393

12.8.4 卷結構 393

12.8.5 傳統的UNIX檔案訪問

6.10.4 控制 393

12.8.6 UNIX中的訪問控制列表 394

12.9 Linux虛擬檔案系統 395

12.9.1 超級塊對象 397

12.9.2 索引節點對象 397

12.9.3 目錄項對象 398

12.9.4 檔案對象 398

12.10 Windows檔案系統 398

12.10.1 NTFS的重要特徵 398

12.10.2 NTFS卷和檔案結構 399

12.10.3 可恢復性 401

12.11 小結 402

12.12 推薦讀物 402

12.13 關鍵術語、複習題和習題 403

第六部分 嵌入式系統

第13章 嵌入式作業系統 406

13.1 嵌入式系統 406

13.2 嵌入式作業系統的特點 407

13.2.1 移植現有的商業作業系統 408

13.2.2 為特定目的構建的嵌入式

6.10.4 作業系統 408

13.3 eCos 409

13.3.1 可配置性 409

13.3.2 eCos組件 411

13.3.3 eCos調度程式 414

13.3.4 eCos執行緒同步 415

13.4 TinyOS 419

13.4.1 無線感測器網路 420

13.4.2 TinyOS的目標 420

13.4.3 TinyOS的組件 421

13.4.4 TinyOS的調度程式 423

13.4.5 配置例子 423

13.4.6 TinyOS的資源接口 425

13.5 推薦讀物和網站 426

13.6 關鍵術語、複習題和習題 426

第七部分 安全

第14章 計算機安全威脅 430

14.1 計算機安全的概念 430

14.2 威脅、攻擊和資產 431

14.2.1 威脅和攻擊 431

14.2.2 威脅和資產 432

14.3 入侵者 434

14.3.1 入侵者行為模式 435

14.3.2 入侵技術 437

14.4 惡意軟體概述 437

14.4.1 後門 437

14.4.2 邏輯炸彈 438

14.4.3 特洛伊木馬 438

14.4.4 移動代碼 438

14.4.5 多威脅惡意軟體 439

14.5 病毒、蠕蟲與殭屍 440

14.5.1 病毒 440

14.5.2 蠕蟲 443

14.5.3 殭屍 445

14.6 rootkits 447

14.6.1 rootkit安裝 447

14.6.2 系統級調用攻擊 447

14.7 推薦讀物和網站 448

14.8 關鍵術語、複習題和習題 448

第15章 計算機安全技術 451

15.1 身份驗證 451

15.1.1 身份驗證方法 451

15.1.2 基於密碼的身份驗證 451

15.1.3 基於令牌的身份驗證 453

15.1.4 生物特徵識別認證 454

15.2 訪問控制 455

15.2.1 自主訪問控制 456

15.2.2 基於角色的訪問控制 458

15.3 入侵檢測 460

15.3.1 基本原則 460

15.3.2 基於主機的入侵檢測技術 461

15.3.3 審計記錄 462

15.4 惡意軟體防禦 463

15.4.1 反病毒方法 463

15.4.2 蠕蟲對策 465

15.4.3 自動代理程式的對策 466

15.4.4 rootkit對策 466

15.5 處理緩衝區溢出攻擊 467

15.5.1 編譯時防禦 467

15.5.2 運行時防禦 469

15.6 Windows Vista安全性 470

15.6.1 訪問控制方案 470

15.6.2 訪問令牌 471

15.6.3 安全描述符 471

15.7 推薦讀物和網站 474

15.8 關鍵術語、複習題和習題 475

第八部分 分散式系統

第16章 分散式處理、客戶/伺服器和

第16章 集群 481

16.1 客戶/伺服器計算模型 481

16.1.1 什麼是客戶/伺服器

16.1.1 計算模型 481

16.1.2 客戶/伺服器模型的套用 482

16.1.3 中間件 486

16.2 分散式訊息傳遞 487

16.2.1 可靠性與不可靠性 488

16.2.2 阻塞與無阻塞 488

16.3 遠程過程調用 489

16.3.1 參數傳遞 490

16.3.2 參數表示 490

16.3.3 客戶/伺服器綁定 490

16.3.4 同步和異步 490

16.3.5 面向對象機制 491

16.4 集群 491

16.4.1 集群的配置 491

16.4.2 作業系統的設計問題 493

16.4.3 集群計算機的體系結構 494

16.4.4 集群與SMP的比較 495

16.5 Windows集群伺服器 495

16.6 Sun集群 496

16.6.1 對象和通信支持 497

16.6.2 進程管理 497

16.6.3 網路連線 497

16.6.4 全局檔案系統 498

16.7 Beowulf和Linux集群 498

16.7.1 Beowulf特徵 498

16.7.2 Beowulf軟體 499

16.8 小結 500

16.9 推薦讀物和網站 500

16.10 關鍵術語、複習題和習題 501

附錄A 並發主題 503

附錄B 面向對象設計 516

附錄C 編程和作業系統項目 523

術語表 528

參考文獻 536

【英文版目錄】

Chapter 1 Computer System Overview 1

1.1 Basic Elements 1

1.2 Processor Registers 2

1.3 Instruction Execution 5

1.4 Interrupts 8

1.5 The Memory Hierarchy 19

1.6 Cache Memory 22

1.7 I/O Communication Techniques 26

1.8 Recommended Reading and Web Sites 29

1.9 KeyTerms, Review Questions, and Problems 30

Appendix 1A Performance Characteristics of Two-Level Memory 32

Appendix 1B Procedure Control 39

Chapter 2 Operating System Overview 43

2.1 Operating System Objectives and Functions 43

2.2 The Evolution of Operating Systems 47

2.3 Major Achievements 56

2.4 Developments Leading to Modern Operating Systems 69

2.5 Microsoft Windows Overview 72

2.6 Traditional UNIX Systems 82

2.7 Modern UNIX Systems 85

2.8 Linux 86

2.9 Recommended Reading and Web Sites 93

2.10Key Terms, Review Questions, and Problems 95

Chapter 3 Process Description and Control 97

3.1 What is a Process? 97

3.2 Process States 100

3.3 Process Description 115

3.4 Process Control 124

3.5 Execution of the Operating System 129

3.6 Security Issues 132

3.7 UNIX SVR4 Process Management 136

3.8 Summary 141

3.9 Recommended Reading 142

3.10KeyTerms, Review Questions, and Problems 142

Programming Project One Developing a Shell 146

Chapter 4 Threads, SMP, and Microkernels 149

4.1 Processes andThreads 149

4.2 Symmetric Multiprocessing (SMP) 163

4.3 Microkernels 167

4.4 WindowsVista Thread and SMP Management 173

4.5 Solaris Thread and SMP Management 178

4.6 Linux Process andThread Management 183

4.7 Summary 186

4.8 Recommended Reading 187

4.9 KeyTerms, Review Questions, and Problems 188

Chapter 5 Concurrency: Mutual Exclusion and Synchronization 193

5.1 Principles of Concurrency 194

5.2 Mutual Exclusion: Hardware Support 203

5.3 Semaphores 206

5.4 Monitors 219

5.5 Message Passing 226

5.6 Readers/Writers Problem 232

5.7 Summary 236

5.8 Recommended Reading 237

5.9 Key Terms, Review Questions, and Problems 238

Chapter 6 Concurrency: Deadlock and Starvation 249

6.1 Principles of Deadlock 249

6.2 Deadlock Prevention 258

6.3 Deadlock Avoidance 259

6.4 Deadlock Detection 265

6.5 An Integrated Deadlock Strategy 267

6.6 Dining Philosophers Problem 268

6.7 UNIX Concurrency Mechanisms 272

6.8 Linux Kernel Concurrency Mechanisms 275

6.9 Solaris Thread Synchronization Primitives 281

6.10Windows Vista Concurrency Mechanisms 284

6.11Summary 288

6.12Recommended Reading 288

6.13Key Terms, Review Questions, and Problems 289

Chapter 7 Memory Management 295

7.1 Memory Management Requirements 295

7.2 Memory Partitioning 298

7.3 Paging 309

7.4 Segmentation 313

7.5 Security Issues 314

7.6 Summary 318

7.7 Recommended Reading 318

7.8 Key Terms, Review Questions, and Problems 319

Appendix 7A Loading and Linking 321

Chapter 8 Virtual Memory 328

8.1 Hardware and Control Structures 328

8.2 Operating System Software 347

8.3 UNIX and Solaris Memory Management 365

8.4 Linux Memory Management 371

8.5 WindowsVista Memory Management 373

8.6 Summary 376

8.7 Recommended Reading and Web Sites 377

8.8 Key Terms, Review Questions, and Problems 378

Appendix 8A Hash Tables 382

Chapter 9 Uniprocessor Scheduling 386

9.1 Types of Scheduling 386

9.2 Scheduling Algorithms 390

9.3 Traditional UNIX Scheduling 412

9.4 Summary 414

9.5 Recommended Reading 414

9.6 Key Terms, Review Questions, and Problems 415

Appendix 9A Response Time 418

Appendix 9B Queuing Systems 420

Programming Project Two The HOST Dispatcher Shell 427

Chapter 10 Multiprocessor and Real-Time Scheduling 432

10.1 Multiprocessor Scheduling 432

10.2 Real-Time Scheduling 445

10.3 Linux Scheduling 460

10.4 UNIX FreeBSD Scheduling 464

10.5Windows Vista Scheduling 466

10.6 Summary 469

10.7 Recommended Reading 469

10.8 Key Terms, Review Questions, and Problems 470

Chapter 11 I/O Management and Disk Scheduling 473

11.1 I/O Devices 473

11.2Organization of the I/O Function 474

11.3 Operating System Design Issues 478

11.4 I/O Buffering 481

11.5 Disk Scheduling 484

11.6 RAID 491

11.7 Disk Cache 500

11.8 UNIX FreeBSD I/O 503

11.9 Linux I/O 506

11.10WindowsVista I/O 510

11.11Summary 513

11.12 Recommended Reading 513

11.13Key Terms, Review Questions, and Problems 515

Appendix 11A Disk Storage Devices 517

Chapter 12 File Management 528

12.1 Overview 528

12.2 File Organization and Access 534

12.3File Directories 538

12.4 File Sharing 543

12.5Record Blocking 544

12.6Secondary Storage Management 546

12.7File System Security 554

12.8 UNIX File Management 556

12.9 Linux File Management 563

12.10WindowsVista File System 567

12.11Summary 573

12.12 Recommended Reading 573

12.13Key Terms, Review Questions, and Problems 574

Glossary 577

References 587

相關詞條

相關搜尋

熱門詞條

聯絡我們