第1章 操作系统概述 1
1.1 操作系统的概念 1
1.1.1 计算机系统 1
目录 1
1.1.2 操作系统的地位与定义 2
1.2 操作系统的类型 3
1.2.1 多道批处理操作系统 3
1.2.2 分时操作系统 4
1.2.3 实时操作系统 4
1.2.5 分布式操作系统 5
1.2.4 网络操作系统 5
1.3 操作系统的功能和特征 6
1.3.1 操作系统的功能 6
1.3.2 操作系统的特征 7
1.4 操作系统的结构设计 8
1.4.1 操作系统的构件 9
1.4.2 操作系统的结构 10
1.5 常见的几种操作系统 12
1.5.1 DOS操作系统 12
1.5.2 Windows操作系统 13
1.5.3 UNIX操作系统 14
1.5.4 Linux操作系统 15
习题 16
第2章 作业管理 18
2.1 作业管理概述 18
2.1.1 作业、作业步和作业流 18
2.1.2 作业的状态 18
2.1.3 作业控制方式 19
2.2 操作系统与用户接口 19
2.2.2 程序接口 20
2.2.1 命令接口 20
2.3 批处理作业管理 21
2.3.1 作业控制语言 21
2.3.2 批处理作业的输入 23
2.3.3 批处理作业的调度 23
2.3.4 批处理作业的控制 28
2.4 交互式作业管理 29
2.4.1 交互式作业的控制 29
2.4.2 终端作业管理 30
习题 31
3.1.1 程序顺序执行 33
3.1 进程的引入 33
第3章 处理器管理 33
3.1.2 程序并发执行 34
3.1.3 多道程序设计 35
3.2 进程 36
3.2.1 进程的概念 36
3.2.2 进程的状态及其转换 37
3.2.3 进程控制块 38
3.2.4 进程控制 40
3.3.1 进程的并发性 42
3.3.2 进程的互斥与同步 42
3.3 进程间的相互作用 42
3.3.3 利用P-V操作实现互斥与同步 44
3.4 进程通信 49
3.4.1 消息缓冲通信 49
3.4.2 信箱通信 52
3.5 进程调度 53
3.5.1 进程调度的基本概念 53
3.5.2 进程调度算法 55
3.6 进程死锁 57
3.6.1 死锁的基本概念 57
3.6.3 死锁的避免 60
3.6.2 死锁的预防 60
3.6.4 死锁的检测与解除 62
3.7 线程 64
3.7.1 线程的引入 64
3.7.2 线程的概念 64
3.7.3 引入线程的优点 65
3.7.4 线程和进程的关系 65
3.7.5 线程的状态及其转换 66
3.7.6 用户级线程和内核级线程 66
习题 68
4.1.1 存储器管理的任务和功能 71
第4章 存储器管理 71
4.1 存储器管理概述 71
4.1.2 地址重定位 72
4.2 单用户连续存储管理 74
4.3 分区存储管理 75
4.3.1 固定分区存储管理 75
4.3.2 可变分区存储管理 77
4.4 覆盖技术与交换技术 82
4.4.1 覆盖技术 82
4.4.2 交换技术 83
4.5 分页式存储管理 84
4.5.1 基本思想 85
4.5.2 地址转换 85
4.5.3 主存块的分配与回收 87
4.5.4 页的共享和保护 88
4.6 分段式存储管理 88
4.6.1 基本思想 89
4.6.2 地址转换 89
4.7 段页式存储管理 90
4.7.1 基本思想 90
4.7.2 地址转换 91
4.8 虚拟存储管理 92
4.8.1 虚拟存储器的概念 92
4.8.2 分页式虚拟存储管理 92
4.8.3 分段式虚拟存储管理 97
习题 100
第5章 设备管理 103
5.1 设备管理概述 103
5.1.1 设备管理的目标和功能 103
5.1.2 设备的分类 104
5.2.1 独享设备的分配 105
5.2 设备的分配与调度 105
5.2.2 共享磁盘的调度 107
5.3 I/O控制方式 110
5.3.1 设备控制器 110
5.3.2 程序直接控制方式 110
5.3.3 中断方式 111
5.3.4 直接存储器存取方式 111
5.3.5 通道方式 112
5.4 设备处理 112
5.4.1 设备驱动程序的功能和特点 113
5.5.1 I/O缓冲技术 114
5.4.2 设备驱动程序的处理过程 114
5.5 设备管理采用的技术 114
5.5.2 SPOOLing技术 116
习题 117
第6章 文件管理 120
6.1 文件管理概述 120
6.1.1 文件管理的主要任务和功能 120
6.1.2 文件与文件系统 121
6.2.1 文件的逻辑结构 123
6.2.2 文件的物理结构 123
6.2 文件的组织 123
6.3 文件管理的内容 125
6.3.1 文件目录的管理 126
6.3.2 磁盘存储空间的管理 129
6.3.3 文件的保护和保密 130
6.4 文件的使用 132
6.4.1 文件的存取 132
6.4.2 文件的操作 132
习题 133
7.1.1 Linux操作系统的起源和发展 135
7.1 Linux操作系统概述 135
第7章 Linux操作系统 135
7.1.2 Linux操作系统的特点 136
7.1.3 Linux操作系统的硬件需求 136
7.2 Red Hat Linux的安装 137
7.2.1 Red Hat Linux的安装方法 137
7.2.2 Red Hat Linux的硬盘分区 138
7.2.3 Red Hat Enterprise Linux AS操作系统的安装 139
7.3 Red Hat Linux的基本操作 152
7.3.1 文本操作环境 152
7.3.2 窗口操作环境 154
7.3.3 Linux的常用命令 156
7.3.4 Linux的软件包管理命令 165
7.3.5 打包文件 170
7.3.6 账号管理 172
7.3.7 增加大量用户 180
7.3.8 设置目录与文件的使用权限 183
7.4 Linux的系统管理 188
7.4.1 Linux的处理器管理 188
7.4.2 Linux的内存管理 191
7.4.3 Linux的设备管理 192
7.4.4 Linux的文件管理 196
7.4.5 Linux与用户的接口 199
7.5 Linux的网络服务与资源共享 201
7.5.1 Linux网络硬件设备的安装与配置 201
7.5.2 Linux与Windows资源共享 203
7.5.3 Linux的网络工具与服务 203
7.6 GNU C编程 205
7.6.1 vim编辑器 206
7.6.2 GCC编译和链接 210
7.6.3 用make和makefile实现自动编译 214
习题 221
附录 实训项目 223