《计算机操作系统 第2版》PDF下载

  • 购买积分:12 如何计算积分?
  • 作  者:郁红英,王磊,武磊等编著
  • 出 版 社:北京:清华大学出版社
  • 出版年份:2014
  • ISBN:9787302371182
  • 页数:321 页
图书介绍:本书系统地介绍了现代操作系统的基本理论和最新技术,并具体分析了Windows和Linux中的实现技术和方法。本书的使用对象是开设操作系统课程的相关专业的本科生,以及具有一些操作系统基本知识并想进一步了解操作系统内部编程的读者。本书可作为普通高等院校操作系统课程的教材。

第0章 计算机系统概述 1

0.1计算机系统及其结构 1

0.2计算机硬件 2

0.2.1中央处理器 4

0.2.2存储器 5

0.2.3 I/O系统 6

0.2.4总线 7

0.2.5启动计算机 8

0.3指令的执行 9

0.3.1取指令与执行指令 9

0.3.2 I/O函数 9

0.4中断 9

0.4.1中断与指令周期 10

0.4.2中断处理 12

0.4.3多个中断 13

思考与练习题 13

第1章 操作系统引论 14

1.1操作系统的定义 14

1.1.1资源管理的观点 14

1.1.2用户的观点(扩展机器的观点) 15

1.2操作系统的产生和发展 16

1.2.1第一代计算机没有操作系统 16

1.2.2第二代计算机有了监控系统 16

1.2.3第三代计算机操作系统得到极大的发展 18

1.2.4第四代计算机操作系统向多元化方向发展 20

1.3操作系统的特征 21

1.4操作系统的功能 22

1.4.1进程管理 22

1.4.2存储管理 23

1.4.3设备管理 24

1.4.4文件管理 24

1.4.5操作系统接口 25

1.5操作系统类型 26

1.5.1批处理操作系统 26

1.5.2分时操作系统 28

1.5.3实时操作系统 30

1.5.4微机操作系统 32

1.5.5多处理机操作系统 38

1.5.6网络操作系统 39

1.5.7分布式操作系统 41

1.5.8嵌入式操作系统 42

思考与练习题 43

第2章 进程与线程 44

2.1进程的引入 44

2.1.1单道程序的顺序执行 44

2.1.2多道程序的并发执行 45

2.1.3程序并发执行的条件 47

2.1.4进程的概念 47

2.2进程的状态及组成 48

2.2.1进程的基本状态 49

2.2.2进程的挂起状态 50

2.2.3进程控制块 52

2.3进程控制 54

2.3.1操作系统内核 54

2.3.2进程的创建与撤销 56

2.3.3进程的阻塞与唤醒 57

2.3.4进程的挂起与激活 58

2.4线程 58

2.4.1线程的概念 59

2.4.2线程与进程的比较 61

2.4.3线程的实现 63

2.4.4多线程问题 69

思考与练习题 70

第3章 进程同步与通信 72

3.1进程同步与互斥 72

3.1.1并发原理 72

3.1.2临界资源与临界区 74

3.1.3互斥实现的硬件方法 76

3.1.4互斥实现的软件方法 77

3.1.5信号量和PV操作 79

3.2经典进程同步与互斥问题 81

3.2.1生产者—消费者问题 81

3.2.2读者—写者问题 83

3.2.3哲学家进餐问题 85

3.2.4打瞌睡的理发师问题 86

3.3 AND信号量 87

3.3.1 AND信号量的引入 88

3.3.2用AND信号量解决实际应用 89

3.4管程 90

3.4.1管程的思想 90

3.4.2管程的结构 91

3.4.3用管程解决实际应用 92

3.5同步与互斥实例 94

3.5.1 Solaris的同步与互斥 94

3.5.2 Windows的同步与互斥 95

3.5.3Linux的同步与互斥 95

3.6进程通信 96

3.6.1进程通信的类型 96

3.6.2进程通信中的问题 97

3.6.3消息传递系统的实现 98

3.6.4客户端—服务器系统通信 100

思考与练习题 101

第4章 调度与死锁 103

4.1调度类型与准则 103

4.1.1调度类型 103

4.1.2进程调度方式 104

4.1.3进程调度时机 105

4.1.4调度的性能准则 105

4.2调度算法 106

4.2.1先来先服务调度算法 106

4.2.2短作业(进程)优先调度算法 107

4.2.3时间片轮转调度算法 108

4.2.4优先权调度算法 109

4.2.5多级反馈队列调度算法 110

4.2.6多种调度算法比较 111

4.3死锁的基本概念 112

4.3.1死锁定义 112

4.3.2死锁产生的原因 112

4.3.3可重复使用资源和可消耗资源 114

4.3.4死锁产生的必要条件 116

4.4死锁的预防与避免 116

4.4.1死锁的预防 116

4.4.2死锁的避免 117

4.4.3银行家算法 118

4.5死锁的检测与解除 122

4.5.1资源分配图 122

4.5.2死锁的解除 123

4.5.3鸵鸟算法 124

思考与练习题 124

第5章 存储管理 126

5.1程序的装入和链接 126

5.1.1重定位 126

5.1.2链接 128

5.2连续分配存储管理方式 129

5.2.1单一连续分区 129

5.2.2固定分区 130

5.2.3可变分区 131

5.2.4动态重定位分区 133

5.3页式存储管理 133

5.3.1页式存储管理的基本原理 134

5.3.2页式存储管理的地址变换机构 135

5.3.3页表的硬件实现 136

5.3.4页表的组织 137

5.3.5页式存储管理系统举例 139

5.4段式存储管理 142

5.4.1段式存储管理的基本原理 142

