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

现代操作系统PDF电子书下载

工业技术

  • 电子书积分:14 积分如何计算积分?
  • 作 者:汤小丹等编著
  • 出 版 社:北京:电子工业出版社
  • 出版年份:2008
  • ISBN:7121056585
  • 页数:408 页
图书介绍:本教材是对传统的和现代的操作系统(OS)作了较为全面的介绍。本书共分十七章:第1章为操作系统引论,介绍了OS的发展、传统的和现代的OS特征和功能,。第2~4章深入地阐述了进程(线程)管理、进程同步、处理机调度和死锁;第5、6章对连续和离散存储器管理方式及虚拟存储器进行了介绍;第7章是自下而上地对I/O系统的各个层次,作了较系统地阐述;第8、9章介绍了文件系统和磁盘存储器管理;第10章对用户接口,以及接口的实现方法做了介绍;从第11章开始到第15章,其内容都是与现代OS直接相关的。这几章的内容分别介绍多处理机OS、网络OS、多媒体OS和操作系统结构设计及系统安全性。第16、17章,介绍了一个OS实例Linux。本教材可作为计算机硬件、软件、计算机应用和计算机通信等专业的本科生教材,也可作为研究生教材,以及从事计算机及通信工作的相关科技人员的参考。
《现代操作系统》目录

第1章 操作系统引论 1

1.1 操作系统的目标和作用 1

1.2 操作系统的发展过程 4

1.3 操作系统的基本特性 9

1.4 现代操作系统的新特征 12

1.4.1 传统OS演变为现代OS的主要因素 12

1.4.2 多线程 13

1.4.3 微内核 14

1.4.4 网络化 15

1.4.5 多媒体 16

1.5 传统操作系统的主要功能 17

1.6 现代操作系统新增功能 21

1.6.1 系统安全管理 21

1.6.2 面向网络的功能和服务 22

1.6.3 多媒体功能 23

习题 24

第2章 进程的描述与控制 26

2.1 前趋图和程序执行 26

2.2 进程的描述 29

2.2.1 进程的定义和特征 29

2.2.2 进程的基本状态及转换 30

2.2.3 挂起操作和进程状态的转换 31

2.2.4 进程管理中的数据结构 32

2.3 进程控制 34

2.4 线程的基本概念 39

2.4.1 线程的引入 39

2.4.2 线程与进程的比较 40

2.4.3 线程的状态和线程控制块 41

2.4.4 线程的类型和多线程模型 42

2.5 线程的实现 43

2.5.1 线程的实现方式 43

2.5.2 线程的实现 44

2.5.3 线程的创建和终止 46

习题 47

第3章 进程的同步与通信 48

3.1 进程同步的基本概念 48

3.2 信号量机制 52

3.2.1 整型信号量和记录型信号量 52

3.2.2 AND型信号量和信号量集 54

3.2.3 信号量的应用 55

3.3 管程机制 57

3.3.1 管程的定义 57

3.3.2 条件变量 58

3.3.3 利用管程解决生产者-消费者问题 59

3.4 经典进程的同步问题 60

3.4.1 生产者-消费者问题 60

3.4.2 哲学家进餐问题 61

3.4.3 读者-写者问题 63

3.5 进程通信 65

3.5.1 进程通信的类型 65

3.5.2 直接消息传递系统 66

3.5.3 信箱通信 67

3.5.4 直接消息传递系统实例 68

3.5.5 线程间的同步和通信 70

习题 71

第4章 处理机调度与死锁 73

4.1 处理机调度的层次和调度算法的目标 73

4.2 作业与作业调度 75

4.2.1 批处理系统中的作业及调度 75

4.2.2 先来先服务和短作业优先调度算法 76

4.2.3 优先级调度算法和高响应比优先调度算法 77

4.3 进程调度 78

4.3.1 进程调度的任务、机制和方式 78

4.3.2 轮转调度算法 79

4.3.3 优先级调度算法 80

4.3.4 多级反馈队列调度算法 81

4.3.5 基于公平原则的调度算法 82

4.4 实时调度 83

4.4.1 实现实时调度的基本条件 83

4.4.2 实时调度算法的分类 84

4.4.3 最早截止时间优先算法 84

4.4.4 最低松弛度优先算法 86

4.4.5 优先级倒置 87

4.5 死锁概述 88

4.5.1 资源问题 88

4.5.2 计算机系统中的死锁 89

4.5.3 死锁的定义、必要条件和处理方法 90

4.6 预防死锁 91

4.7 避免死锁 93

4.7.1 系统安全状态 93

4.7.2 利用银行家算法避免死锁 94

