《操作系统原理》PDF下载

  • 购买积分:13 如何计算积分?
  • 作  者:何炎祥,熊前兴编著
  • 出 版 社:武汉:华中科技大学出版社
  • 出版年份:2001
  • ISBN:7560925618
  • 页数:360 页
图书介绍:面向21世纪计算机专业本科系列教材:本书介绍了现代操作系统的基本概念、设计原理以及在构造过程中可能面临的种种问题及其解决方法。

第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.2.3 多道程序批处理系统 7

1.2.4 分时系统 9

1.3 操作系统的主要成就 11

1.3.1 进程 11

1.3.2 存储器管理 14

1.3.3 信息保护和安全性 15

1.3.4 调度和资源管理 16

1.3.5 系统结构 17

1.4.1 Windows NT 19

1.4 操作系统举例 19

1.4.2 UNIX System V 23

1.4.3 MVS 25

1.5 操作系统的主要研究课题 27

习题一 27

第2章 进程描述与控制 29

2.1 进程状态 29

2.1.1 进程产生和终止 31

2.1.2 进程状态模型 33

2.1.3 进程挂起 36

2.2 进程描述 40

2.2.1 操作系统控制结构 41

2.2.2 进程控制结构 41

2.2.3 进程属性 42

2.3 进程控制 44

2.3.1 执行模式 44

2.3.3 进程切换 45

2.3.2 进程创建 45

2.3.4 上下文切换 46

2.3.5 操作系统的运行 47

2.3.6 微核 48

2.4 线程和SMP 49

2.4.1 线程及其管理 49

2.4.2 多线程的实现 51

2.4.3 进程与线程的关系 52

2.4.4 SMP 53

2.5 系统举例 54

2.5.1 UNIX System V 54

2.5.2 Windows NT 58

2.5.3 MVS 62

2.6 小结 65

习题二 65

第3章 并发控制——互斥与同步 68

3.1 并发原理 69

3.1.1 进程间的相互作用 71

3.1.2 进程间的相互竞争 72

3.1.3 进程间的相互合作 74

3.1.4 互斥的要求 75

3.2 互斥——用软件方法实现 75

3.2.1 Dekker算法 76

3.2.2 Peterson算法 79

3.3 互斥——用硬件方法解决 80

3.3.1 禁止中断 80

3.3.2 使用机器指令 81

3.4 信号量 83

3.4.1 用信号量解决互斥问题 84

3.4.2 用信号量解决生产者/消费者问题 85

3.4.3 信号量的实现 89

3.4.4 用信号量解决理发店问题 90

3.5 管程 94

3.5.1 带信号量的管程 94

3.5.2 用管程解决生产者/消费者问题 95

3.6 消息传递 97

3.6.1 消息传递原语 97

3.6.2 用消息传递实现同步 98

3.6.3 寻址方式 98

3.6.4 消息格式 99

3.6.5 排队规则 100

3.6.6 用消息传递实现互斥 100

3.7 读者/写者问题 101

3.7.1 读者优先 102

3.7.2 写者优先 103

3.8 小结 105

习题三 106

第4章 死锁处理 108

4.1 死锁概述 108

4.1.1 可重用资源 108

4.1.2 消耗型资源 109

4.1.3 产生死锁的条件 110

4.2.1 死锁预防 111

4.2 死锁处理 111

4.2.2 死锁检测 112

4.2.3 死锁避免 112

4.2.4 采用综合方法处理死锁 116

4.3 哲学家用餐问题 117

4.4 系统举例 118

4.4.1 UNIX System V 118

4.4.2 Windows NT 120

4.4.3 MVS 121

4.5 小结 123

习题四 123

第5章 内存管理 125

5.1 概述 125

5.1.1 基本概念 125

5.1.2 虚拟存储器 127

5.1.3 重定位 128

5.2.1 分区法 130

5.2 存储管理的基本技术 130

5.2.2 可重定位分区法 132

5.2.3 覆盖技术 134

5.2.4 交换技术 134

5.3 分页存储管理 135

5.3.1 基本概念 135

5.3.2 纯分页系统 138

5.3.3 请求式分页系统 140

5.3.4 硬件支持及缺页处理 140

5.3.5 页的共享和保护 141

5.4 分段存储管理 142

5.4.1 基本概念 143

5.4.2 基本原理 143

5.4.3 硬件支持和缺段处理 144

5.4.4 段的共享和保护 146

5.5 段页式存储管理 147

5.5.1 基本概念 147

5.5.2 地址转换 148

5.5.3 管理算法 149

5.6 虚拟内存的转换算法 150

5.6.1 先进先出页面置换算法 150

5.6.2 最佳页面置换算法 151

5.6.3 最近最少使用页面置换算法 151

5.6.4 第二次机会页面置换算法 152

5.6.5 时钟页面置换算法 153

5.6.6 其他页面置换算法 153

5.7 系统举例 154

5.7.1 UNIX系统中的存储管理技术 154

5.7.2 Linux系统中的存储管理技术 158

5.8 小结 160

习题五 161

第6章 处理机调度 162

