《操作系统》PDF下载

  • 购买积分:11 如何计算积分?
  • 作  者:许曰滨,孙英华,程亮主编
  • 出 版 社:北京:北京邮电大学出版社
  • 出版年份:2005
  • ISBN:7563510702
  • 页数:287 页
图书介绍:本书以现代操作系统的功能模块为主线,系统介绍了操作系统的原理与技术。内容包括:作业管理、进程管理、进程同步与通信、调度与死锁、存储管理、虚拟存储器技术、设备管理、文件管理和Linux系统实例等部分。

第1章 绪论 1

1.1 操作系统的形成与发展 1

目录 1

1.1.1 手工操作方式 2

1.1.2 单任务操作系统发展阶段 3

1.1.3 多任务操作系统发展阶段 4

1.1.4 规范化和微型化发展阶段 5

1.1.5 并行与分布式系统发展阶段 5

1.2 I/O控制技术的发展 6

1.2.1 早期的I/O方式 7

1.2.2 基于设备控制器的I/O技术 7

1.2.3 基于中断机制的I/O技术 7

1.2.4 基于DMA的I/O技术 8

1.2.5 基于通道的I/O技术 9

1.3.1 单道批处理方式 10

1.3 系统管理方式 10

1.3.2 多道批处理方式 11

1.3.3 分时处理 12

1.3.4 实时处理 13

1.4 操作系统的组成 14

1.4.1 各管理模块的功能 15

1.4.2 操作系统内核 16

1.5 通用操作系统 17

1.5.1 操作系统的基本特征 18

1.5.2 用户程序运行过程 18

1.5.3 系统启动过程 19

习题 20

第2章 作业管理 22

2.1 概述 22

2.1.1 作业分类 23

2.1.2 作业管理的功能 24

2.2 用户管理 25

2.2.1 添加和删除用户 26

2.2.2 用户组管理及用户登录管理 27

2.3 操作系统接口 28

2.3.1 脱机命令接口 28

2.3.2 联机命令接口 29

2.3.3 程序级接口 31

2.4 作业控制 32

2.4.1 后备状态 32

2.4.2 执行状态与完成状态 34

2.4.3 作业控制块 35

2.4.4 作业控制方式 36

2.5 作业调度 37

2.4.5 作业卸出 37

2.5.1 作业调度时机 38

2.5.2 调度算法 38

2.5.3 作业调度准则 40

2.6 作业调度的讨论 43

2.6.1 作业类型对作业调度的影响 43

2.6.2 优先级 45

2.6.3 程序道数对作业调度的影响 46

2.6.4 示例 47

习题 49

第3章 进程管理 50

3.1 进程管理的基本概念 50

3.1.1 程序的运行方式 50

3.1.2 进程概念 52

3.2.1 进程控制块的内容 53

3.2 进程控制块 53

3.1.3 进程管理的主要功能 53

3.2.2 进程基本状态及状态变迁 54

3.2.3 扩展状态 56

3.2.4 PCB组织结构 57

3.3 进程控制 59

3.3.1 进程创建与撤销原语 59

3.3.2 阻塞与唤醒原语 60

3.3.3 挂起与激活原语 62

3.4 进程调度 63

3.4.1 进程调度分类 63

3.4.2 轮转算法 65

3.4.3 多级队列调度算法 67

3.4.4 多级反馈队列调度 68

3.5 实时系统的进程调度 69

3.5.1 实时任务的分类及其调度方法 70

3.5.2 周期性任务调度 72

3.6 线程 73

3.6.1 线程的引入 73

3.6.2 线程结构 74

3.6.3 内核级线程 75

3.6.4 用户级线程 76

3.7 调度 77

3.7.1 中级调度 77

3.7.2 公平共享调度 78

3.7.3 多处理器系统调度 80

习题 82

第4章 并发与互斥 84

4.1 基本概念 84

4.1.1 临界资源和临界区 85

4.2.1 Dekker方法 86

4.1.2 互斥准则 86

4.2 实现互斥的软件方法 86

4.2.2 Peterson算法 89

4.3 实现互斥的硬件方法 90

4.3.1 交换指令 90

4.3.2 测试与设置指令 91

4.4 信号量机制 92

4.4.1 整型信号量 92

4.4.2 记录型信号量 94

4.4.3 信号量集机制 99

4.5 管程 101

4.6 进程通信 104

4.6.1 共享存储器系统 104

4.6.2 管道通信 106

4.6.3 消息传递 108

4.7 死锁 111

4.7.1 产生死锁的原因 111

4.7.2 死锁预防 112

4.7.3 死锁避免 114

4.7.4 死锁检测 117

4.7.5 死锁消除 118

习题 119

第5章 存储管理 122

5.1 存储器管理概述 122

