第1章 操作系统概述 1
1.1计算机系统 1
1.1.1硬件与软件 1
1.1.2操作系统的形成 2
1.1.3操作系统发展的动力 4
1.2操作系统的定义与功能 4
1.2.1操作系统的定义 4
1.2.2操作系统的功能 5
1.3操作系统的种类 6
1.3.1批处理操作系统 6
1.3.2分时操作系统 7
1.3.3实时操作系统 9
1.3.4网络操作系统 10
1.3.5分布式操作系统 11
1.3.6嵌入式操作系统 12
习题 12
第2章 处理机管理 14
2.1进程 14
2.1.1多道程序设计 14
2.1.2进程的定义 17
2.1.3进程的特征 18
2.1.4进程的状态及状态变迁 19
2.2进程控制块 23
2.2.1进程的3个组成部分 23
2.2.2进程控制块 23
2.2.3进程控制块队列 25
2.3进程的调度与管理 27
2.3.1进程调度算法 27
2.3.2进程管理的基本原语 33
2.4作业调度 35
2.4.1用户与操作系统的两种接口 35
2.4.2作业与作业管理 38
2.4.3作业的调度算法 40
习题 46
第3章 存储管理 50
3.1存储管理综述 50
3.1.1存储器的层次结构 50
3.1.2高速缓冲存储器的工作原理 51
3.1.3存储管理的功能 52
3.2固定分区存储管理 53
3.2.1地址重定位 53
3.2.2地址的定位方式和静态重定位 54
3.2.3单一连续分区存储管理 56
3.2.4固定分区存储管理 58
3.3可变分区存储管理 61
3.3.1可变分区存储管理的基本思想 61
3.3.2地址动态重定位的过程 63
3.3.3空闲区的合并 64
3.3.4分区的管理与组织方式 66
3.3.5空闲分区的分配算法 70
3.3.6伙伴系统 71
3.4分页式存储管理 72
3.4.1分页式存储管理的基本思想 72
3.4.2分页式存储管理的地址转换 75
3.4.3内存块的分配与回收 80
3.5分段式存储管理 81
3.5.1分段及二维逻辑地址空间 82
3.5.2段表及地址变换过程 83
3.5.3存储保护与共享 85
3.5.4分段与分页的区别 86
3.6虚拟存储与请求分页式存储管理 87
3.6.1虚拟存储器的概念 87
3.6.2请求分页式存储管理的基本思想 88
3.6.3缺页中断的处理 89
3.6.4页面淘汰算法 94
习题 101
第4章 设备管理 104
4.1设备管理概述 104
4.1.1 I/O系统的组织结构 105
4.1.2计算机设备的分类 108
4.1.3设备管理的目标与功能 111
4.2输入/输出的处理步骤 111
4.2.1 I/O请求的提出 112
4.2.2对I/O请求的管理 112
4.2.3 I/O请求的具体实现 113
4.3设备的分配与调度算法 114
4.3.1管理设备时的数据结构 114
4.3.2独享设备的分配 117
4.3.3共享磁盘的调度 118
4.4数据传输的方式 123
4.4.1程序循环测试方式 123
4.4.2中断方式 124
4.4.3直接存储器存取方式 125
4.4.4通道方式 126
4.5设备管理中的若干技术 127
4.5.1 1/O缓冲技术 127
4.5.2虚拟设备与SPOOLing技术 129
习题 130
第5章 文件管理 133
5.1文件的结构 133
5.1.1文件与文件系统 133
5.1.2文件的逻辑结构 136
5.1.3文件的物理结构 138
5.1.4文件的存取 141
5.2磁盘存储空间的管理 142
5.2.1位示图 142
5.2.2空闲区表 143
5.2.3空闲块链 144
5.3文件管理与目录结构 145
5.3.1文件控制块与目录 145
5.3.2目录的层次结构 147
5.3.3“按名存取”的实现 149
5.4文件的使用 151
5.4.1文件的共享 151
5.4.2文件的保护 152
5.4.3文件的备份 154
5.4.4文件的操作 156
习题 157
第6章 进程间的制约关系 160
6.1进程间的制约关系 160
6.1.1与时间有关的错误 160
6.1.2竞争资源——互斥 163
6.1.3协同工作——同步 165
6.2信号量与P、V操作 166
6.2.1信号量与P、V操作的定义 167
6.2.2用P、V操作实现互斥 167
6.2.3用P、V操作实现同步 170
6.2.4用P、V操作实现资源分配 172
6.2.5互斥/同步的案例分析 174
6.3死锁、高级进程通信 177
6.3.1死锁与产生死锁的必要条件 177
6.3.2死锁的预防 180
6.3.3死锁的避免 181
6.3.4死锁的检测并恢复 185
6.3.5高级进程通信 186
习题 189
第7章 实例分析:Windows XP操作系统 193
7.1 Windows XP的处理机管理 193
7.1.1 Windows XP的结构 193
7.1.2 Windows XP的进程和线程 197
7.1.3 Windows XP的线程调度 203
7.1.4 Windows XP的同步机制 207
7.2 Windows XP的存储管理 208
7.2.1 Windows XP进程的空间布局 208
7.2.2 Windows XP的地址变换机构 209
7.2.3 Windows XP对内存的管理 212
7.2.4 Windows XP的页面调度 214
7.3 Windows XP的设备管理 216
7.3.1 Windows XP设备管理综述 216
7.3.2 Windows XP的1/O处理 218
7.3.3 Windows XP两级中断处理过程 221
7.4 Windows XP的文件管理 222
7.4.1 Windows XP文件系统综述 222
7.4.2 Windows XP的NTFS文件系统 226
7.4.3 NTFS的主文件表 228
7.4.4 NTFS的文件和目录结构 230
7.4.5 NTFS对可恢复性的支持 231
习题 235
第8章 实例分析:Linux操作系统 237
8.1 Linux的处理机管理 237
8.1.1 Linux的进程 237
8.1.2 Linux的进程调度 240
8.1.3 Linux进程间的通信——消息队列 242
8.2 Linux的存储管理 245
8.2.1 Linux的虚拟存储空间 245
8.2.2管理虚拟存储空间的数据结构 247
8.2.3管理内存空间的数据结构 248
8.2.4内存区的分配和页面淘汰策略 249
8.3 Linux的文件管理 250
8.3.1 Linux文件系统的构成 250
8.3.2 Ext2对磁盘的组织 251
8.3.3 Ext2文件的物理结构 254
8.3.4虚拟文件系统VFS的数据结构 256
8.4 Linux的设备管理 258
8.4.1 Linux设备管理概述 258
8.4.2 Linux对字符设备的管理 259
8.4.3 Linux对块设备的管理 261
习题 264
参考文献 265