内容简介
目录
第一章 操作系统概述
1.1 计算机发展简史
1.2 操作系统的发展过程
1.2.1 手工操作阶段
1.2.2 早期批处理阶段
1.2.3 执行系统阶段
1.2.4 多道程序系统阶段
1.3 什么是操作系统
1.4 操作系统的服务功能
1.4.1 系统调用
1.4.2 系统程序
1.5 操作系统的环境
1.6 操作系统的体系结构
1.7.1 多道成批系统
1.7 操作系统的分类
1.7.2 分时系统
1.7.3 实时系统
1.8 多处理机系统和计算机的不同级别
1.9 UNIX系统的特点和结构
1.10 小结
习题
2.1.1 程序的顺序执行
2.1 进程概念
第二章 进程管理
2.1.2 程序的并发执行和资源共享
2.1.3 程序并发执行的特性
2.1.4 进程概念的引入和描述
2.1.5 进程的状态及其变迁
2.1.6 进程的组成
2.1.7 UNIX系统的进程映象
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.3.4 用锁操作原语实现互斥
2.3.5 信号灯上的P、V操作原语
2.3.6 消息缓冲通信
2.3.7 信号机制
2.3.8 UNIX系统的进程通信方式
2.4 中断处理
2.4.1 中断及其一般处理过程
2.4.3 中断屏蔽
2.4.2 中断优先级和多重中断
2.4.4 UNIX系统对中断和陷入的处理
2.5 小结
习题
第三章 处理机管理
3.1 作业调度
3.2 进程调度
3.3 中级调度
3.4.2 性能评价标准
3.4 性能评价标准
3.4.1 调度策略的选择
3.5 常用调度算法
3.5.1 先来先服务(FCFS)
3.5.2 短作业优先(SJF)
3.5.3 优先级
3.5.4 抢占式和非抢占式算法
3.5.5 轮转法(RR)
3.5.6 多级队列法
3.5.7 多级反馈队列法
3.6 UNIX系统中的进程调度
3.6.1 进程调度
3.6.2 shell基本工作原理
3.6.3 系统初启
3.7 小结
习题
第四章 存储管理
4.1 引言
4.1.1 存储器的层次
4.1.2 用户程序的主要处理阶段
4.1.3 重定位
4.1.4 存储管理的功能
4.2 早期的存储管理技术
4.2.1 分区法
4.2.2 可重定位分区分配
4.3 多道程序对换技术
4.4 虚拟存储器的概念
4.5 请求分页式存储管理
4.5.1 分页的概念
4.5.2 请求分页的基本思想
4.5.3 硬件支持及缺页中断处理
4.5.4 请求分页的性能
4.5.5 页面淘汰
4.5.6 页面淘汰算法
4.5.7 物理页分配算法
4.5.8 工作集
4.5.9 请求分页的优缺点
4.6 UNIX S_5的存储管理
4.6.1 对换
4.6.2 请求分页
4.7.1 分段的概念
4.7 段式存储管理
4.7.2 硬件支持
4.7.3 连接中断处理
4.7.4 保护和共享
4.7.5 段式虚拟存储的优点和缺点
4.8 段页式结合系统
4.9 小结
习题
5.1.1 设备分类
5.1.2 设备管理的功能
第五章 设备管理
5.1 概述
5.1.3 通道技术
5.2 缓冲技术(Buffering)
5.2.1 缓冲技术的引入
5.2.2 缓冲区的设置
5.3.1 设备分配技术
5.3 设备分配技术与SPOOLing系统
5.3.2 SPOOLing系统
5.4 磁盘(鼓)的调度
5.4.1 物理特性
5.4.2 磁盘调度算法
5.4.3 系统设计应考虑的几个问题
5.5 UNIX系统的设备管理
5.5.1 UNIX系统的缓冲技术
5.5.2 块设备管理
5.5.3 字符设备管理
5.6 汉字信息处理技术
5.7 小结
习题
第六章 文件系统
6.1 概述
6.1.1 文件及其分类
6.1.3 存取方法和文件的逻辑组织
6.1.2 文件系统的功能
6.2 文件的物理组织
6.2.1 连续文件
6.1.4 成块和缓冲
6.2.2 串连文件
6.2.3 索引文件
6.2.4 多重索引结构
6.3 目录结构
6.3.1 目录及其主要操作
6.3.2 目录结构
6.4 文件存储空间的管理
6.4.1 空闲空间表法
6.4.2 空闲块链接法
6.4.3 位示图(Bit Map)法
6.4.4 空闲块成组链接法
6.5 对文件的主要操作
6.5.2 打开与关闭文件
6.5.1 创建和删除文件
6.5.3 读文件与写文件
6.5.4 连接文件与解除连接
6.6 文件保护
6.6.1 文件系统的可靠性
6.6.2 文件的共享与保密
6.7 文件系统与数据库
6.8 UNIX文件系统的内部实现
6.8.1 I节点(Inodes)
6.8.2 活动I节点的分配与释放
6.8.3 目录项和检索目录文件
6.8.4 用户打开文件表和系统打开文件表
6.8.5 文件卷和卷专用块
6.8.6 空闲I节点的分配与释放
6.8.7 空闲盘块的分配与释放
6.8.8 文件卷的安装与拆卸
6.8.9 各主要数据结构之间的联系
6.8.10 管道文件(pipe)
6.9 系统调用的实施举例
6.10 小结
习题
第七章 死锁
7.1 概述
7.1.1 什么叫死锁
7.1.2 资源概念
7.2 产生死锁的充要条件
7.2.1 产生死锁的充要条件
7.2.2 资源分配图
7.2.3 处理死锁的方法
7.3 死锁的预防
7.3.1 破坏相互排斥的条件
7.3.3 破坏非抢占式的条件
7.3.2 破坏占有且等待的条件
7.3.4 破坏循环等待的条件
7.4 死锁的避免
7.4.1 银行家算法
7.4.2 对单体资源类的简化算法
7.5 死锁的检测
7.5.1 多体资源类
7.5.2 单体资源类
7.6 死锁的恢复
7.6.1 选择牺牲者
7.6.2 重新运行
7.6.3 “饿死”状态
7.7 处理死锁的综合方式和未来的考虑
7.8 小结
习题
8.2.1 进程
8.2 模块化
8.1 概述
第八章 并发程序设计
8.2.2 过程
8.2.3 抽象数据类型——类程
8.3 同步
8.3.1 临界域
8.3.2 条件临界域
8.3.3 管程
8.3.4 进程、类程和管程间的关系
8.4 并发程序设计语言
8.4.1 并发Pascal
8.4.2 Ada
8.5 小结
习题
9.1 概述
第九章 多处理机系统
9.2 松散耦合系统和紧密耦合系统
9.3 多处理机操作系统
9.3.1 多处理机系统的问题和基本结构
9.3.2 UNIX多处理机系统
9.4 多处理机系统的未来
9.5 小结
习题
第十章 分布式系统
10.1 概述
10.2 分布式系统的系统结构
10.3 分布式系统的拓扑结构
10.3.1 完全连接
10.3.2 部分连接
10.3.3 分层结构
10.3.4 星形
10.3.6 多路存取总线
10.3.5 环形
10.4 分布式操作系统(DOS)
10.5 网络操作系统与分布式操作系统的区别
10.6 分布式UNIX系统
10.7 小结
习题
第十一章 操作系统的设计原则
11.1 大型软件的研制过程
11.3 结构程序设计
11.3.1 结构程序设计的概念
11.2 操作系统的目标
11.2.2 系统目标
11.2.1 用户目标
11.3.2 结构设计的目标
11.3.3 层次结构设计
11.4 虚拟机
习题
11.5 小结
第十二章 性能评价及安全性
12.1 性能评价
12.1.1 性能评价的目的
12.1.2 性能评价技术
12.2 操作系统的安全性
12.2.1 安全性问题
12.2.2 外部安全性
12.2.3 事故征兆监督
12.2.4 口令保护
12.2.5 存取控制
12.2.6 安全核心
12.2.7 失效弱化系统
12.3 小结
习题
主要参考文献
附录 UNIX系统调用及常用命令