第1章绪论1.1操作系统的形成和发展
1.1.1操作系统发展的基础
1.1.2操作系统的发展过程
1.2什么是操作系统
1.3操作系统的功能和特性
1.3.1操作系统的功能
1.3.2操作系统的基本特征
1.4操作系统的类型
1.4.1批处理系统
1.4.2分时系统
1.4.3实时系统
1.4.4个人计算机上的操作系统
1.4.5网络操作系统
1.4.6分布式操作系统
1.4.7嵌入式操作系统
习题
第2章用户接口
2.1命令控制界面接口
2.1.1联机命令的类型
2.1.2联机命令的操作方式
2.2Linux系统的命令控制界面
2.2.1登录Shell
2.2.2命令句法
2.2.3常用的基本命令
2.2.4重定向与管道命令
2.2.5通信命令
2.2.6后台命令
2.3程序接口
2.3.1系统调用
2.3.2系统调用的类型
2.3.3系统调用的实现
2.3.4Linux系统调用
2.3.5Windows应用编程接口
习题
第3章进程管理
3.1进程的概念
3.1.1进程的引入
3.1.2进程的定义
3.1.3引入进程的利弊
3.2进程控制块和进程的状态
3.2.1进程的状态及其变化
3.2.2进程控制块
3.3进程的控制
3.3.1进程的创建原语
3.3.2进程的撤销原语
3.3.3进程的阻塞与唤醒原语
3.4进程同步
3.4.1互斥
3.4.2进程的同步
3.4.3同步机构
3.4.4同步机构应用
3.5经典的进程同步问题
3.5.1生产者—消费者问题
3.5.2读者—写者问题
3.5.3哲学家进餐问题
3.6进程通信
3.6.1进程通信的类型
3.6.2进程通信的方式
3.6.3消息缓冲机制
3.6.4信箱通信
3.7线程
3.7.1线程的引入
3.7.2线程的概念
3.7.3线程的使用界面
3.7.4线程的适用范围
3.7.5线程的分类及评价
习题
第4章处理机调度与死锁
4.1调度的基本概念
4.1.1作业概念及作业的状态
4.1.2分级调度
4.1.3调度的功能与时机
4.1.4调度原则与性能衡量
4.2调度算法
4.2.1先来先服务算法
4.2.2短作业优先算法
4.2.3最高响应比优先算法
4.2.4高优先权优先算法
4.2.5轮转法
4.2.6多级反馈队列算法
4.3实时调度算法
4.3.1实时系统的特点
4.3.2实时调度算法
4.4多处理机调度
4.4.1多处理机系统的类型
4.4.2多处理机系统调度方式
4.5死锁
4.5.1死锁的产生
4.5.2死锁的必要条件
4.6解决死锁的方法
4.6.1死锁的预防
4.6.2死锁的避免
4.6.3死锁的检测与解除
习题
第5章存储管理
5.1存储管理的基本概念
5.1.1物理内存和虚拟存储空间
5.1.2存储管理的主要任务
5.2分区式存储管理
5.2.1固定式分区
5.2.2可变式分区
5.2.3地址变换与内存保护
5.2.4分区式存储管理的优缺点
5.3页式存储管理
5.3.1静态页式存储管理
5.3.2动态页式存储管理
5.3.3指令存取速度与页面大小问题
5.3.4存储保护
5.3.5页式存储管理的优缺点
5.4淘汰算法与抖动现象
5.4.1淘汰算法
5.4.2抖动现象与工作集
5.5段式存储管理
5.5.1静态段式存储管理
5.5.2动态段式存储管理
5.5.3分段和分页的主要区别
5.5.4段的信息共享
5.5.5段的动态链接
5.5.6段式存储管理的内存保护
5.5.7段式存储管理的优缺点
5.6段页式存储管理
5.6.1实现原理
5.6.2段页式存储管理的其他问题
习题
第6章设备管理
6.1设备管理概述
6.1.1设备的分类
6.1.2设备管理的目标
6.1.3I/O系统的层次结构
6.2数据传送控制方式
6.2.1程序直接控制方式
6.2.2中断控制方式
6.2.3DMA控制方式
6.2.4通道控制方式
6.3中断处理与设备驱动程序
6.3.1中断处理过程
6.3.2设备驱动程序
6.4缓冲技术
6.4.1缓冲引入的原因
6.4.2缓冲的种类
6.4.3缓冲池的管理
6.5设备分配
6.5.1设备分配中的数据结构
6.5.2设备分配的原则
6.5.3设备分配程序
6.5.4SPOOLING技术
6.6逻辑I/O系统
习题
第7章文件管理
7.1文件和文件系统
7.1.1文件
7.1.2文件的分类
7.1.3文件管理系统
7.1.4文件系统的结构
7.2文件的逻辑结构
7.2.1无结构文件
7.2.2顺序文件
7.2.3索引文件
7.2.4直接文件
7.3文件的物理结构
7.3.1连续文件
7.3.2链接式文件
7.3.3索引文件
7.4文件存储空间的管理
7.4.1位示图法
7.4.2空闲表法
7.4.3空闲链表法
7.5文件目录管理
7.5.1文件控制块的内容
7.5.2目录结构
7.5.3目录管理
7.6文件共享和保护
7.6.1索引结点共享方式
7.6.2符号链接文件共享方式
7.6.3文件的保护
7.7磁盘管理与调度
7.7.1磁盘性能简述
7.7.2磁盘调度算法
习题
第8章Linux系统内核结构
8.1Linux概述
8.1.1Linux系统的发展史
8.1.2Linux系统的优点和缺点
8.1.3Linux内核的特征
8.1.4Linux内核的抽象结构
8.2Linux的进程管理
8.2.1Linux进程概念与描述
8.2.2Linux中的进程状态及其转换
8.2.3Linux中的进程调度
8.2.4Linux的进程控制
8.3Linux的进程通信
8.3.1管道通信方式
8.3.2信号
8.3.3UNIX System V IPC机制
8.4Linux存储管理
8.4.1进程虚存空间的管理
8.4.2虚存空间的映射和虚存区域的建立
8.4.3Linux的分页式存储管理
8.4.4物理内存空间的管理
8.4.5内存的分配与释放
8.5Linux文件管理
8.5.1Linux文件系统概论
8.5.2EXT2文件系统
8.5.3EXT2的inode和目录结构
8.5.4虚拟文件系统VFS
8.5.5VFS的超级块
8.5.6VFS的inode
8.5.7文件管理和操作
8.6Linux的设备管理
8.6.1设备管理概述
8.6.2Linux的I/O控制
8.6.3字符设备与块设备管理
习题
第9章Windows操作系统
9.1Windows 2000/NT操作系统简介
9.1.1Windows 2000/NT操作系统模型
9.1.2Windows 2000/NT的构成
9.1.3Windows 2000/NT可移植性的实现
9.1.4处理机和集群支持机制
9.1.5内核
9.1.6硬件抽象层
9.1.7执行体
9.1.8设备驱动程序
9.1.9环境子系统和子系统动态链接库
9.1.10系统支持进程
9.1.11安全考虑
9.2Windows 2000/NT进程管理
9.2.1Windows 2000/NT的对象和对象管理器
9.2.2Windows 2000/NT中进程的实现
9.3Windows 2000/NT中线程的实现
9.3.1Windows 2000/NT线程的组成
9.3.2Windows 2000/NT中与线程相关的系统调用
9.3.3Windows 2000/NT中线程的状态
9.3.4Windows 2000/NT的线程调度
9.4Windows 2000/NT进程互斥和同步的实现
9.5Windows 2000/NT的进程间通信
9.5.1Windows 2000/NT的信号
9.5.2Windows 2000/NT基于文件映射的共享存储区
9.5.3Windows 2000/NT管道
9.5.4Windows 2000/NT邮件槽
9.5.5套接字
9.6Windows 2000/NT内存管理
9.6.1Windows 2000/NT内存管理在功能与用户界面上的特点
9.6.2Windows 2000/NT内存管理用户界面
9.6.3Windows 2000/NT内存管理的内部实现
9.7Windows 2000/NT设备管理
9.7.1Windows 2000/NT设备管理的特点
9.7.2Windows 2000/NT设备管理实现机制
9.8Windows 2000/NT文件系统
9.8.1Windows 2000/NT文件系统的特点
9.8.2Windows 2000/NT文件系统实现机制
9.8.3NTFS内部结构与工作过程
习题
第10章网络、分布式和嵌入式操作系统
10.1网络操作系统
10.1.1网络操作系统的产生
10.1.2网络操作系统分类
10.1.3网络操作系统的功能及特点
10.2分布式操作系统
10.2.1分布式操作系统的特征
10.2.2分布式操作系统的基本特征
10.2.3分布式操作系统设计中要解决的关键问题
10.3嵌入式操作系统
10.3.1嵌入式操作系统的定义及特点
10.3.2嵌入式操作系统的开发环境
10.3.3嵌入式操作系统的应用
习题
参考文献