4.8 死锁的检测与解除 96

4.8.1 死锁的检测 96

4.8.2 死锁的解除 98

习题 99

第5章 存储器管理 101

5.1 存储器的层次结构 101

5.2 程序的装入和链接 103

5.2.1 程序的装入 103

5.2.2 程序的链接 104

5.3 连续分配存储管理方式 105

5.3.1 单一连续分配 105

5.3.2 固定分区分配 106

5.3.3 动态分区分配 107

5.3.4 基于顺序搜索的分区分配算法 108

5.3.5 基于索引搜索的分区分配算法 109

5.3.6 可重定位分区分配 111

5.4 对换 112

5.5 分页存储管理方式 115

5.5.1 分页存储管理的几个基本概念 115

5.5.2 地址变换机构 116

5.5.3 两级和多级页表 118

5.5.4 反置页表工程 119

5.6 分段存储管理方式 120

5.6.1 分段存储管理方式的引入 120

5.6.2 分段系统的基本原理 121

5.6.3 信息共享 123

5.6.4 段页式存储管理方式 124

习题 125

第6章 虚拟存储器 127

6.1 虚拟存储器概述 127

6.1.1 传统存储管理方式的特征和局部性原理 127

6.1.2 虚拟存储器的定义和特征 128

6.1.3 虚拟存储器的实现方法 129

6.2 请求分页存储管理方式 130

6.2.1 请求分页中的硬件支持 130

6.2.2 请求分页中的内存分配 131

6.2.3 页面调入策略 133

6.3 页面置换算法 134

6.3.1 最佳置换算法和先进先出置换算法 135

6.3.2 最近最久未使用和最少使用置换算法 136

6.3.3 Clock置换算法 137

6.3.4 页面缓冲算法 139

6.4 “抖动”与工作集 139

6.5 请求分段存储管理方式 142

习题 145

第7章 输入/输出系统 147

7.1 I/O系统的功能、模型和接口 147

7.1.1 I/O系统的基本功能 147

7.1.2 I/O系统的层次结构和模型 148

7.1.3 I/O系统接口 150

7.2 I/O设备和设备控制器 151

7.3 中断机构和中断处理程序 154

7.4 设备驱动程序 156

7.4.1 设备驱动程序概述 157

7.4.2 设备驱动程序的处理过程 157

7.4.3 对I/O设备的控制方式 159

7.5 与设备无关的I/O软件 161

7.5.1 基本概念 161

7.5.2 实现与设备无关性的软件 162

7.5.3 设备分配 163

7.5.4 逻辑设备名到物理设备名映射的实现 165

7.6 用户层的I/O软件 166

7.6.1 系统调用与库函数 166

7.6.2 假脱机系统 167

7.6.3 守护进程 168

7.7 缓冲区管理 169

7.7.1 缓冲的引入 169

7.7.2 单缓冲区和双缓冲区 170

7.7.3 环形缓冲区 171

7.7.4 缓冲池 172

7.8 磁盘存储器的性能和调度 173

7.8.1 磁盘性能简述 174

7.8.2 早期的磁盘调度算法 176

7.8.3 基于扫描的磁盘调度算法 177

习题 178

第8章 文件管理 180

8.1 文件和文件系统 180

8.2 文件的逻辑结构 183

8.2.1 文件逻辑结构的类型 184

8.2.2 顺序文件 184

8.2.3 索引文件 186

8.2.4 索引顺序文件 187

8.2.5 直接文件和哈希文件 189

8.3 文件目录 189

8.3.1 文件控制块和索引结点 189

8.3.2 简单的文件目录 191

8.3.3 树形结构目录 192

8.3.4 目录查询技术 194

8.4 文件共享 195

8.5 文件保护 198

8.5.1 保护域 198

8.5.2 访问矩阵 199

8.5.3 访问矩阵的修改 200

8.5.4 访问矩阵的实现 201

习题 202

第9章 磁盘存储器管理 204

9.1 外存的组织方式 204

9.1.1 连续组织方式 204

9.1.2 链接组织方式 205

9.1.3 FAT技术 206

9.1.4 NTFS的文件组织方式 208

9.1.5 索引组织方式 209

9.2 文件存储空间的管理 212

9.3 提高磁盘I/O速度的途径 215

9.4 提高磁盘可靠性的技术 218

9.5 数据一致性控制 221

习题 225

第10章 操作系统接口 227

10.1 用户接口 227

10.2 Shell命令语言 230

10.2.1 简单命令 231

10.2.2 其他常用命令 233

10.3 联机命令接口的实现 235

10.3.1 键盘终端处理程序 236

