第1章 操作系统概述 1
1.1 操作系统的定义 1
1.2 操作系统的功能及服务对象 2
1.2.1 操作系统的功能 2
1.2.2 操作系统的服务对象 4
1.3 操作系统的结构 4
1.3.1 层次结构 4
1.3.2 模块结构 5
1.4 操作系统的发展过程 6
1.5 操作系统的分类与基本特征 7
1.5.1 单道批处理系统 7
1.5.2 多道批处理系统 8
1.5.3 分时系统 10
1.5.4 实时系统 10
1.5.5 网络操作系统 11
1.5.6 分布式操作系统 14
1.5.7 嵌入式操作系统 16
1.5.8 操作系统的基本特征 17
习题 20
第2章 进程和线程 21
2.1 进程的定义 21
2.2 进程的管理 26
2.2.1 PCB简介 26
2.2.2 进程的调度 31
2.2.3 进程的同步与互斥 33
2.2.4 进程通信 44
2.3 线程的定义 50
2.3.1 线程的引入 50
2.3.2 线程的概念和属性 51
2.3.3 超线程简介 52
习题 56
第3章 调度与死锁 57
3.1 处理机调度的基本概念及设计原则 57
3.2 常用的几种调度方式 58
3.2.1 高级调度 58
3.2.2 低级调度 58
3.2.3 中级调度 60
3.3 几种常用的调度队列模型 60
3.3.1 只有进程调度的调度队列模型 60
3.3.2 具有高级和低级调度的调度队列模型 61
3.3.3 同时具有三级调度的调度队列模型 62
3.4 调度算法的若干准则 63
3.5 常用调度算法 63
3.5.1 先来先服务调度算法 63
3.5.2 短作业(进程)优先调度算法 64
3.5.3 高优先权优先调度算法 65
3.5.4 基于时间片轮转的调度算法 66
3.6 多处理机的调度 68
3.6.1 多处理机的类型 68
3.6.2 多处理机系统中的进程分配方式 68
3.6.3 进程(线程)的调度方式 69
3.7 死锁 72
3.7.1 产生死锁的原因 72
3.7.2 产生死锁的必要条件 73
3.7.3 预防死锁的基本方法 73
3.7.4 系统运行的安全状态 74
3.7.5 利用银行家算法避免死锁 75
习题 78
第4章 存储管理 80
4.1 存储管理的功能 80
4.1.1 内存分配与回收 80
4.1.2 内存共享与保护 81
4.1.3 地址映射 83
4.1.4 内存扩充 83
4.2 重定位 83
4.2.1 名字空间 83
4.2.2 逻辑空间 83
4.2.3 内存存储空间 84
4.2.4 地址重定位 85
4.3 存储空间的分配 87
4.3.1 单一连续分配 87
4.3.2 固定分区分配 88
4.3.3 动态分区分配 89
4.3.4 可重定位分区分配 92
4.3.5 分区的保护 92
4.4 覆盖技术 93
4.5 交换技术 94
4.6 分页存储管理 94
4.6.1 页表 95
4.6.2 分页的地址变换 96
4.6.3 两级页表及多级页表 98
4.7 分段存储管理 99
4.7.1 段表 100
4.7.2 分段的地址变换 100
4.8 段页式存储管理 101
4.9 虚拟存储管理 102
4.9.1 虚拟存储的概念 102
4.9.2 请求分页存储管理 104
4.9.3 页面置换算法 106
4.9.4 请求式分段存储管理 108
习题 109
第5章 设备管理 110
5.1 设备管理概述 110
5.1.1 设备的分类 110
5.1.2 设备管理的任务和功能 111
5.2 设备控制器 111
5.2.1 设备控制器的功能 112
5.2.2 设备控制器的组成 112
5.3 输入输出的控制方式 113
5.3.1 程序直接控制方式 113
5.3.2 中断控制方式 114
5.3.3 DMA控制方式 115
5.4 中断技术 116
5.4.1 中断的基本概念 116
5.4.2 中断的分类和优先级 116
5.4.3 中断的处理过程 117
5.5 缓冲技术 117
5.5.1 缓冲的引入 118
5.5.2 缓冲的种类 118
5.6 设备的分配技术 121
5.6.1 设备分配中的数据表 121
5.6.2 设备分配的策略 123
5.6.3 设备分配程序 124
5.7 SPOOLing技术 125
5.7.1 SPOOLing的概念 125
5.7.2 SPOOLing系统的组成 125
5.7.3 SPOOLing系统的特点 126
习题 126
第6章 文件管理 127
6.1 文件系统概述 127
6.1.1 文件和文件系统 127
6.1.2 文件的类型和属性 127
6.1.3 文件系统的基本功能 129
6.2 文件结构与存储 129
6.2.1 文件的逻辑结构 129
6.2.2 文件的物理结构 130
6.2.3 文件的存取方式 133
6.2.4 文件的存储设备 133
6.3 文件存储空间的管理 134
6.3.1 外存的主要技术参数 134
6.3.2 空闲块的管理 135
6.3.3 空闲块的分配策略 136
6.4 文件目录的管理 136
6.4.1 文件目录的概念 136
6.4.2 单级目录结构 137
6.4.3 二级目录结构 137
6.4.4 多级目录结构 138
6.5 文件的共享与保护 139
6.5.1 文件的共享 139
6.5.2 文件的保护 141
习题 143
第7章 操作系统接口 144
7.1 命令接口 144
7.1.1 联机命令的类型 144
7.1.2 键盘终端处理程序 145
7.1.3 命令解释程序 146
7.2 程序接口 146
7.3 系统调用 147
7.3.1 系统调用的类型 147
7.3.2 系统调用的执行步骤 149
7.4 图形用户接口 150
7.4.1 组成 150
7.4.2 图形用户界面的任务管理 151
习题 152
第8章 Windows操作系统 153
8.1 Windows操作系统简介 153
8.2 Windows操作系统的特点 155
8.2.1 16位图形用户接口 156
8.2.2 混合的16/32位操作系统 156
8.2.3 32位操作系统 156
8.2.4 64位操作系统 157
8.2.5 MS-DOS到Windows各版本的比较 157
8.3 Windows操作系统安全预防 158
习题 158
第9章 UNIX操作系统 159
9.1 UNIX操作系统概述 159
9.1.1 UNIX操作系统的发展过程 159
9.1.2 UNIX操作系统的主要版本 161
9.1.3 UNIX操作系统的特征 161
9.1.4 UNIX操作系统的结构 162
9.1.5 UNIX操作系统的启动流程 164
9.1.6 UNIX操作系统的用户和用户职责划分 168
9.1.7 UNIX操作系统的运行环境 169
9.1.8 UNIX用户的登录与退出 169
9.2 UNIX操作系统的文件系统和文件 171
9.2.1 磁盘组织 171
9.2.2 文件系统 171
9.2.3 文件类型 173
9.2.4 文件名和路径名 178
9.2.5 文件和目录的层次结构 179
9.3 进程的描述和控制 180
9.3.1 进程的PCB 180
9.3.2 进程的状态与进程映像 183
9.3.3 进程控制 185
9.3.4 进程调度与进程切换 186
习题 189
第10章 上机实验 190
实验一 进程管理 190
实验二 进程调度算法 194
实验三 存储管理 200
附录1 DOS/UNIX操作系统的常用命令 206
附录2 计算机系统和网络中的常用标准 207
附录3 在UNIX/Linux操作系统下网卡等外设的安装 210
附录4 计算机术语的解释 218