6.1 调度类型 162

6.2.1 短程调度标准 164

6.2 调度算法 164

6.1.1 长程调度 164

6.1.3 短程调度 164

6.1.2 中程调度 164

6.2.2 优先权的使用 166

6.2.3 调度策略 166

6.2.4 性能比较 174

6.2.5 模拟模型 176

6.2.6 公平分享调度策略 177

6.3 多处理机调度 179

6.3.1 粒度 179

6.3.2 设计要点 180

6.3.3 进程调度策略 182

6.4 实时调度 186

6.4.1 实时操作系统的特性 187

6.4.2 实时调度 189

6.4.3 期限调度 190

6.4.4 比率单调调度 193

6.5 系统举例 195

6.5.1 UNIX System V 195

6.5.2 Windows NT 197

6.5.3 MVS 198

6.6 小结 200

附录 响应时间 200

习题六 201

第7章 I/O设备管理 204

7.1 I/O系统硬件 204

7.1.1 I/O设备 204

7.1.2 设备控制器 205

7.1.3 I/O技术 207

7.2 I/O软件 212

7.2.1 中断处理程序 212

7.2.2 设备驱动程序 213

7.2.3 与设备无关的I/O软件 214

7.2.4 用户空间的I/O软件 216

7.2.5 缓冲技术 217

7.3 磁盘调度 222

7.3.1 调度策略 222

7.3.2 磁盘调整缓存 225

7.4 系统举例 227

7.4.1 UNIX System V 227

7.4.2 Windows NT I/O分析 229

7.5 小结 233

习题七 234

第8章 文件管理 236

8.1 文件与文件系统 236

8.1.1 文件及其分类 236

8.1.2 文件系统及其功能 237

8.2 文件的结构及存取方式 239

8.2.1 文件的逻辑结构及存取方式 239

8.2.2 文件的物理结构及存储设备 241

8.3.1 文件目录结构 247

8.3 文件管理 247

8.3.2 文件目录管理 252

8.4 文件存储空间的分配与管理 253

8.4.1 文件存储空间的分配 253

8.4.2 磁盘空间管理 255

8.5 系统举例——Windows NT 258

8.5.1 PE可移动执行的文件格式 258

8.5.2 PE文件首部 260

8.5.3 块表数据结构及辅助信息块 263

8.6 小结 268

习题八 268

第9章 分布计算 269

9.1 客记/服务器计算 270

9.1.1 什么是客记/服务器计算 270

9.1.2 客记/服务器模式的应用 271

9.1.3 中间件 275

9.2.1 分布式消息传递的方法 277

9.2 分布式消息传递 277

9.2.2 消息传递的可靠性 278

9.3 远程过程调用 278

9.4 小结 280

习题九 280

第10章 分布式进程管理 281

10.1 进程迁移 281

10.1.1 进程迁移的动机 281

10.1.2 进程迁移的机制 282

10.1.3 进程迁移的协商 284

10.1.4 进程驱逐 285

10.1.5 抢占及非抢占进程的迁移 286

10.2 分布式全局状态 286

10.2.1 全局状态及分布式快照 286

10.2.2 分布式快照算法 288

10.3.1 分布式互斥 290

10.3 分布式进程管理——互斥 290

10.3.2 分布式系统的事件定序——时戳方法 292

10.3.3 分布式互斥算法 294

10.4 分布式死锁 298

10.4.1 资源分配中的死锁 298

10.4.2 死锁预防 299

10.4.3 死锁避免 300

10.4.4 死锁检测 300

10.4.5 消息通信中的死锁 303

10.5 小结 306

习题十 306

第11章 操作系统的安全性 308

11.1 安全性概述 308

11.1.1 安全性的内涵 308

11.1.2 操作系统的安全性 309

11.1.3 安全性级别 312

11.2 安全保护机制 313

11.2.1 进程支持 313

11.2.2 内存及地址保护 314

11.2.3 存取控制 317

11.2.4 文件保护 321

11.2.5 用户身份鉴别 324

11.3 病毒及其防御 326

11.3.1 病毒概述 326

11.3.2 病毒的防御机制 327

11.3.3 特洛伊木马程序及其防御 329

11.4 加密技术 329

11.4.1 传统加密方法 330

11.4.2 公开密钥加密方法 331

11.4.3 密钥的管理 332

11.5 安全操作系统的设计 334

11.5.1 安全模型 334

11.5.2 安全操作系统的设计 337

11.6 系统举例——Windows 2000的安全性分析 341

习题十一 344

11.7 小结 344

第12章 排队分析理论 346

12.1 为什么进行排队分析 346

12.2 排队模型 347

12.2.1 单服务器模型 347

12.2.2 多服务器模型 349

12.2.3 基本排队关系 349

12.2.4 假设 349

12.3 单服务器队列 350

12.4 多服务器队列 351

12.5 队列网 352

12.5.1 信息流的分割和汇聚 353

12.5.2 一前一后的队列 353

12.5.3 Jackson定理 353

12.5.4 包交换网中的应用 354

12.6 其他排队模型 355

12.7 小结 355

参考文献 356