5.4.2段式存储管理系统地址变换过程 143

5.4.3分段和分页的区别 143

5.4.4段的共享与保护 144

5.5段页式存储管理 147

5.5.1段页式存储管理的基本原理 147

5.5.2段页式存储管理的地址变换 147

5.5.3段页式存储管理系统举例 149

思考与练习题 152

第6章 虚拟存储管理 154

6.1虚拟存储器的引入 154

6.1.1局部性原理 154

6.1.2虚拟存储器 154

6.1.3虚拟存储器的特征 155

6.2请求页式存储管理 155

6.2.1请求页式存储管理系统的实现 155

6.2.2请求页式存储管理驻留集管理 157

6.2.3请求页式存储管理的调入策略 158

6.2.4请求页式存储管理的页面置换算法 159

6.2.5请求页式存储管理系统的性能 161

6.3请求段式存储管理 163

6.3.1请求段式存储管理的地址实现 163

6.3.2动态链接 164

思考与练习题 166

第7章 设备管理 168

7.1 I/O管理概述 168

7.1.1 I/O管理的功能 168

7.1.2 I/O硬件组成 169

7.1.3 I/O设备 170

7.1.4设备控制器 172

7.1.5设备通道 173

7.2 I/O控制方式 175

7.2.1程序直接控制方式 176

7.2.2中断控制方式 177

7.2.3 DMA控制方式 178

7.2.4通道控制方式 179

7.3 I/O系统 181

7.3.1设备分配 181

7.3.2 SPOOLing技术 186

7.3.3设备驱动程序 187

7.3.4中断处理程序 189

7.4磁盘管理 191

7.4.1磁盘结构和管理 191

7.4.2磁盘调度 195

7.4.3独立磁盘冗余阵列 197

7.5缓冲管理 200

7.5.1缓冲 201

7.5.2磁盘高速缓存 205

7.5.3提高磁盘I/O速度的其他方法 206

思考与练习题 207

第8章 文件管理 209

8.1文件概述 209

8.1.1文件类型 209

8.1.2文件属性 210

8.1.3文件的操作 211

8.1.4文件访问方式 211

8.2文件结构和文件系统 212

8.2.1文件结构 212

8.2.2有结构文件的组织 213

8.2.3文件系统 215

8.3目录 217

8.3.1文件控制块和索引节点 217

8.3.2单级目录 218

8.3.3两级目录 219

8.3.4树形目录 220

8.3.5目录的查询 222

8.3.6文件的共享 224

8.4文件系统实现 226

8.4.1文件系统的格式 227

8.4.2文件的存储结构 227

8.4.3空闲存储空间的管理 231

8.5文件系统的可靠性 235

8.5.1坏块管理 235

8.5.2备份 235

8.5.3文件系统一致性问题 236

8.5.4数据一致性控制 238

8.6保护机制 238

8.6.1保护域 239

8.6.2保护矩阵的实现 240

8.6.3分级安全管理 241

思考与练习题 243

第9章Windows Vista/7操作系统 245

9.1 Windows Vista/7的特点和结构 245

9.1.1 Windows Vista/7的特点 245

9.1.2 Windows Vista/7的结构 246

9.2 Windows Vista/7进程管理 249

9.2.1 Windows Vista/7的进程和线程 249

9.2.2 Windows Vista/7的互斥与同步 253

9.2.3 Windows Vista/7的进程通信 255

9.2.4 Windows Vista/7的线程调度 257

9.3 Windows Vista/7内存管理 262

9.3.1 Windows Vista/7的地址空间布局 262

9.3.2 Windows Vista/7的地址变换机制 263

9.3.3 Windows Vista/7的内存分配 266

9.3.4 Windows Vista/7的页面共享 268

9.3.5 Windows Vista/7的驻留集 269

9.3.6 Windows Vista/7的物理内存管理 270

9.4 Windows Vista/7设备管理 273

9.4.1 Windows Vista/7的I/O系统结构 273

9.4.2 Windows Vista/7的I/O系统的数据结构 274

9.4.3 Windows Vista/7的I/O系统的设备驱动程序 277

9.4.4 Windows Vista/7的I/O处理 278

9.4.5 Windows Vista/7的磁盘管理 279

9.4.6 Windows Vista/7的高速缓存管理 281

9.4.7 Windows Vista/7的高速缓存支持的操作 282

9.5Windows Vista/7文件管理 284

9.5.1 Windows Vista/7文件系统概述 284

9.5.2 NTFS卷及其结构 287

9.5.3 NTFS的可恢复性、可靠性和安全性 291

思考与练习题 293

第10章Linux操作系统 295

10.1 Linux内核设计 295

10.1.1内核设计目标 295

10.1.2微内核与单内核 296

10.1.3 Linux内核结构 297

10.2Linux系统的启动与初始化 298

10.2.1初始化系统 298

10.2.2操作系统的初始化 299

10.2.3 init进程 300

10.3Linux进程管理 300

10.3.1 Linux中的进程与线程 300

10.3.2进程与线程的创建和撤销 302

10.3.3进程调度 303

10.3.4进程通信 304

10.4 Linux内存管理 306

10.4.1虚拟内存管理 306

10.4.2物理内存管理 307

10.5Linux文件管理 308

10.5.1虚拟文件系统 309

10.5.2文件系统的安装与卸载 311

10.5.3 EXT2逻辑文件系统 313

10.6 Linux设备管理 315

10.6.1 Linux设备管理概述 315

10.6.2 Linux设备的类型 316

10.6.3中断 317

10.6.4缓存和刷新机制 318

10.6.5磁盘调度 318

思考与练习题 320

参考文献 321