第一章 操作系统引论
1.1 操作系统的目标和作用
1.1.1 操作系统的目标
1.1.2 操作系统的作用
1.1.3 推动操作系统发展的主要动力
1.2 操作系统的发展过程
1.2.1 无操作系统的计算机系统
1.2.2 单道批处理系统
1.2.3 多道批处理系统
1.2.4 分时系统
1.2.5 实时系统
1.3 操作系统的基本特性
1.3.1 并发(Concunence)
1.3.2 共享(Sharing)
1.3.3 虚拟(Virtual)
1.3.4 异步性(Asynchronism)
1.4 操作系统的主要功能
1.4.1 处理机管理功能
1.4.2 存储器管理功能
1.4.3 设备管理功能
1.4.4 文件管理功能
1.4.5 用户接口
1.5 操作系统的结构设计
1.5.1 软件工程的基本概念
1.5.2 传统的操作系统结构
1.5.3 微内核OS结构
习题
第二章 进程管理
2.1 进程的基本概念
2.1.1 程序的顺序执行及其特征
2.1.2 前趋图
2.1.3 程序的并发执行及其特征
2.1.4 进程的特征与状态
2.1.5 进程控制块
2.2 进程控制
2.2.1 进程的创建
2.2.2 进程的终止
2.2.3 进程的阻塞与唤醒
2.2.4 进程的挂起与激活
2.3 进程同步
2.3.1 进程同步的基本概念
2.3.2 信号量机制
2.3.3 信号量的应用
2.4 经典进程的同步问题
2.4.1 生产者一消费者问题
2.4.2 哲学家进餐问题
2.4.3 读者一写者问题
2.5 管程机制
2.5.1 管程的基本概念
2.5.2 利用管程解决生产者一消费者问题
2.6 进程通信
2.6.1 进程通信的类型
2.6.2 消息传递通信的实现方法
2.6.3 消息传递系统实现中的若干问题
2.6.4 消息缓冲队列通信机制
2.7 线程
2.7.1 线程的基本概念
2.7.2 线程间的同步和通信
2.7.3 内核支持线程和用户级线程
2.7.4 线程控制
习题
第三章 处理机调度与死锁
3.1 处理机调度的基本概念
3.1.1 高级.中级和低级调度
3.1.2 调度队列模型
3.1.3 选择调度方式和调度算法的若干准
3.2 调度算法
3.2.1 先来先服务和短作业(进程)优先调度算法
3.2.2 高优先权优先调度算法
3.2.3 基于时间片的轮转调度算法
3.3 实时调度
3.3.1 实现实时调度的基本条件
3.3.2 实时调度算法的分类
3.3.3 常用的几种实时调度算法
3.4 多处理机系统中的调度
3.4.1 多处理器系统的类型
3.4.2 进程分配方式
3.4.3 进程(线程)调度方式
3.5 产生死锁的原因和必要条件
3.5.1 产生死锁的原因
3.5.2 产生死锁的必要条件
3.5.3 处理死锁的基本方法
3.6 预防死锁的方法
3.6.1 预防死锁
3.6.2 系统安全状态
3.6.3 利用银行家算法避免死锁
3.7 死锁的检测与解除
3.7.1 死锁的检测
3.7.2 死锁的解除
习题
第四章 存储器管理
第五章 设备管理
第六章 文件管理
第七章 操作系统接口
第八章 网络操作系统
第九章 系统安全性
第十章 UNIX系统内核结构
参考文献
展开