第1章 引论 1
1.1 操作系统的定义与作用 1
1.2 操作系统的形成与发展 2
1.3 操作系统的基本概念 4
1.3.1 多道程序设计的思想 4
1.3.2 进程与资源 7
1.3.3 操作系统依赖的硬件环境 9
1.3.4 当前操作系统的主要分类 13
1.3.5 研究、分析操作系统的几种观点 16
1.3.6 操作系统的功能 18
1.4 目前微机常用操作系统的特点 20
1.4.1 DOS 20
1.4.2 Windows 21
1.4.3 UNIX 23
1.4.4 Linux 24
1.5 操作系统的组成与工作机制 25
1.5.1 操作系统的组成结构 26
1.5.2 操作系统的引导 27
1.5.3 操作系统的基本工作机制 28
1.6 习题 29
第2章 作业管理与用户界面 32
2.1 作业及其管理 32
2.1.1 作业管理的一般概念 32
2.1.2 批量型作业的管理 34
2.1.3 终端型作业的管理 38
2.2 系统调用 39
2.2.1 系统调用的一般概念 39
2.2.2 系统调用的执行过程与使用方法 40
2.3 Windows的用户界面 42
2.3.1 操作命令接口 42
2.3.2 编程接口 43
2.4 习题 45
第3章 进程管理 48
3.1 进程 48
3.1.1 进程的基本特征 48
3.1.2 进程状态及其转换 49
3.1.3 进程的描述 51
3.1.4 进程控制 54
3.2 线程 65
3.2.1 线程的概念 65
3.2.2 线程的种类与实现 67
3.2.3 Windows系统中的进程与线程 68
3.3 处理器调度 72
3.3.1 处理器调度的3种类型 72
3.3.2 进程调度算法 73
3.3.3 进程调度的时机 76
3.3.4 进程调度的操作内容 76
3.3.5 Windows系统的线程调度 77
3.4 习题 82
第4章 进程通信与死锁 85
4.1 死锁 85
4.1.1 死锁的基本概念 85
4.1.2 死锁的预防 88
4.1.3 死锁的避免 88
4.1.4 死锁的检测与解除 89
4.2 进程之间的同步与互斥 90
4.2.1 进程之间的关系 90
4.2.2 同步与互斥 91
4.2.3 生产者与消费者问题 93
4.2.4 进程互斥的一种实现方法 94
4.3 进程间的低级通信——信号量及其操作 95
4.3.1 信号量与P、V操作 95
4.3.2 运用信号量实现同步与互斥 96
4.3.3 经典的进程同步问题示例 98
4.3.4 Windows系统中的同步与互斥 104
4.4 进程间的高级通信 110
4.4.1 消息缓冲通信 110
4.4.2 信箱通信 112
4.4.3 管道通信 113
4.5 Windows系统中的一些高级通信机制 113
4.5.1 共享内存区通信 113
4.5.2 匿名管道通信 121
4.5.3 命名管道通信 124
4.5.4 邮件槽通信 130
4.6 习题 134
第5章 存储管理 137
5.1 存储管理的基本概念 137
5.1.1 存储系统的层次组织 137
5.1.2 程序及其运行与存储器地址的关系 139
5.1.3 存储管理的基本任务 141
5.2 分区存储管理 142
5.2.1 分区存储管理技术 142
5.2.2 固定分区 143
5.2.3 可变分区 143
5.2.4 覆盖技术 144
5.3 简单页式存储管理 145
5.3.1 页面 145
5.3.2 页表与地址映射 146
5.3.3 快表与关联寄存器 148
5.3.4 交换技术 148
5.4 请求页式虚拟存储管理 149
5.4.1 虚拟存储的一般概念 149
5.4.2 请求页式存储管理技术 150
5.4.3 调页与页面淘汰 151
5.4.4 页面置换算法 153
5.4.5 局部性原理与抖动现象 155
5.5 Windows系统的存储管理 157
5.5.1 地址空间 157
5.5.2 页表与地址转换 162
5.5.3 调页 164
5.5.4 内存页帧的状态与队列 164
5.6 段式与段页式存储管理 165
5.6.1 段式存储管理 166
5.6.2 段页式存储管理 167
5.7 习题 169
第6章 设备管理 172
6.1 设备与设备管理 172
6.1.1 设备的分类 172
6.1.2 设备管理的任务 173
6.2 设备管理有关的硬件概念 174
6.2.1 设备的连接与控制 174
6.2.2 设备的控制方式 175
6.2.3 缓冲区的管理 179
6.3 I/O软件原理 179
6.3.1 设备处理程序 180
6.3.2 物理设备与逻辑设备 183
6.3.3 I/O进程的工作过程 183
6.3.4 同步I/O与异步I/O 184
6.4 设备的分配与回收 186
6.4.1 设备分配的一般问题 186
6.4.2 虚拟设备与SPOOLing技术 187
6.4.3 磁盘调度问题 188
6.5 习题 191
第7章 文件管理 194
7.1 文件系统的基本概念 194
7.1.1 文件与文件系统 194
7.1.2 外存设备的存储特点 195
7.1.3 文件的逻辑结构 196
7.1.4 文件的物理结构 198
7.1.5 文件的存取方式 200
7.2 文件系统的实现 201
7.2.1 文件目录 201
7.2.2 盘图文件 203
7.2.3 Windows的FAT文件系统 204
7.2.4 Windows的NTFS文件系统 213
7.3 文件共享与安全 216
7.3.1 文件的共享 216
7.3.2 文件的保密 217
7.3.3 文件的保护 218
7.3.4 NTFS系统的安全性措施 219
7.4 文件操作的实现过程 219
7.4.1 文件系统的功能模块 219
7.4.2 文件操作的基本内容与过程 220
7.4.3 Windows文件系统的层次结构 225
7.5 习题 226
第8章 网络操作系统简介 229
8.1 计算机网络与网络操作系统 229
8.1.1 计算机网络 229
8.1.2 网络体系结构与协议 230
8.1.3 网络操作系统 233
8.2 局域网网络操作系统 234
8.2.1 局域网的工作模式 234
8.2.2 局域网网络操作系统的组成 235
8.2.3 主从网中的服务器操作系统 236
8.2.4 Windows服务器操作系统 237
8.3 操作系统对互联网的支持 245
8.3.1 网络互联技术的特点 246
8.3.2 TCP/IP协议 246
8.3.3 Windows对互联网的支持 250
8.3.4 传输层通信接口Winsock 258
8.4 习题 270
第9章 Linux操作系统简介 272
9.1 Linux概述 272
9.1.1 系统构成与引导 272
9.1.2 基本应用知识 279
9.1.3 文件与目录 285
9.1.4 创建与维护用户账户和组账户 290
9.1.5 系统调用 293
9.2 Linux的进程管理 296
9.2.1 有关进程的一些概念 296
9.2.2 进程控制 301
9.2.3 进程调度 308
9.2.4 进程通信 310
9.3 Linux的存储管理 315
9.3.1 虚空间与实空间的映射 315
9.3.2 物理空间页帧的管理 316
9.3.3 交换 317
9.4 Linux的设备与文件管理 320
9.4.1 设备管理 320
9.4.2 磁盘空间管理 321
9.4.3 EXT2文件系统 324
9.4.4 文件系统是可装卸的 329
9.4.5 Linux通过VFS能支持多种文件系统 332
9.4.6 文件的共享与保护 333
9.5 习题 335
附录A 各章VB程序例题及其引用的API函数索引 338
附录B 参考答案 342
参考文献 346