标题：操作系统基础（第3版）
图书信息：
作者：屠祁  ISBN：9787302039433
印次：3-9
装帧：平装
印刷日期：2011-10-31
图书简介：
本书是一本全面详尽地介绍Windows NT和近代UNIX，并以该系统作为范例的教科书。本书也是一本力求把现代操作系统的典型特征--多线程、微内核、SMP多处理器第应届生、分布式系统、客户/服务器模式与经典的操作系统原理紧密结合的教科书。本书共分6部分（14章）。第1部分介绍操作系统的基本概念和运行。第2部分分别以一章讨论进程和多线程机制以及并行性。第3部分主要讨论以SMP多处理器调度为中心的处理器管理与死锁。第4部分讨论存储管理技术，着重研究了内核主存管理和虚拟存储技术新发展。第5部分是设备和文件管理，着重介绍了流和虚拟（多重）文件系统机制。第6部分探讨了分布式计算机系统、微内核、操作系统结构和范例。
目录
第1部分概论
第1章引论1
1?1系统概述1
1?1?1计算机的硬件组织1
1?1?2软件的层次与虚拟机的概念3
1?2操作系统的形成和发展4
1?2?1什么是操作系统4
1?2?2操作系统的形成和发展4
1?3多道程序设计的概念6
1?3?1多道程序设计的引入6
1?3?2多道程序设计的概念6
1?4操作系统的功能和特性8
1?4?1操作系统的功能8
1?4?2操作系统的特性10
1?5操作系统的类型10
1?5?1多道批处理操作系统11
1?5?2分时系统11
1?5?3实时系统12
1?5?4网络操作系统13
1?6现代操作系统15
1?6?1现代操作系统特点15
1?6?2Windows NT简介16
习题17
第2章操作系统的运行环境19
2?1硬件环境19
2?1?1中央处理器(CPU)19
2?1?2主存储器21
2?1?3缓冲技术23
2?1?4中断技术24
2?1?5时钟、时钟队列28
2?2操作系统与其他系统软件的关系29
2?2?1作业、作业步和进程的关系29
2?2?2重定位的概念30
2?2?3绝对装入程序和相对装入程序31
2?3操作系统与人的接口33
2?3?1作业控制语言34
2?3?2联机作业控制——终端命令和图形用户接口(GUI)35
?2?4固件——微程序设计概念37
2?4?1微程序设计的概念37
2?4?2微程序设计和操作系统38
习题39
第2部分进程、多线程和并行性
第3章进程管理41
3?1进程的概念41
3?1?1进程的引入41
3?1?2进程的定义42
3?2进程的状态43
3?2?1进程的状态及其变化43
3?2?2进程的挂起和解除挂起的状态44
3?3进程的描述和管理45
3?3?1进程的描述45
3?3?2进程管理46
3?4进程控制47
3?4?1进程的控制原语47
3?4?2操作系统与进程控制的执行52
3?5UNIX SVR4的进程管理54
习题57
第4章多线程58
4?1线程的概念58
4?1?1线程的引入58
4?1?2线程的概念59
4?2线程的状态和线程管理61
4?2?1线程的状态61
*4?2?2线程的描述62
*4?2?3线程的管理、线程组66
*4?3多线程的实现67
4?3?1概说67
4?3?2用户级线程68
4?3?3内核级线程70
4?3?4KLT和ULT结合的方法71
4?3?5线程库71
*4?4Solaris操作系统的线程机制72
4?4?1Solaris的多线程结构72
4?4?2轻质进程73
4?4?3内核线程74
4?4?4用户线程75
4?4?5线程的执行75
4?4?6内核中断线程76
*4?5Mach操作系统的线程机制77
习题78
第5章并行性：互斥和同步79
5?1概论79
5?2临界段80
5?2?1临界段的提出80
5?2?2临界段的互斥要求82
5?3互斥82
5?3?1互斥的软件方法83
5?3?2互斥的硬件方法87
5?4信号量90
5?4?1信号量90
5?4?2信号量及同步原语90
5?4?3同步原语的不可分割性92
5?4?4用信号量实现进程间互斥93
5?4?5生产者和消费者问题94
5?4?6阅读者和写入者问题96
5?5管程97
5?5?1管程的定义97
5?5?2用管程实现同步98
5?6进程间的通信100
5?6?1进程通信的实现101
5?6?2间接通信模式102
5?6?3其他通信模式102
5?7UNIX的进程同步和通信103
5?7?1管道(pipes)103
5?7?2消息104
5?7?3共享主存段105
5?7?4信号量106
5?7?5信号或软中断108
5?8Solaris线程同步原语108
习题109
第3部分处理器管理、死锁
第6章多处理器管理系统和处理器管理112
6?1多处理器系统112
6?1?1多处理器系统的优点112
*6?1?2多处理器系统并行性的提高113
*6?1?3多处理器的硬件组织115
6?1?4多处理器系统的分类117
6?1?5主/从式多处理器系统117
6?2对称式多处理器系统(SMP)118
6?2?1对称式多处理器系统概念118
6?2?2多处理器操作系统118
6?3调度的层次和作业调度120
6?3?1调度的层次120
6?3?2作业状态121
6?3?3作业的调度121
6?4单处理器系统的处理器调度122
6?4?1选择调度算法时应考虑的问题123
6?4?2调度算法124
*6?5多处理器系统的处理器管理和调度128
6?5?1多处理器调度的概念128
6?5?2负载共享调度130
6?5?3专用处理器式调度131
6?5?4群调度131
6?5?5调度类和多模式调度器132
6?5?6实时调度133
*6?6UNIX类系统的处理器调度135
习题136
第7章死锁138
7?1死锁问题的提出138
7?2死锁的必要条件140
7?2?1资源的概念140
7?2?2死锁的必要条件140
7?3死锁的预防141
7?3?1预先静态分配法141
7?3?2有序资源使用法142
?7?4死锁的避免和银行家算法142
7?4?1单资源的银行家算法143
7?4?2多资源的银行家算法144
?7?5死锁检测与恢复145
7?5?1死锁的检测145
7?5?2死锁的恢复146
习题146
第4部分主存储器管理
第8章实存储器管理技术148
8?1引言148
8?1?1主存储器的物理组织、多级存储器148
8?1?2主存储器管理功能149
8?2固定分区149
8?3可变分区多道管理技术151
8?3?1可变分区存储管理的概念151
8?3?2存储分配算法152
8?3?3存储器的紧缩和程序的浮动154
8?3?4动态重定位的可变分区多道管理155
8?4多重分区(多对界地址)管理157
8?5简单分页157
8?6简单分段160
8?7内核主存管理161
8?7?1内核主存管理概述161
8?7?22次幂空闲表分配器162
8?7?3伙伴系统162
8?7?4SVR4的延迟伙伴算法164
习题165
第9章虚拟存储管理166
9?1虚拟存储系统的基本概念166
9?2分页存储管理167
9?2?1分页系统中的地址转换167
9?2?2硬件支持171
9?3分段存储管理173
9?3?1分段概述173
9?3?2分段的实现174
9?4段页式存储管理175
9?4?1段页式存储管理的基本概念175
9?4?2段页式存储管理中的地址转换175
9?4?3段页式存储管理算法176
9?4?4段页式存储管理的优缺点177
9?4?5Intel Pentium的段页式机制178
9?4?6保护环和调用门180
9?5页的置换算法181
9?5?1页面访问失效及处理181
9?5?2页面置换算法182
9?5?3交换区186
9?6页架的分配策略186
9?6?1物理主存186
9?6?2空闲页面链表187
9?6?3页架分配中的有关策略188
9?6?4分页环境中程序的行为特性191
9?7主存共享、快表一致性问题193
9?7?1主存共享193
9?7?2快表一致性问题194
9?8SVR4 UNIX的存储管理197
习题199
第5部分设备和文件管理
第10章设备管理201
10?1概述201
10?2I/O子系统的层次模型202
10?2?1I/O子系统的设计目标202
10?2?2I/O子系统的层次模型203
10?3I/O硬件组成204
10?3?1设备和设备控制器204
10?3?2直接存储器访问205
10?3?3通道方式和输入输出处理器206
10?4设备驱动程序207
10?4?1设备和驱动程序分类207
10?4?2设备开关表208
10?4?3设备驱动程序框架209
10?5I/O子系统211
10?5?1设备命名211
10?5?2输入输出缓冲区212
10?5?3I/O子系统独立于设备的工作215
*10?6流216
10?6?1流的概念216
10?6?2消息和队列218
10?6?3流I/O220
10?7磁盘调度221
10?7?1磁盘的硬件特性221
10?7?2磁盘调度算法223
10?8虚拟设备和SPOOL系统226
习题227
第11章文件系统229
11?1文件230
11?1?1文件的命名230
11?1?2文件的结构231
11?1?3文件的类型232
11?1?4文件的属性234
11?1?5文件的操作235
11?1?6文件加锁235
11?2目录236
11?2?1目录内容236
11?2?2文件目录的结构237
11?2?3路径名241
11?2?4符号连接242
11?2?5目录操作242
11?3文件系统的实现243
11?3?1文件空间的分配和管理243
11?3?2UNIX系统的目录实现246
11?3?3磁盘空间的管理248
11?3?4文件系统在主存的数据结构和打开操作249
11?3?5文件系统安装251
*11?4虚拟文件系统——多重文件系统框架和接口251
11?4?1vnode/vfs体系结构的目标和设计思想252
11?4?2虚拟文件系统接口概述253
11?4?3安装一个文件系统，虚拟文件系统开关表255
11?5安全性和保护256
11?5?1用户确认技术257
11?5?2保护机制——数据安全性258
11?5?3其他259
11?5?4文件的转储和恢复260
习题261
第6部分分布式计算机系统、操作系统结构和范例
*第12章分布式计算机系统262
12?1概述262
12?1?1什么是分布式计算机系统262
12?1?2分布式系统的优点263
12?2分布式操作系统特点264
12?2?1进程通信264
12?2?2资源管理265
12?2?3系统结构265
12?3进程通信266
12?3?1进程通信概述266
12?3?2TCP/IP通信协议267
12?3?3分布式环境的客户/服务器模式270
12?3?4分布式进程通信272
12?4分布式文件系统277
12?4?1分布式文件系统概述277
12?4?2分布式文件系统的组成278
12?4?3分布式文件系统的体系结构279
12?4?4客户端高速缓存和一致性282
12?5分布式系统中的互斥与死锁283
12?5?1逻辑钟和逻辑时283
12?5?2时间戳算法(Lamport算法)284
12?5?3令牌传送算法285
12?6进程迁移287
12?6?1进程迁移的原因287
12?6?2进程迁移机制288
习题289
第13章微内核、操作系统的结构和设计290
13?1微内核290
13?1?1使用微内核结构的优点290
13?1?2微内核结构292
13?1?3微内核的实现293
13?2操作系统的设计294
13?2?1设计的目标和原则294
13?2?2操作系统的设计296
13?3操作系统的结构298
13?3?1模块接口法(单块式)298
13?3?2层次结构设计法299
13?3?3客户/服务器方式300
习题301
*第14章Windows NT操作系统303
14?1Windows NT操作系统概述303
14?2Windows NT的设计目标304
14?3Windows NT的系统模型305
14?4Windows NT的结构307
14?4?1NT的保护子系统307
14?4?2NT执行体308
14?4?3客户/服务器模型实现的例子309
14?4?4关于NT的结构310
14?5Windows NT的基元成分——对象、进程和线程310
14?5?1对象310
14?5?2进程313
14?5?3线程315
14?5?4进程管理程序317
14?6微内核和对称多处理器系统318
14?6?1微内核和对称多处理器系统(SMP)318
14?6?2NT的线程状态转换318
14?6?3内核调度程序319
14?6?4进程和线程的优先级322
14?7NT的同步对象323
14?7?1线程同步概述323
14?7?2用NT对象进行同步324
14?8虚拟存储管理326
14?8?1进程的虚拟地址空间326
14?8?2NT的虚拟分页327
14?8?3页面调度策略和工作集330
14?8?4页架状态和页架数据结构331
14?8?5主存映射文件和视图332
14?9输入输出系统334
14?9?1输入输出(I/O)系统的结构335
14?9?2统一的驱动程序模型336
14?9?3异步I/O操作和I/O请求处理过程337
14?9?4映射文件I/O337
14?10Windows NT的内装网络337
14?10?1Windows NT的内装网络的特色338
14?10?2Windows NT网络的体系结构339
14?11对象管理程序340
14?12进程通信——本地过程调用(LPC)341
14?13Windows NT的安全性341
14?13?1NT安全性341
14?13?2存取令牌和安全描体342
14?14综述344
习题344
参考文献346