当前位置:首页 > 工业技术
操作系统原理
操作系统原理

操作系统原理PDF电子书下载

工业技术

  • 电子书积分:13 积分如何计算积分?
  • 作 者:周苏,金海溶,王文等编著
  • 出 版 社:北京:机械工业出版社
  • 出版年份:2013
  • ISBN:9787111433897
  • 页数:372 页
图书介绍:本书针对计算机和其他IT专业学生的发展需求,系统、全面地介绍了操作系统的概念、原理、方法与应用,详细介绍了硬件基础、操作系统概述、进程描述和控制、线程、互斥与同步、死锁和饥饿、存储管理、分页与分段设计、处理器管理、输入/输出原理、I/O设备管理、文件管理、操作系统安全、多媒体操作系统、嵌入式操作系统以及分布式、客户/服务器和集群系统等内容,力图反映操作系统领域的最新发展,具有较强的系统性和可读性。本书配套有大量习题,并为部分习题提供了参考答案。
《操作系统原理》目录

第1篇 背景知识 1

第1章 硬件基础 1

1.1硬件的基本构成 1

1.2处理器 3

1.2.1 CPU的性能因素 4

1.2.2微处理器的发展 5

1.3指令与指令周期 6

1.3.1指令 6

1.3.2指令周期 7

1.3.3指令集的复杂性 7

1.3.4流水线和并行处理 8

1.4中断 8

1.4.1中断和指令周期 8

1.4.2中断处理 9

1.4.3多个中断 10

1.5存储器的层次结构 12

1.5.1内存的4种类型 12

1.5.2存储器的重要特性 13

1.5.3存储器访问的局部性原理 14

1.6高速缓存 15

1.7直接内存存取 16

1.8多处理器和多核计算机组织结构 17

1.8.1对称多处理器 17

1.8.2多核计算机 19

1.9启动计算机 20

1.10习题 21

第2章 操作系统概述 23

2.1操作系统的功能 23

2.1.1作为用户/计算机接口 23

2.1.2作为资源管理器 25

2.1.3作为扩展机器 26

2.2操作系统的种类 27

2.3操作系统的核心概念 31

2.3.1进程 31

2.3.2地址空间与内存管理 35

2.3.3文件 37

2.3.4调度和资源管理 38

2.3.5输入/输出 39

2.3.6保护 39

2.3.7 Shell与图形用户界面 39

2.4操作系统的发展 41

2.4.1串行处理 41

2.4.2简单批处理系统 42

2.4.3多道批处理系统 43

2.4.4分时系统 44

2.4.5实时系统 45

2.4.6通用操作系统 45

2.4.7操作系统的进一步发展 46

2.5系统调用 46

2.5.1系统调用的概念 46

2.5.2用于进程管理的系统调用 47

2.5.3用于文件管理的系统调用 49

2.5.4WindoWs Win32 API 49

2.6操作系统结构 50

2.6.1单体系统 50

2.6.2层次式系统 51

2.6.3微内核 51

2.6.4客户机一服务器模式 52

2.6.5虚拟机 53

2.6.6外核 56

2.7多处理器和多核计算机操作系统的设计因素 56

2.7.1多线程 56

2.7.2对称多处理器计算机 56

2.7.3多核计算机 58

2.8习题 59

第2篇 进程与线程 61

第3章 进程描述和控制 61

3.1进程的概述 61

3.2进程状态 62

3.2.1两状态进程模型 63

3.2.2进程的创建和终止 64

3.2.3五状态模型 65

3.2.4被挂起的进程 68

3.3进程描述 71

3.3.1操作系统的控制结构 71

3.3.2进程控制结构 72

3.4进程控制 74

3.4.1进程创建 75

3.4.2进程切换 75

3.5操作系统的执行 77

3.5.1无进程的内核 77

3.5.2在用户进程中执行 78

3.5.3基于进程的操作系统 78

3.6习题 79

第4章 线程 82

4.1线程的概念 82

4.1.1单线程和多线程 82

4.1.2线程的属性 83

4.1.3线程的功能特性 85

4.1.4线程和进程的区别 86

4.2用户级和内核级线程 87

4.3多核和多线程 90

4.4 Windows7线程和SMP管理 90

4.4.1进程对象和线程对象 91

4.4.2多线程 93

4.4.3线程状态 93

4.4.4对OS子系统的支持 94

4.4.5对称多处理的支持 95

4.5习题 95

第5章 互斥与同步 96

5.1并发的原理 96

5.1.1同步与互斥 97

5.1.2简单举例 97

5.1.3进程的交互 99

