操作系统原理与Linux实践教程
作者: 申丰山
出版时间:2016年1月
出版社:电子工业出版社
- 电子工业出版社
- 9787121280108
- 1-1
- 51088
- 0047160975-0
- 平塑
- 16开
- 2016年1月
- 403
- 252
- 工学
- 软件工程
- TP316.85
- 计算机科学与技术
- 研究生、本科
本书结构完整,逻辑清晰,言简意赅,理论和实践相呼应,理解和应用交替穿插,有效克服学习的单调性,有助于活跃学生思维,激发学生学习兴趣。
本书可作为计算机及软件类本科专业课程教材或参考书,也可作为对工程实践能力有着更高要求的面向卓越工程师培养的同样专业的课程教材或参考书,也可供计算机及软件行业工程技术人员阅读和参考。
第1章 操作系统概论
1.1 操作系统的资源管理功能和目标
1.1.1 操作系统的定义
1.1.2 操作系统在计算机系统中的位置
1.1.3 操作系统的资源管理技术
1.1.4 操作系统运行程序的服务
实验1 Linux操作系统实验环境搭建
1.1.5 操作系统的目标
1.2 操作系统的功能
1.3 操作系统的主要特性
1.3.1 并发性
1.3.2 共享性
1.3.3 异步性
1.3.4 虚拟性
1.4 操作系统的发展和分类
1.4.1 操作系统的发展
1.4.2 操作系统的分类
1.5 操作系统的用户接口
1.5.1 程序接口
实验2 Linux程序接口实验
1.5.2 操作接口
实验3 Linux操作接口实验
1.6 操作系统的结构设计
1.6.1 操作系统的主要构件
1.6.2 操作系统的结构
1.6.3 操作系统运行模型
习题1
第2章 处理器管理
2.1 处理器
2.1.1 寄存器
2.1.2 指令系统、特权指令与非特权指令
2.1.3 处理器状态及切换
2.1.4 程序状态字寄存器
2.2 中断
2.2.1 中断概念
2.2.2 中断源分类
2.2.3 中断处理
2.3 进程及其实现
2.3.1 引入进程概念的必要性
2.3.2 进程定义和属性
2.3.3 进程状态与切换
2.3.4 进程描述
2.3.5 进程切换
2.3.6 模式切换
2.3.7 进程控制与管理
实验4 Linux进程控制实验
2.4 线程及其实现
2.4.1 多线程的引入
2.4.2 多线程环境中的进程与线程
2.4.3 多线程实现方法
实验5 结果不唯一的多线程并发运行实例
实验6 多线程共享资源并发访问控制
2.5 处理器调度系统
2.6 处理器调度算法
2.6.1 低级调度的功能和类型
2.6.2 作业调度和低级调度算法
习题2
第3章 并发进程的同步、互斥与死锁
3.1 并发进程
3.1.1 程序执行的顺序性
3.1.2 程序执行的并发性
3.1.3 与时间有关的错误
3.1.4 进程的交互
3.2 临界区管理
3.2.1 临界区调度原则
3.2.2 实现临界区管理的几种错误算法
3.2.3 实现临界区管理的Peterson算法
3.2.4 实现临界区管理的硬件设施
3.3 同步
3.3.1 同步与同步机制
3.3.2 信号量与PV操作
3.3.3 利用信号量实现互斥
3.3.4 利用信号量实现进程同步
3.3.5 Linux系统中的同步互斥功能
实验7 使用信号量解决生产者-消费者问题
3.4 管程
3.4.1 管程的概念
3.4.2 管程的实现
3.4.3 管程的应用
3.5 进程通信
3.5.1 管道通信机制
实验8 Linux管道通信
3.5.2 共享内存通信机制
实验9 Linux共享内存通信
3.5.3 消息传递通信机制
实验10 Linux消息传递通信
3.5.4 套接字通信机制
实验11 Linux套接字通信
3.5.5 信号通信机制
3.6 死锁
3.6.1 死锁的概念和产生的必要条件
3.6.2 死锁防止
3.6.3 死锁避免
3.6.4 死锁检测与解除
习题3
第4章 存储管理
4.1 存储器层次
4.2 地址重定位、存储保护和存储共享
4.3 连续存储管理
4.3.1 固定分区存储管理
4.3.2 可变分区存储管理
4.3.3 伙伴系统
4.3.4 主存不足的辅助存储管理技术
4.4 分页存储管理
4.4.1 分页存储管理方案
4.4.2 快表
4.4.3 分页存储空间的分配和释放
4.4.4 分页存储空间页面共享与保护
4.4.5 多级页表
4.4.6 反置页表
4.5 分段存储管理
4.6 虚拟存储管理
4.6.1 虚拟存储器原理
4.6.2 请求分页虚拟存储管理
习题4
第5章 设备管理
5.1 I/O硬件系统
5.1.1 I/O设备
5.1.2 I/O控制方式
5.2 I/O软件系统
5.2.1 I/O软件设计目标
5.2.2 中断处理程序
5.2.3 设备驱动程序
5.2.4 设备无关I/O软件
5.2.5 用户空间的I/O软件
5.3 磁盘管理
5.3.1 磁盘结构
5.3.2 磁盘调度算法
5.4 虚拟设备
5.4.1 虚拟设备原理
5.4.2 SPOOLing系统结构
习题5
第6章 文件管理
6.1 文件
6.1.1 文件概念
6.1.2 文件类型和属性
6.1.3 文件存取方法
6.1.4 文件操作
实验12 Linux文件操作
6.2 目录
6.2.1 目录项信息和结构
6.2.2 目录层次
6.2.3 目录操作
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.6 内存映射文件
实验13 Linux内存映射文件
6.7 虚拟文件系统
习题6
第7章 操作系统安全
7.1 操作系统安全概念
7.1.1 信息安全及威胁
7.1.2 信息保护
7.2 信息安全保护机制
习题7
第8章 多处理机与多计算机操作系统
8.1 多处理机操作系统
8.2 多计算机操作系统
习题8
参考文献