本书在编写上突出内容的实用性和系统性。全书分为3个部分。第1~5章为基础篇,介绍操作系统的基础知识和基本管理功能;第6~7章为系统篇,介绍操作系统的管理功能在Windows和Linux系统中的实现方法;第8~9章为实训篇,分别在Windows和Linux操作系统中设置了8~10个实验项目,既有基础的命令操作,又有网络服务的配置操作,把理论教学和实践教学紧密结合起来。本书的特点是,理论知识内容深浅适度,实验和实训项目安排合理、步骤详细,具有很强的操作性,能提高学生对操作系统的应用能力。 本书可作为应用型、技能型人才学习“操作系统”课程的教学用书,也可供各类培训机构用作培训教材,对广大自学爱好者来说也是一本通俗易懂的自学参考书。第1章 概论 1
1.1 操作系统的形成与发展 1
1.1.1 无操作系统阶段 2
1.1.2 监控程序阶段 2
1.1.3 执行系统阶段 2
1.1.4 操作系统的形成与
成熟阶段 3
1.2 操作系统的基本概念 3
1.2.1 操作系统的定义和特征 3
1.2.2 操作系统的功能服务 4
1.2.3 操作系统的结构与
性能指标 5
1.3 操作系统的分类 7
1.3.1 多道批处理操作系统 7
1.3.2 分时操作系统 8
1.3.3 实时操作系统 8
1.3.4 网络操作系统 9
1.3.5 分布式操作系统 10
1.3.6 多处理机操作系统 11
1.3.7 嵌入式操作系统 11
1.4 操作系统的基本功能 12
1.4.1 处理机管理 12
1.4.2 存储器管理 13
1.4.3 设备管理 13
1.4.4 文件管理 13
1.5 操作系统的基本工作机制 14
1.5.1 接口机制 14
1.5.2 中断机制 15
1.5.3 指令机制 16
1.5.4 虚拟机制 17
1.5.5 时钟机制 17
1.6 现代主流操作系统简介 18
1.6.1 Windows操作系统 18
1.6.2 UNIX操作系统 19
1.6.3 Linux 操作系统 20
习题 22
第2章 进程管理 25
2.1 进程 25
2.1.1 进程的引入和定义 25
2.1.2 进程的状态和进程控制块 28
2.1.3 进程的调度 31
2.2 进程的同步与互斥 37
2.2.1 进程之间的制约关系 38
2.2.2 信号量机制 39
2.2.3 同步与互斥的实现 39
2.2.4 互斥与同步实例分析 43
2.3 进程的通信 46
2.3.1 消息缓冲通信 46
2.3.2 信箱通信 48
2.3.3 管道通信 49
2.4 死锁 50
2.4.1 死锁的基本概念 50
2.4.2 死锁的预防与避免 52
2.4.3 死锁的检测与解除 55
2.5 线程 58
2.5.1 线程的概念 58
2.5.2 线程实现机制 60
2.5.3 线程与进程的比较 62
2.6 系统调用 63
2.6.1 系统调用的基本概念 63
2.6.2 系统调用的实现过程 63
2.6.3 系统调用与一般过程调用、
库函数调用的主要区别 64
2.6.4 系统调用的主要种类 65
2.7 实例分析 65
习题 72
第3章 存储管理 77
3.1 存储管理的基本概念 77
3.1.1 存储管理的任务 77
3.1.2 覆盖与交换技术 82
3.2 实存管理 84
3.2.1 分区存储管理 84
3.2.2 分页存储管理 88
3.2.3 分段与段页式存储管理 93
3.3 虚拟存储管理 96
3.3.1 请求分页存储管理 96
3.3.2 调页与页面淘汰 97
3.3.3 页面置换算法 98
3.4 实例分析 101
习题 105
第4章 设备管理 109
4.1 设备管理概述 109
4.1.1 设备管理的基本任务和
功能 109
4.1.2 设备的类型 110
4.1.3 设备的分配 112
4.2 数据传输控制方式 118
4.2.1 程序直接控制方式 118
4.2.2 中断控制方式 119
4.2.3 DMA方式
(Direct Memory Access) 120
4.2.4 通道方式 122
4.3 设备管理技术 122
4.3.1 缓冲技术 122
4.3.2 中断技术 125
4.3.3 通道技术 129
4.3.4 SPOOLing技术 131
4.4 设备驱动程序 132
4.4.1 设备驱动程序的
功能 133
4.4.2 设备驱动程序的结构 133
4.5 实例分析 134
习题 141
第5章 文件管理 144
5.1 文件管理的基本概念 144
5.1.1 文件与文件名 144
5.1.2 文件系统 145
5.1.3 文件的分类 146
5.2 文件的组织与文件目录 148
5.2.1 文件的逻辑结构 148
5.2.2 文件的物理结构 148
5.2.3 文件目录 151
5.3 外存空间的管理 155
5.3.1 磁盘调度算法 155
5.3.2 磁盘存储空间的管理 160
5.4 文件共享与安全 162
5.4.1 文件共享的控制与实现 162
5.4.2 文件存取控制 163
5.5 文件操作的实现过程 166
5.5.1 文件的建立与删除 166
5.5.2 文件的打开与关闭 167
5.5.3 文件的读写操作 169
5.6 实例分析 169
习题 172
第6章 Windows 2000操作系统 175
6.1 Windows 2000 系统简介 175
6.2 Windows 2000 的进程管理机制 176
6.2.1 Windows 2000 线程调度 176
6.2.2 Windows 2000 进程的
通信 179
6.3 Windows 2000的存储管理机制 180
6.3.1 Windows 2000的
地址变换 180
6.3.2 Windows 2000的
页面调度策略 184
6.3.3 Windows 2000的
高速缓存管理 184
6.3.4 Windows 2000的
磁盘管理 188
6.4 Windows 2000的文件管理机制 190
6.4.1 Windows 2000 文件
系统的层次结构 190
6.4.2 Windows 2000 的
FAT文件系统 191
6.4.3 Windows 2000 的
NTFS文件系统 193
6.5 Windows 2000的用户接口
管理机制 196
6.5.1 Windows 2000 的
用户界面 196
6.5.2 Win32 API 198
习题 200
第7章 Red Hat Linux操作系统 201
7.1 Linux的进程管理机制 201
7.1.1 Linux进程结构 202
7.1.2 Linux 进程调度策略 206
7.1.3 Linux 进程优先级的调整 207
7.1.4 进程管理的常用命令和
系统调用 208
7.2 Linux的内存管理机制 210
7.2.1 Linux操作系统中的
虚拟存储空间 210
7.2.2 Linux的页面调度策略 211
7.2.3 Linux的交换文件和
交换分区 213
7.2.4 Linux的内存操作命令 214
7.3 Linux的文件和设备管理机制 215
7.3.1 Linux的文件系统 215
7.3.2 Linux的虚拟文件系统 217
7.3.3 Linux文件系统注册和装卸 220
7.3.4 Linux的设备文件和
设备驱动程序 223
7.3.5 文件管理的常用命令 225
7.4 Linux的用户管理机制 226
7.4.1 用户的管理 226
7.4.2 文件与目录的权限管理 229
7.4.3 常用的文件与目录命令 231
7.5 shell与文本编辑器vi 233
7.5.1 shell 233
7.5.2 vi文本编辑器 235
习题 237
第8章 Windows 2000 Server
实验与实训 239
8.1 Windows 2000 Server的安装 239
8.2 Windows 2000 Server磁盘管理 248
8.2.1 分区的创建和管理 248
8.2.2 文件的压缩、加密与
磁盘整理 252
8.3 Windows 2000 Server文件
系统管理 254
8.3.1 查看与更改文件、文件夹
的访问许可权 254
8.3.2 添加与管理共享文件夹 256
8.4 DNS服务器的安装和配置 257
8.5 WWW服务器的配置 262
8.5.1 安装IIS 263
8.5.2 配置、管理Windows 2000
WWW服务器 264
8.6 FTP服务器配置 267
8.6.1 配置、管理Windows 2000
FTP服务器 267
8.6.2 测试FTP服务器 270
8.7 DHCP服务器配置 270
8.7.1 添加DHCP服务器 271
8.7.2 DHCP服务器配置与管理 271
8.8 搭建一个基于Windows的局域网 276
8.8.1 组建一个基于Windows的
小型局域网络 276
8.8.2 设置文件夹共享和打印
及共享,映射网络硬盘 278
第9章 Red Hat 9.0实验与实训 280
9.1 Red Hat 9.0系统安装 280
9.1.1 实验目的 280
9.1.2 实验环境 280
9.1.3 实验预备知识 280
9.1.4 实验内容与步骤 282
9.2 Linux常用命令和工具 288
9.2.1 实验目的 288
9.2.2 实验环境 288
9.2.3 实验预备知识 288
9.2.4 实验内容和步骤 289
9.3 网络配置和管理 289
9.3.1 实验目的 289
9.3.2 实验环境 290
9.3.3 实验预备知识 290
9.3.4 实验内容与步骤 291
9.3.5 操作练习 296
9.4 进程和磁盘管理 296
9.4.1 实验目的 296
9.4.2 实验环境 296
9.4.3 实验预备知识 297
9.4.4 实验内容与步骤 300
9.5 用户管理 301
9.5.1 实验目的 301
9.5.2 实验环境 301
9.5.3 实验预备知识 301
9.5.4 实验内容与步骤 303
9.6 Samba服务器的配置 303
9.6.1 实验目的 303
9.6.2 实验环境 303
9.6.3 实验预备知识 304
9.6.4 实验内容与步骤 305
9.7 NFS服务器的配置 308
9.7.1 实验目的 308
9.7.2 实验环境 308
9.7.3 实验预备知识 308
9.7.4 实验内容与步骤 309
9.8 DNS服务器的配置 310
9.8.1 实验目的 310
9.8.2 实验环境 311
9.8.3 实验预备知识 311
9.8.4 实验内容与步骤 311
9.9 WWW服务器的配置 318
9.9.1 实验目的 318
9.9.2 实验环境 318
9.9.3 实验预备知识 318
9.9.4 实验内容与步骤 319
9.9.5 httpd.conf 文件解析 324
9.10 FTP服务器的配置 325
9.10.1 实验目的 325
9.10.2 实验环境 325
9.10.3 实验预备知识 325
9.10.4 实验内容与步骤(在Windows
客户机上进行) 327
9.10.5 vsftpd.conf文件解析 329
9.11 网络服务实验环境的准备和
IP地址规划 330
9.11.1 实验环境网络拓扑图及
IP地址规划 330
9.11.2 实验项目的设置 330
9.11.3 说明 331