5.1.4互斥的要求 102

5.2互斥:硬件的支持 103

5.3信号量 106

5.3.1互斥 107

5.3.2生产者/消费者问题 109

5.3.3信号量的实现 112

5.4管程 114

5.4.1使用信号的管程 114

5.4.2使用通知和广播的管程 116

5.5消息传递 118

5.5.1同步 118

5.5.2寻址 119

5.5.3消息格式 120

5.5.4排队原则 120

5.5.5互斥 121

5.6读者/写者问题 122

5.6.1读者优先 123

5.6.2写者优先 123

5.7习题 126

第6章 死锁与饥饿 127

6.1死锁原理 127

6.1.1可抢占资源和不可抢占资源 127

6.1.2可重用资源和可消耗资源 128

6.1.3资源获取 129

6.1.4死锁的定义 130

6.1.5资源死锁的条件 131

6.1.6死锁建模 131

6.2死锁检测和死锁恢复 133

6.2.1死锁检测 134

6.2.2死锁恢复 135

6.3死锁避免 136

6.3.1资源轨迹图 137

6.3.2安全状态和不安全状态 138

6.3.3单个资源的银行家算法 139

6.3.4多个资源的银行家算法 139

6.4死锁预防 140

6.5活锁与饥饿 142

6.5.1两阶段加锁 142

6.5.2通信死锁 143

6.5.3活锁 144

6.5.4饥饿 145

6.6哲学家就餐问题 146

6.7习题 148

第3篇 存储管理与调度 150

第7章 存储管理 150

7.1无存储器抽象 150

7.2存储器抽象:地址空间 152

7.2.1地址空间的概念 152

7.2.2交换技术 153

7.2.3空闲内存管理 154

7.2.4驻留集管理 157

7.3虚拟内存 157

7.3.1分页 158

7.3.2页表 160

7.3.3加速分页过程 162

7.3.4针对大内存的页表 164

7.4页面置换算法 167

7.4.1最优页面置换算法 167

7.4.2最近未使用(NRU)页面置换算法 168

7.4.3先进先出(FIFO)页面置换算法 168

7.4.4第二次机会页面置换算法 169

7.4.5时钟页面置换算法 169

7.4.6最近最少使用(LRU)页面置换算法 169

7.4.7最不常用页面置换算法 170

7.4.8工作集页面置换算法 171

7.4.9工作集时钟(W SClock)页面置换算法 172

7.5习题 172

第8章 分页与分段设计 175

8.1分页系统的设计问题 175

8.1.1局部分配策略与全局分配策略 175

8.1.2负载控制 177

8.1.3页面大小 177

8.1.4分离的指令空间和数据空间 178

8.1.5共享页面 178

8.1.6共享库 179

8.1.7内存映射文件 181

8.1.8清除策略 181

8.1.9虚拟内存接口 181

8.2设计的实现问题 182

8.2.1与分页有关的工作 182

8.2.2指令备份 183

8.2.3后备存储 184

8.3分段 185

8.3.1纯分段的实现 188

8.3.2分段和分页结合:MULTICS 188

8.3.3分段和分页结合:Intel Pentium 190

8.4习题 190

第9章 处理器管理 193

9.1处理器调度的类型 193

9.2调度算法 195

9.2.1短程调度准则 195

9.2.2优先级的使用 196

9.2.3选择调度策略 197

9.2.4公平共享调度 201

9.3多处理器调度 201

9.3.1粒度 202

9.3.2设计问题 203

9.3.3进程调度 204

9.3.4线程调度 204

9.4实时调度 207

9.4.1实时操作系统的特点 208

9.4.2实时调度方法 210

9.4.3限期调度 211

9.4.4速率单调调度 212

9.4.5优先级反转 212

9.5习题 213

第4篇 输入/输出和文件管理 216

第10章 输入/输出管理 216

10.1 O硬件原理 216

10.1.1 I/O设备 216

10.1.2设备控制器 217

10.1.3内存映射IOo 218

10.1.4直接存储器存取 221

10.2 I/O软件原理 223

10.2.1 O软件的目标 223

10.2.2程序控制I/O 224

10.2.3中断驱动I/O 225

10.2.4使用DMA的I/O 225

10.3 I/O软件层次 226

10.3.1中断处理程序 226

10.3.2设备驱动程序 227

10.3.3与设备无关的I/O软件 229

10.3.4用户空间的I/O软件 232

10.4习题 233

第11章I/O设备管理 235

11.1盘 235

11.1.1磁盘 235

11.1.2光盘 237

11.1.3固态硬盘 238

