目录
第1章操作系统概述
1.1操作系统的定义
1.1.1基本概念
1.1.2一个计算机系统的视图
1.1.3操作系统的基本功能
1.2操作系统的形成和发展
1.3操作系统的分类
1.3.1单用户操作系统
1.3.2批处理操作系统
1.3.3实时操作系统
1.3.4分时操作系统
1.3.5网络操作系统
1.3.6分布式操作系统
1.3.7嵌入式操作系统
1.4操作系统的运行环境
1.4.1中央处理器
1.4.2特权指令
1.4.3处理器的状态
1.4.4程序状态字
1.5操作系统的结构
1.6现代操作系统
1.6.1现代操作系统技术特性
1.6.2UNIX技术特性
1.6.3Linux技术特性
1.6.4Windows技术特性
1.6.5OpenHarmony技术特性
小 结
习题
第2章进程与线程
2.1多道程序与并发执行
2.1.1单道程序的顺序执行
2.1.2多道程序的并发执行
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.1UNIX进程管理
2.4.2Linux进程与线程管理
2.4.3Windows进程与线程管理
2.4.4OpenHarmony进程与线程管理
小结
习题
第3章互斥与同步
3.1进程互斥
3.1.1并发原理
3.1.2临界资源与临界区
3.1.3互斥的软件实现方法
3.1.4信号量和P、V操作
3.2进程同步
3.2.1进程同步概念
3.2.2用P、V操作实现同步
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.4.4死锁的避免
3.4.5死锁检测与恢复
3.4.6两阶段加锁
3.4.7活锁
3.4.8饥饿
3.5多核环境下的进程同步
3.6进程同步与通信实例
3.6.1UNIX进程同步与通信
3.6.2Linux进程同步与通信
3.6.3Windows进程同步与通信
3.6.4OpenHarmony进程同步与通信
小结
习题
第4章处理器调度
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.4实时调度
4.4.1实时调度的特点
4.4.2常用的实时调度算法
4.5处理器调度实例
4.5.1UNIX处理器调度方法
4.5.2Linux处理器调度方法
4.5.3Windows处理器调度方法
4.5.4OpenHarmony处理器调度方法
4.6处理器调度新进展
小 结
习题
第5章内存管理
5.1内存管理的功能
5.1.1计算机系统的多级存储结构
5.1.2内存管理的任务和功能
5.2内存分配的几种形式与重定位
5.2.1内存分配的几种形式
5.2.2重定位
5.2.3覆盖与交换
5.3分区内存管理
5.3.1动态分区的基本概念
5.3.2动态分区的分配与回收
5.3.3分区管理的其他问题
5.4页式存储管理
5.4.1概述
5.4.2静态分页管理
5.4.3虚拟页式存储管理
5.4.4分页存储管理的优缺点
5.5段式及段页式存储管理
5.5.1段式存储管理
5.5.2段式虚拟存储管理
5.5.3段页式虚拟存储管理
5.6内存管理实例
5.6.1UNIX内存管理
5.6.2Linux内存管理
5.6.3Windows内存管理
5.6.4OpenHarmony内存管理
5.7内存管理设计与实现问题
5.7.1内存管理设计问题
5.7.2内存管理实现问题
小结
习题
第6章文件管理
6.1文件
6.1.1文件名
6.1.2文件的类型
6.1.3文件属性
6.1.4文件的操作
6.1.5文件数据的访问方法
6.1.6文件数据的逻辑结构
6.2目录
6.2.1目录与目录操作
6.2.2目录的类型
6.2.3文件的共享
6.3文件系统的空间管理
6.3.1文件系统的布局
6.3.2存储空间的组织
6.3.3文件空间的分配
6.3.4读写性能优化
6.4文件系统的可靠性
6.4.1文件系统的一致性
6.4.2基于日志的文件系统
6.5虚拟文件系统
6.6文件系统的类型
6.7文件系统实例
6.7.1Linux的文件系统
6.7.2OpenHarmony的文件系统
小结
习题
第7章输入/输出管理
7.1输入/输出管理概述
7.1.1输入/输出管理目标与功能
7.1.2输入/输出系统组成
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.3.4缓冲池
7.3.5缓冲的作用
7.4设备驱动程序
7.5设备分配
7.5.1设备分配原则与分配方式
7.5.2设备分配时应考虑的因素
7.5.3设备分配中的数据结构
7.5.4输入/输出设备分配的基本流程
7.5.5SPOOLing技术
7.6磁盘存储器的管理
7.6.1磁盘性能参数
7.6.2磁盘调度
7.7时钟管理和电源管理
7.7.1时钟管理
7.7.2电源管理
7.8输入/输出管理实例
7.8.1UNIX系统输入/输出管理
7.8.2Linux系统输入/输出管理
7.8.3Windows系统输入/输出管理
7.8.4OpenHarmony系统输入/输出管理
小结
习题
第8章操作系统安全
8.1概述
8.1.1信息系统与计算机系统安全
8.1.2操作系统安全性
8.1.3相关概念
8.2安全评估与标准
8.2.1可信计算机系统评价标准
8.2.2GB 17859—1999
8.2.3信息技术安全评定标准
8.3安全机制
8.3.1标识与鉴别机制
8.3.2访问控制
8.3.3可信通路
8.3.4安全审计机制
8.3.5存储保护、运行保护和I/O保护
8.3.6加密技术
8.3.7恶意代码
8.3.8备份与容错
8.3.9隐通道分析与处理
8.4安全模型
8.4.1BellLaPadula模型
8.4.2Biba模型
8.4.3ClarkWilson模型
8.4.4中国墙模型
8.4.5基于角色的访问控制模型
8.5安全体系结构
8.6相关实例
8.6.1SELinux系统
8.6.2EROS系统
小结
习题
第9章OpenHarmony系统
9.1OpenHarmony简介
9.1.1技术特性
9.1.2系统类型划分
9.1.3多内核
9.2OpenHarmony的架构
9.2.1系统架构概览
9.2.2子系统与组件概述
9.3OpenHarmony开发实践
9.3.1安装适用于Linux的Windows子系统
9.3.2安装库和工具集
9.3.3下载OpenHarmony源码
9.3.4编译源码
9.3.5烧录镜像
9.3.6编程实例
小结
习题
第10章操作系统设计问题
10.1操作系统设计目标
10.2界面设计
10.3操作系统设计实现
10.4性能优化
10.5项目管理
小结
习题
参考文献