5.1.1 内存储器的组成 122

5.1.2 存储管理的主要功能 123

5.1.3 存储管理的数据结构 125

5.1.4 存储管理的主要方法 127

5.2 单一连续区管理 127

5.3.1 固定分区 128

5.3 分区管理 128

5.3.2 动态分区 130

5.3.3 分配算法 132

5.3.4 可重定位动态分区管理 134

5.3.5 伙伴系统 134

5.4 分页存储管理 135

5.4.1 页面 136

5.4.2 页面分配与地址变换 138

5.4.3 页面共享 143

5.5 分段管理技术 145

5.5.1 分段管理的基本原理 145

5.5.2 段表 146

5.5.3 地址变换 148

5.5.4 分段保护与共享 149

5.5.5 段页式管理 150

习题 152

第6章 虚拟存储器 154

6.1 基础知识 154

6.1.1 覆盖技术 154

6.1.2 交换技术 155

6.1.3 局部性原理 157

6.2 请求分页存储管理 158

6.2.1 地址变换 158

6.2.2 置换算法 162

6.2.3 驻留集和工作集 167

6.2.4 抖动的产生和预防 170

6.3 请求分段存储管理 172

6.3.1 实现方法 172

6.3.2 分段共享 174

6.3.3 请求段页式存储管理 175

习题 176

第7章 设备管理 178

7.1 基础知识 178

7.1.1 外部设备 178

7.1.2 I/O控制方式 179

7.1.3 设备管理的功能与结构 185

7.2 逻辑I/O 187

7.2.1 设备分配 188

7.2.2 安全性 191

7.3 设备I/O 191

7.3.1 I/O任务 192

7.3.2 缓冲管理 192

7.4 I/O调度与驱动 196

7.4.1 I/O调度 196

7.4.2 通道程序 200

7.4.3 设备驱动程序 201

7.4.4 设备中断处理程序 202

7.5 虚拟设备 202

7.5.1 Spooling的基本概念 203

7.5.2 Spooling虚拟输入设备 204

7.5.3 Spooling虚拟输出设备 207

习题 209

第8章 文件管理 211

8.1 文件管理系统概述 211

8.1.1 文件的概念 211

8.1.2 文件的组成 212

8.1.3 文件管理系统的功能与特点 212

8.1.4 文件管理系统的组成 214

8.1.5 常见文件管理系统 214

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

8.2 文件的逻辑结构和物理结构 215

8.2.2 文件的物理结构 217

8.3 文件存储空间管理 222

8.3.1 空闲区表 223

8.3.2 空闲块链表 223

8.3.3 位示图 224

8.3.4 成组链接结构 224

8.4 文件目录管理 226

8.4.1 文件目录 226

8.4.2 文件目录结构 226

8.4.3 目录管理实例 229

8.4.4 UNIX的目录和索引结点 230

8.5 文件的共享、保护与保密 232

8.5.1 文件共享 232

8.5.2 文件保护 235

8.5.3 文件保密 237

8.6 文件的操作和使用 237

8.6.1 文件操作类系统调用 237

8.6.2 文件的使用 239

习题 239

第9章 Linux系统概述 242

9.1 Linux系统的发展和特性 242

9.1.1 Linux的诞生 242

9.1.2 Linux的发展 243

9.1.3 Linux的版本 244

9.1.4 Linux系统的功能特性 244

9.2 Linux系统的用户接口 245

9.2.1 Linux的命令接口 246

9.2.2 Linux的图形接口 246

9.3 Linux系统的进程管理 247

9.2.3 Linux的系统调用 247

9.3.1 进程控制块 248

9.3.2 进程状态及转换 249

9.3.3 进程的创建与撤销 250

9.3.4 Linux的线程机制 251

9.3.5 Linux的进程调度 251

9.3.6 进程的切换 253

9.4 进程的同步与通信 254

9.4.1 Linux进程的同步 254

9.4.2 Linux进程的通信机制 255

9.5 存储器管理 263

9.5.1 物理内存的管理 263

9.5.2 虚拟内存 265

9.5.3 Linux虚存的保护 267

9.5.4 Linux使用的缓存机制 267

9.6.1 设备和设备特殊文件 268

9.6 设备管理 268

9.6.2 相关数据结构 269

9.6.3 中断和异常 271

9.6.4 Linux的设备驱动程序 271

9.6.5 设备文件的存取权限和系统安全 274

9.7 文件管理 274

9.7.1 虚拟文件系统 274

9.7.2 EXT2文件系统 278

9.8 系统安全性 281

9.8.1 标识与鉴别 281

9.8.2 存取控制 282

9.8.3 审计与加密 282

9.8.4 网络安全 283

9.8.5 备份和恢复 284

习题 284

参考文献 286