本书可作为计算机硬件和软件以及计算机通信专业的本科生教材,也可作为从事计算机及通信工作的相关科技人员的参考书。
全书仍分为10章,第一章介绍了OS的发展、特征、功能以及OS结构;第二、三章深入地阐述了进程和线程的基本概念、同步与通信、调度与死锁;第四章对连续和离散存储器管理方式及虚拟存储器进行了介绍;第五章为设备管理,对I/O软件的层次结构作了较深入的阐述;第六、七章分别是文件管理和用户接口;第八章介绍了计算机网络、网络体系结构、网络提供的功能和服务以及Internet;第九章对保障系统安全的各种技术和计算机病毒都作了较详细的介绍;第十章是一个典型的OS实例——UNIX系统内核结构。
目录
- 第一章 操作系统引论
- 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.2.6 微机操作系统的发展
- 1.3 操作系统的基本特性
- 1.3.1 并发性
- 1.3.2 共享性
- 1.3.3 虚拟技术
- 1.3.4 异步性
- 1.4 操作系统的主要功能
- 1.4.1 处理机管理功能
- 1.4.2 存储器管理功能
- 1.4.3 设备管理功能
- 1.4.4 文件管理功能
- 1.4.5 操作系统与用户之间的接口
- 1.5 OS结构设计
- 1.5.1 传统的操作系统结构
- 1.5.2 客户/服务器模式
- 1.5.3 面向对象的程序设计
- 1.5.4 微内核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.3.4 管程机制
- 2.4 经典进程的同步问题
- 2.4.1 生产者—消费者问题
- 2.4.2 哲学家进餐问题
- 2.4.3 读者—写者问题
- 2.5 进程通信
- 2.5.1 进程通信的类型
- 2.5.2 消息传递通信的实现方法
- 2.5.3 消息传递系统实现中的若干问题
- 2.5.4 消息缓冲队列通信机制
- 2.6 线程
- 2.6.1 线程的基本能概念
- 2.6.2 线程间的同步和通信
- 2.6.3 线程的实现方式
- 2.6.4 线程的实现
- 习题
- 第三章 处理机调度与死锁
- 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.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 死锁的解除
- 习题
- 第四章 存储器管理
- 4.1 存储器的层次结构
- 4.1.1 多级存储器结构
- 4.1.2 主存储器与寄存器
- 4.1.3 高速缓存和磁盘缓存
- 4.2 程序的装入和链接
- 4.2.1 程序的接入
- 4.2.2 程序的链接
- 4.3 连续分配方式
- 4.3.1 单一连续分配
- 4.3.2 固定分区分配
- 4.3.3 动态分区分配
- 4.3.4 伙伴系统
- 4.3.5 哈希算法
- 4.3.6 可重定位分区分配
- 4.3.7 对换
- 4.4 基本分页存储管理方式
- 4.4.1 页面与页表
- 4.4.2 地址变换机构
- 4.4.3 两级和多级页表
- 4.5 基本分段存储管理方式
- 4.5.1 分段存储管理方式的引入
- 4.5.2 分段系统的基本原理
- 4.5.3 信息共享
- 4.5.4 段页式存储管理方式
- 4.6 虚拟存储器的基本概念
- 4.6.1 虚拟存储器的引入
- 4.6.2 虚拟存储器的实现方法
- 4.6.3 虚拟存储器的特征
- 4.7 请求分页存储管理方式
- 4.7.1 请求分页中的硬件支持
- 4.7.2 内存分配策略和分配算法
- 4.7.3 调页策略
- 4.8 页面转换算法
- 4.8.1 最佳置换算法和先进先出置换算法
- 4.8.2 最近最久未使用(LRU)置换算法
- 4.8.3 Clock 置换算法
- 4.8.4 其它置换算法
- 4.9 请求分段存储管理方式
- 4.9.1 请求分段中的硬件支持
- 4.9.2 分段的共享与保护
- 习题
- 第五章 设备管理
- 5.1 I/O 系统
- 5.1.1 I/O 设备
- 5.1.2 设备控制器
- 5.1.3 I/O 通道
- 5.1.4 总线系统
- 5.2 I/O 控制方式
- 5.2.1 程序 I/O 方式
- 5.2.2 中断驱动 I/O 控制方式
- 5.2.3 直接存储器访问 (DMA)I/O 控制方式
- 5.2.4 I/O 通道控制方式
- 5.3 缓冲管理
- 5.3.1 缓冲的引入
- 5.3.2 单缓冲和双缓冲
- 5.3.3 循环缓冲
- 5.3.4 缓冲池
- 5.4 I/O 软件
- 5.4.1 I/O 软件的设计目标和原则
- 5.4.2 中断处理程序
- 5.4.3 设备驱动程序
- 5.4.4 设备独立性软件
- 5.4.5 用户层的 I/O 软件
- 5.5 设备分配
- 5.5.1 设备分配中的数据结构
- 5.5.2 设备分配时应考虑的因素
- 5.5.3 独占设备的分配程序
- 5.5.4 SPOOLing 技术
- 5.6 磁盘存储器的管理
- 5.6.1 磁盘性能简述
- 5.6.2 磁盘调度
- 5.6.3 磁盘高速缓存
- 5.6.4 提高磁盘 I/O 速度的其它方法
- 5.6.5 廉价磁盘冗余阵列
- 习题
- 第六章 文件管理
- 6.1 文件和文件系统
- 6.1.1 文件、记录和数据项
- 6.1.2 文件类型和文件系统模型
- 6.1.3 文件操作
- 6.2 文件的逻辑结构
- 6.2.1 文件逻辑结构的类型
- 6.2.2 顺序文件
- 6.2.3 索引文件
- 6.2.4 索引顺序文件
- 6.2.5 直接文件和哈希文件
- 6.3 外存分配方式
- 6.3.1 连续分配
- 6.3.2 链接分配
- 6.3.3 FAT和NTFS技术
- 6.3.4 索引分配
- 6.4 目录管理
- 6.4.1 文件控制块和索引结点
- 6.4.2 目录结构
- 6.4.3 目录查询技术
- 6.5 文件存储空间的管理
- 6.5.1 空闲表法和空闲链表法
- 6.5.2 位示图法
- 6.5.3 成组链接法
- 6.6 文件共享与文件保护
- 6.6.1 基于索引结点的共享方式
- 6.6.2 利用符号链实现文件共享
- 6.6.3 磁盘容错技术
- 6.7 数据一致性控制
- 6.7.1 事务
- 6.7.2 检查点
- 6.7.3 并发控制
- 6.7.4 重复数据的数据一致性问题
- 习题
- 第七章 操作系统接口
- 7.1 联机用户接口
- 7.1.1 联机用户接口
- 7.1.2 联机命令的类型
- 7.1.3 键盘终端处理程序
- 7.1.4 命令解释程序
- 7.2 Shell 命令语言
- 7.2.1 简单命令
- 7.2.2 重定向与管道命令
- 7.2.3 通信命令
- 7.2.4 后台命令
- 7.3 系统调用
- 7.3.1 系统调用的基本概念
- 7.3.2 系统调用的类型
- 7.3.3 POSIX 标准
- 7.3.4 系统调用的实现
- 7.4 UNIX 系统调用
- 7.4.1 UNIX 系统调用的类型
- 7.4.2 被中断进程的环境保护
- 7.4.3 系统调用陷入后需处理的公共问题
- 7.5 图形用户接口
- 7.5.1 图形化用户界面
- 7.5.2 桌面、图标和任务栏
- 7.5.3 窗口
- 7.5.4 对话框
- 习题
- 第八章 网络操作系统
- 8.1 计算机网络概述
- 8.1.1 计算机网络的拓扑结构
- 8.1.2 计算机广域网络
- 8.1.3 计算机局域网络
- 8.1.4 网络互连
- 8.2 网络体系结构
- 8.2.1 网络体系结构的基本概念
- 8.2.2 OSI/RM 中的低三层
- 8.2.3 OSI/RM 中的高四层
- 8.2.4 TCP/IP 网络体系结构
- 8.2.5 LAN 网络体系结构
- 8.3 Internet 与 Intranet
- 8.3.1 Internet 简介
- 8.3.2 Internet 提供的传统信息服务
- 8.3.3 Web 服务
- 8.4 客户/服务器模式
- 8.4.1 两层结构客户/服务器模式的局限性
- 8.4.2 三层结构的客户/服务器模式
- 8.4.3 两层客户/服务器与三层客户/服务器的比较
- 8.4.4 浏览器/服务器(Browser/Server)模式
- 8.5 网络操作系统的功能
- 8.5.1 数据通信功能
- 8.5.2 网络资源共享功能
- 8.5.3 应用互操作功能
- 8.5.4 网络管理功能
- 8.6 网络操作系统提供的服务
- 8.6.1 域名系统(DNS)
- 8.6.2 目录服务
- 8.6.3 支持Internet提供的服务
- 习题
- 第九章 系统安全性
- 9.1 系统安全的基本概念
- 9.1.1 系统安全性的内容和性质
- 9.1.2 系统安全威胁的类型
- 9.1.3 信息技术安全评价公共准则
- 9.2 数据加密技术
- 9.2.1 数据加密的基本概念
- 9.2.2 对称加密算法与非对称加密算法
- 9.2.3 数字签名和数字证明书
- 9.2.4 网络加密技术
- 9.3 认证技术
- 9.3.1 基于口令的身份认证
- 9.3.2 基于物理标志的认证技术
- 9.3.3 基于生物标志的认证技术
- 9.3.4 基于公开密钥的认证技术
- 9.4 访问控制技术
- 9.4.1 访问矩阵
- 9.4.2 访问矩阵的修改
- 9.4.3 访问控制矩阵的实现
- 9.5 计算机病毒
- 9.5.1 计算机病毒的基本概念
- 9.5.2 计算机病毒的类型
- 9.5.3 病毒的隐藏方式
- 9.5.4 病毒的预防和检测
- 习题
- 第十章 UNIX 系统内核结构
- 10.1 UNIX 系统概述
- 10.1.1 UNIX 系统的发展史
- 10.1.2 UNIX 系统的特征
- 10.1.3 UNIX 系统的内核结构
- 10.2 进程的描述和控制
- 10.2.1 进程控制块
- 10.2.2 进程状态与进程映像
- 10.2.3 进程控制
- 10.2.4 进程调度与切换
- 10.3 进程的同步与通信
- 10.3.1 sleep与wakeup同步机制
- 10.3.2 信号机制
- 10.3.3 管道机制
- 10.3.4 消息机制
- 10.3.5 共享存储区机制
- 10.3.6 信号量集机制
- 10.4 存储器管理
- 10.4.1 请求调页管理的数据结构
- 10.4.2 换页进程
- 10.4.3 请求调页
- 10.5 设备管理
- 10.5.1 字符设备缓冲区管理
- 10.5.2 块设备缓冲区管理
- 10.5.3 内核与驱动程序接口
- 10.5.4 磁盘驱动程序
- 10.5.5 磁盘读/写程序
- 10.6 文件管理
- 10.6.1 UNIX 文件系统概述
- 10.6.2 文件的物理结构
- 10.6.3 索引结点的管理
- 10.6.4 空闲磁盘空间的管理
- 10.6.5 文件表的管理
- 10.6.6 目录管理
- 习题
- 参考文献