第1章 操作系统概述 1
1.1 操作系统的基本概念 1
1.1.1 操作系统的概念 1
1.1.2 操作系统的特征 2
1.1.3 操作系统的目标和功能 3
1.1.4 本节习题精选 4
1.1.5 答案与解析 6
1.2 操作系统的发展与分类 7
1.2.1 手工操作阶段 7
1.2.2 脱机输入/输出阶段 8
1.2.3 批处理阶段 8
1.2.4 分时操作系统 9
1.2.5 实时操作系统 10
1.2.6 网络操作系统和分布式计算机系统 10
1.2.7 个人计算机操作系统 10
1.2.8 本节习题精选 11
1.2.9 答案与解析 12
1.3 操作系统的运行环境 14
1.3.1 操作系统的运行机制 14
1.3.2 中断和异常的概念 15
1.3.3 系统调用 16
1.3.4 本节习题精选 17
1.3.5 答案与解析 19
1.4 操作系统的体系结构 21
1.4.1 大内核和微内核 21
1.4.2 本节习题精选 21
1.4.3 答案与解析 22
1.5 本章疑难点 22
第2章 进程管理 23
2.1 进程与线程 24
2.1.1 进程的概念和特征 24
2.1.2 进程的状态与转换 25
2.1.3 进程控制 26
2.1.4 进程的组织 27
2.1.5 进程的通信 28
2.1.6 线程概念和多线程模型 29
2.1.7 本节习题精选 32
2.1.8 答案与解析 37
2.2 处理机调度 44
2.2.1 调度的概念 44
2.2.2 调度的时机、切换与过程 45
2.2.3 进程调度方式 46
2.2.4 调度的基本准则 46
2.2.5 典型的调度算法 47
2.2.6 本节习题精选 51
2.2.7 答案与解析 57
2.3 进程同步 69
2.3.1 进程同步的基本概念 69
2.3.2 实现临界区互斥的基本方法 70
2.3.3 信号量 73
2.3.4 管程 76
2.3.5 经典同步问题 77
2.3.6 本节习题精选 84
2.3.7 答案与解析 92
2.4 死锁 109
2.4.1 死锁的概念 109
2.4.2 死锁的处理策略 111
2.4.3 死锁预防 111
2.4.4 死锁避免 112
2.4.5 死锁检测和解除 116
2.4.6 本节习题精选 117
2.4.7 答案与解析 123
2.5 本章疑难点 132
第3章 内存管理 136
3.1 内存管理概念 137
3.1.1 内存管理的概念 137
3.1.2 覆盖与交换 139
3.1.3 连续分配管理方式 140
3.1.4 非连续分配管理方式 143
3.1.5 本节习题精选 151
3.1.6 答案与解析 160
3.2 虚拟内存管理 172
3.2.1 虚拟内存的基本概念 172
3.2.2 请求分页管理方式 173
3.2.3 页面置换算法 174
3.2.4 页面分配策略 178
3.2.5 抖动 179
3.2.6 工作集 179
3.2.7 本节习题精选 180
3.2.8 答案与解析 187
3.3 本章疑难点 200
第4章 文件管理 201
4.1 文件系统基础 202
4.1.1 文件的概念 202
4.1.2 文件的逻辑结构 204
4.1.3 目录结构 206
4.1.4 文件共享 210
4.1.5 文件保护 211
4.1.6 本节习题精选 213
4.1.7 答案与解析 216
4.2 文件系统实现 220
4.2.1 文件系统层次结构 220
4.2.2 目录实现 221
4.2.3 文件实现 221
4.2.4 本节习题精选 227
4.2.5 答案与解析 232
4.3 磁盘组织与管理 237
4.3.1 磁盘的结构 237
4.3.2 磁盘调度算法 238
4.3.3 磁盘的管理 242
4.3.4 本节习题精选 242
4.3.5 答案与解析 246
4.4 本章疑难点 250
第5章 输入/输出(I/O)管理 253
5.1 I/O管理概述 253
5.1.1 I/O设备 253
5.1.2 I/O控制方式 254
5.1.3 I/O子系统的层次结构 257
5.1.4 本节习题精选 259
5.1.5 答案与解析 261
5.2 I/O核心子系统 264
5.2.1 I/O子系统概述 264
5.2.2 I/O调度概念 264
5.2.3 高速缓存与缓冲区 264
5.2.4 设备分配与回收 268
5.2.5 SPOOLing技术(假脱机技术) 270
5.2.6 本节习题精选 271
5.2.7 答案与解析 274
5.3 本章疑难点 278
参考文献 280