10.3.2 命令解释程序 237

10.4 系统调用的概念和类型 241

10.5 UNIX系统调用 244

10.6 系统调用的实现 246

10.6.1 系统调用的实现方法 247

10.6.2 UNIX系统调用的实现 248

10.6.3 Linux系统调用 250

10.6.4 Win32的应用程序接口 250

习题 251

第11章 多处理机操作系统 253

11.1 多处理机系统的基本概念 253

11.2 多处理器系统的结构 254

11.2.1 UMA多处理机系统的结构 255

11.2.2 NUMA多处理机系统结构 257

11.3 多处理机操作系统的特征与分类 260

11.4 进程同步 264

11.4.1 集中式与分布式同步方式 264

11.4.2 自旋锁 265

11.4.3 读-复制修改锁 266

11.4.4 二进制指数补偿算法和待锁CPU等待队列机构 267

11.4.5 定序机构 268

11.5 多处理机系统进程调度 269

11.5.1 用于评价调度性能的若干因素 269

11.5.2 进程分配方式 270

11.5.3 进程(线程)调度方式 271

习题 274

第12章 网络操作系统 275

12.1 计算机网络概述 275

12.1.1 网络的拓扑结构 275

12.1.2 计算机广域网 277

12.1.3 计算机局域网 278

12.1.4 Internet简介 279

12.2 网络体系结构 280

12.2.1 网络体系结构的基本概念 280

12.2.2 OSI七层模型 282

12.2.3 TCP/IP网络体系结构 283

12.2.4 LAN网络体系结构 284

12.3 客户-服务器模式 286

12.3.1 客户-服务器模式的基本概念 286

12.3.2 三层结构的客户-服务器模式 287

12.3.3 浏览器-服务器模式 289

12.4 网络操作系统的功能 289

12.5 网络操作系统提供的服务 293

12.5.1 传统信息服务 294

12.5.2 Web服务 294

12.5.3 域名系统 295

12.5.4 目录服务 297

习题 298

第13章 多媒体操作系统 300

13.1 多媒体系统简介 300

13.2 多媒体文件中的各种媒体 303

13.3 多媒体进程管理中的问题和接纳控制 306

13.4 多媒体实时调度 309

13.5 媒体服务器的特征和接纳控制 313

13.6 多媒体存储器的分配方法 316

13.7 高速缓存与磁盘调度 322

13.7.1 高速缓存 322

13.7.2 磁盘调度 323

习题 325

第14章 OS结构设计 327

14.1 OS设计概述 327

14.2 传统结构的操作系统 329

14.3 面向对象的程序设计 333

14.4 微内核OS结构 335

14.5 Windows 2000的体系结构 339

14.5.1 概述 339

14.5.2 系统核心态组件 340

14.5.3 执行体 342

14.5.4 用户态进程 343

习题 344

第15章 保护和安全 345

15.1 安全环境 345

15.2 数据加密技术 347

15.2.1 数据加密原理 347

15.2.2 对称加密算法与非对称加密算法 349

15.2.3 数字签名和数字证明书 349

15.3 用户验证 351

15.3.1 使用口令验证 351

15.3.2 基于物理标志的验证技术 353

15.3.3 生物识别验证技术 354

15.4 来自系统内部的攻击 355

15.5 来自系统外部的攻击 358

15.6 可信系统 363

15.6.1 访问矩阵模型和信息流控制模型 363

15.6.2 可信计算基 364

15.6.3 设计安全操作系统的原则 365

习题 366

第16章 Linux的进程控制子系统及存储管理 368

16.1 Linux概述 368

16.2 进程的描述 371

16.3 进程的控制和调度 373

16.3.1 进程的控制 373

16.3.2 进程调度与切换 376

16.4 进程的同步 377

16.4.1 锁机制 377

16.4.2 信号量机制 378

16.5 进程通信 379

16.5.1 信号 379

16.5.2 共享内存 380

16.5.3 消息队列 381

16.5.4 管道 382

16.6 Linux存储管理的主要数据结构 383

16.6.1 物理内存结构 383

16.6.2 虚拟内存结构 384

16.6.3 页表结构 386

16.7 内存的申请和释放 386

16.8 交换空间、页面置换和缓存机制 388

习题 391

第17章 Linux系统的文件管理和设备管理 392

17.1 Linux文件系统概述 392

17.1.1 Linux文件系统的结构 392

17.1.2 VFS的文件模型的结构及其功能 393

17.2 VFS的主要数据结构 394

17.3 Linux高速缓存 399

17.4 文件系统的安装及有关的操作 400

17.5 设备管理 403

习题 406

参考文献 407

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