11.2磁盘臂调度算法 240

11.3磁盘阵列(RAID) 242

11.4时钟 244

11.4.1时钟硬件 245

11.4.2时钟软件 245

11.4.3软定时器 247

11.5用户界面:键盘、鼠标和监视器 248

11.5.1输入软件 248

11.5.2输出软件 249

11.6电源管理 253

11.7习题 256

第12章 文件管理 259

12.1文件 259

12.1.1文件命名 260

12.1.2文件结构 261

12.1.3文件类型 262

12.1.4文件存取 263

12.1.5文件属性 263

12.1.6文件操作 264

12.2目录 264

12.2.1一级目录系统 265

12.2.2层次目录系统 265

12.2.3路径名 265

12.2.4目录操作 266

12.3文件系统的实现 267

12.3.1文件系统布局 267

12.3.2文件的实现 268

12.3.3目录的实现 270

12.3.4虚拟文件系统 271

12.4文件系统管理和优化 272

12.4.1磁盘空间管理 272

12.4.2文件系统备份 273

12.4.3文件系统的一致性 275

12.4.4文件系统性能 275

12.4.5磁盘碎片整理 276

12.5习题 277

第5篇 操作系统进阶 281

第13章 操作系统安全 281

13.1安全的概念 281

13.2威胁、攻击与资产 282

13.2.1威胁与资产 282

13.2.2入侵者 284

13.2.3数据意外遗失 285

13.3恶意软件 285

13.3.1特洛伊木马 286

13.3.2病毒 287

13.3.3蠕虫 288

13.3.4僵尸 289

13.3.5移动代码 290

13.3.6间谍软件 290

13.3.7 Rootkit 291

13.4内部与外部攻击 292

13.4.1后门陷阱 292

13.4.2逻辑炸弹 292

13.4.3登录欺骗 293

13.4.4利用代码漏洞 293

13.5身份验证与访问控制 294

13.5.1基于密码的身份验证 294

13.5.2基于令牌的身份验证 295

13.5.3生物特征识别认证 296

13.5.4访问控制 297

13.6入侵检测 298

13.6.1基于主机的入侵检测技术 298

13.6.2审计记录 299

13.7防御 299

13.7.1防火墙 299

13.7.2反病毒技术 300

13.7.3蠕虫对策 302

13.8习题 302

第14章 多媒体操作系统 306

14.1多媒体概述 306

14.2多媒体文件 308

14.2.1视频编码 309

14.2.2音频编码 310

14.3视频压缩 311

14.3.1 JPEG标准 311

14.3.2 MPEG标准 311

14.4音频压缩 313

14.5多媒体进程调度 313

14.5.1调度同质进程 313

14.5.2一般实时调度 314

14.5.3速率单调调度 315

14.5.4最早最终时限优先调度 316

14.6多媒体文件系统 317

14.6.1 VCR控制功能 318

14.6.2近似视频点播 319

14.7文件存放 320

14.7.1在单个磁盘上存放文件 321

14.7.2两个替代的文件组织策略 321

14.7.3近似视频点播的文件存放 323

14.7.4在单个磁盘上存放多个文件 323

14.7.5在多个磁盘上存放文件 324

14.8高速缓存 326

14.8.1块高速缓存 326

14.8.2文件高速缓存 328

14.9多媒体磁盘调度 328

14.9.1静态磁盘调度 328

14.9.2动态磁盘调度 328

14.10习题 329

第15章 嵌入式操作系统 333

15.1嵌入式系统 333

15.2 eCos 336

15.2.1可配置性 336

15.2.2 eCos组件 337

15.2.3 eCos调度程序 338

15.2.4 eCos线程同步 340

15.3 TinyOS 341

15.3.1无线传感器网络 342

15.3.2 TinyOS的目标 342

15.3.3 TinyOS的组件 343

15.3.4 Tinyos的调度程序 344

15.3.5 TinyOS的资源接口 344

15.4习题 345

第16章 分布式处理、客户/服务器和集群系统 346

16.1客户/服务器计算模型 346

16.1.1客户/服务器的概念 346

16.1.2客户/服务器的应用 347

16.1.3中间件 352

16.2面向服务的体系结构 353

16.3分布式消息传递 355

16.4远程过程调用 357

16.5集群 359

16.5.1集群的配置 360

16.5.2操作系统的设计问题 361

16.5.3集群计算机的体系结构 362

16.5.4 Windows集群服务器 364

16.5.5 Beowulf和Linux集群 365

16.6习题 366

附录 部分习题参考答案 370

参考文献 372

相关图书
作者其它书籍
返回顶部