出版时间:2013-8 出版社:清华大学出版社 作者:王育勤 程海英 彭焱 徐鹏 编著
内容概要
《操作系统原理与应用》一书重点讲述了操作系统的一般性原理和应用技术。在理论上,力求系统、完整,尽量体现当代的先进研究成果;在讲授方法上,注意理论与实践的结合,特别是以当代最流行的UNIX操作系统为例,介绍了操作系统中主要服务功能的应用技术和技巧;在内容安排上,注意由浅入深,由一般到具体,先介绍操作系统的概念和服务功能,然后一一讲述这些功能的实现算法,并在最后以Linux操作系统为基础,讨论了Linux系统的安装、常用命令及其网络与通信,以其加强实践环节。
本书可作为高等学校计算机科学和工程类的专业教材,也可作为非计算机专业的研究生教材,还可作为从事计算机专业的广大科技工作者学习操作系统的参考用书。
书籍目录
目 录
第1章 操作系统概述 1
1.1 操作系统的发展过程 1
1.1.1 手工操作阶段 1
1.1.2 早期批处理阶段 2
1.1.3 执行系统 3
1.1.4 多道程序系统阶段 3
1.2 什么是操作系统 4
1.2.1 概念(定义) 4
1.2.2 设置操作系统的目的 5
1.2.3 操作系统的主要功能 5
1.2.4 操作系统的服务功能和方式 7
1.3 操作系统的结构 8
1.3.1 环境(外结构) 8
1.3.2 体系结构(内结构) 9
1.4 操作系统的分类 10
1.4.1 多道批处理系统 10
1.4.2 分时系统 11
1.4.3 实时系统 11
1.4.4 网络操作系统 13
1.4.5 区别 13
1.5 操作系统的特征 13
1.6 操作系统的性能 14
1.7 当前比较流行的几种微机操作系统 15
1.7.1 当前微机上的主流操作系统 15
1.7.2 如何选用操作系统 18
1.8 UNIX系统的特点和结构 19
习题 22
第2章 进程管理 23
2.1 进程管理的概念 23
2.1.1 程序的顺序执行 23
2.1.2 程序的并发执行和资源共享 23
2.1.3 程序并发执行的特性 25
2.1.4 进程 27
2.1.5 用进程概念说明操作系统的
并发性和不确定性 28
2.1.6 进程的状态及其变迁 29
2.1.7 进程的组成 30
2.1.8 UNIX系统的进程映像 33
2.2 有关进程的操作 36
2.2.1 进程的创建 36
2.2.2 进程终止和父/子进程的同步 38
2.3 进程间的相互作用和通信 41
2.3.1 同步 41
2.3.2 互斥 42
2.3.3 进程的临界区和临界资源 43
2.3.4 实施临界区互斥的锁操作法 43
2.3.5 信号量与P、V操作 46
2.3.6 高级通信机构 51
2.4 中断处理 54
2.4.1 中断及其一般处理过程 54
2.4.2 中断优先级和多重中断 57
2.4.3 中断屏蔽 57
2.4.4 中断在操作系统中的地位 58
2.4.5 UNIX系统对中断和陷入的处理 58
习题 61
第3章 处理机管理 64
3.1 概述 64
3.1.1 CPU调度的三级实现 64
3.1.2 进程的执行方式 67
3.1.3 CPU调度的基本方式 67
3.2 作业概念 68
3.2.1 作业管理的概念 68
3.2.2 作业管理的功能 71
3.3 常用的调度算法 74
3.3.1 先来先服务 74
3.3.2 最短周期优先 75
3.3.3 优先级 77
3.3.4 轮转法 77
3.3.5 可变时间片轮转法 79
3.3.6 多队列轮转法和多级反馈
队列法 79
3.4 UNIX系统中的进程调度 81
习题 86
第4章 存储管理 87
4.1 引言 87
4.1.1 二级存储器及信息传送 87
4.1.2 存储器分配 87
4.1.3 存储管理的基本任务 88
4.1.4 存储空间的地址问题 89
4.1.5 用户程序的装入 90
4.1.6 存储管理的功能 92
4.1.7 内存的扩充技术 92
4.2 分区式管理技术 95
4.2.1 固定分区法 95
4.2.2 可变分区法 96
4.2.3 硬件支持 98
4.3 可重定位分区分配 98
4.4 多道程序对换技术 99
4.5 请求分页存储管理 100
4.5.1 分页管理 100
4.5.2 请求分页管理 104
4.6 段式存储管理 112
4.6.1 分段和分段的地址空间 112
4.6.2 分段管理的实现 113
4.6.3 分段共享 114
4.6.4 段的动态链接 115
4.7 段页式存储管理 117
4.7.1 基本思想 117
4.7.2 实现过程 118
4.8 UNIX系统的存储管理 119
4.8.1 对换 120
4.8.2 请求分页 122
习题 126
第5章 设备管理 128
5.1 概述 128
5.1.1 设备分类 128
5.1.2 设备管理的目标和功能 129
5.1.3 通道技术 129
5.1.4 缓冲技术 132
5.2 设备分配技术与Spooling系统 133
5.2.1 设备分配技术 133
5.2.2 Spooling系统 134
5.3 RK磁盘设备 135
5.4 UNIX系统的设备管理 136
5.4.1 UNIX设备管理的特点 136
5.4.2 与设备驱动有关的接口 137
5.4.3 块设备管理中的缓冲技术 137
5.4.4 块设备的读、写 141
5.4.5 字符设备管理 145
习题 146
第6章 文件系统 147
6.1 概述 147
6.1.1 文件及其分类 147
6.1.2 文件系统的功能 148
6.1.3 文件系统的用户界面 149
6.1.4 文件系统的层次结构 150
6.2 文件的组织和存取方法 151
6.2.1 文件的逻辑组织和物理组织 151
6.2.2 文件的存取方式 154
6.3 目录结构 155
6.3.1 一级目录结构 155
6.3.2 二级目录结构 156
6.3.3 多级目录结构 157
6.4 文件存储空间的管理 159
6.4.1 记住空间分配现状的数据结构 159
6.4.2 存储空间分配程序 161
6.5 文件保护 162
6.5.1 文件系统的完整性 162
6.5.2 文件的共享与保护保密 163
6.6 对文件的主要操作 164
6.6.1 创建文件 164
6.6.2 文件的连接与解除连接 165
6.6.3 文件的打开和关闭 165
6.6.4 文件的读、写 166
6.7 文件系统的执行过程 166
6.8 UNIX文件系统的内部实现 168
6.8.1 i节点 168
6.8.2 活动i节点的分配与释放 169
6.8.3 用户打开文件表和系统打开
文件表 170
6.8.4 目录项和检索目录文件 172
6.8.5 文件的索引结构 175
6.8.6 文件卷和卷专用块 176
6.8.7 空闲i节点的管理 177
6.8.8 空闲存储块的管理 179
6.8.9 子文件系统装卸和装配块表 179
6.8.10 各主要数据结构之间的联系 181
6.8.11 管道文件(pipe) 181
6.9 系统调用的实例 186
习题 188
第7章 死锁 190
7.1 死锁的基本概念 190
7.1.1 什么是死锁 190
7.1.2 死锁的表示 191
7.1.3 死锁的判定法则 192
7.2 死锁的预防 193
7.3 死锁的避免 195
7.3.1 资源分配状态RAS 195
7.3.2 系统安全状态 196
7.3.3 死锁避免算法 196
7.3.4 对单体资源类的简化算法 198
7.4 死锁的检测和清除 198
7.4.1 死锁的检测 199
7.4.2 死锁的解除 200
习题 201
第8章 Linux系统的安装和初步
使用 202
8.1 Linux系统的安装 202
8.1.1 安装前的准备工作 202
8.1.2 Linux分区及文件系统 203
8.1.3 Linux安装步骤 203
8.2 Linux系统运行时相关的基本概念 207
8.2.1 Linux引导程序 208
8.2.2 加载Linux内核 209
8.2.3 Linux Shell 210
8.2.4 init进程 210
8.2.5 守护进程 211
8.2.6 建立终端 212
8.3 Linux系统的初步使用 213
8.3.1 登录 213
8.3.2 虚拟控制台切换 213
8.3.3 注销 214
8.3.4 重启计算机 214
8.3.5 关闭计算机 214
第9章 使用Shell和Linux的常用
命令 216
9.1 使用Linux基本命令 216
9.1.1 常用简单命令 216
9.1.2 目录管理命令 218
9.1.3 文件管理命令 220
9.2 使用命令补齐和别名功能 222
9.2.1 命令行自动补齐 222
9.2.2 命令别名 222
9.3 使用重定向和管道 223
9.3.1 重定向 224
9.3.2 管道 224
9.4 熟悉vi三种模式下的操作命令 225
9.4.1 vi的三种工作模式 225
9.4.2 vi在三种模式下的基本操作 225
9.5 使用vi建立简单的Shell脚本并
运行 228
9.5.1 创建Shell脚本 228
9.5.2 运行Shell脚本 228
9.5.3 Shell编程基础 229
9.5.4 流程控制语句 232
第10章 Linux系统管理 236
10.1 磁盘和文件系统管理 236
10.1.1 用户磁盘空间管理 236
10.1.2 文件系统管理 239
10.2 账户管理和操作权限 244
10.2.1 账户管理 244
10.2.2 操作权限管理 250
10.3 进程管理 253
10.3.1 进程基本概念 253
10.3.2 进程管理操作 253
10.3.3 工作任务管理工具 255
10.3.4 守护进程 257
10.4 RPM包管理 257
10.5 TCP/IP网络配置 259
10.5.1 TCP/IP 网络配置文件 259
10.5.2 TCP/IP 网络配置命令 262
10.5.3 常用网络测试工具 266
第11章 文件服务器与打印服务器 268
11.1 RPM的使用 268
11.1.1 初始化RPM数据库 268
11.1.2 RPM软件包的查询功能 268
11.1.3 RPM软件包的配置文件 270
11.2 FTP匿名下载 270
11.2.1 FTP 命令 270
11.2.2 安装、启动与停止vsftpd 服务 271
11.2.3 配置vsftpd 服务器 272
11.2.4 FTP匿名登录实例 273
11.3 Samba服务器 277
11.3.1 Samba 277
11.3.2 安装、启动与停止Samba 服务 278
11.3.3 配置Samba服务 278
11.3.4 配置Samba服务的密码文件 281
11.3.5 Samba的用户映射文件 282
11.3.6 Samba 服务的日志文件 283
11.3.7 Samba应用实例 283
11.3.8 Linux 访问Windows 的共享
资源 289
11.4 Linux打印服务器 290
第12章 Internet接入与代理
服务器的配置 293
12.1 调制解调器接入的配置 293
12.2 ISDN接入的配置 295
12.3 ADSL接入的配置 297
12.4 Squid代理服务器的配置 297
第13章 Linux DNS服务器配置 300
13.1 BIND的安装检查 300
13.2 高速缓存DNS服务器的配置 300
13.3 主DNS服务器的配置 301
13.4 辅助DNS服务器的配置 303
13.5 DNS客户机的配置 304
13.6 DNS的测试 304
参考文献 305
图书封面
评论、评分、阅读与下载