勇敢心资源网

当前位置:首页 > 百科 / 正文

UNIX作业系统教程(第3版)

(2021-06-27 23:16:11) 百科
UNIX作业系统教程(第3版)

UNIX作业系统教程(第3版)

《UNIX作业系统教程(第3版)》是由张红光、李福才编着,机械工业出版社出版的普通高等教育“十一五”国家级规划教材。本书可作为高等院校相关专业的作业系统课程教材,也可为需要了解和研究UNIX技术和套用的设计开发人员提供有益的支持和参考。

基本介绍

  • 书名:UNIX作业系统教程(第3版)
  • 作者:张红光、李福才
  • ISBN:978-7-111-28374-4 
  • 出版社:机械工业出版社
  • 出版时间:2009-12
  • 开本:16开 

内容摘要

UNIX作业系统和所包含的核心技术在经历了近半个世纪的风雨和磨难后,在新的流行作业系统如火如荼发展的今天又重新受到大家的关注,因为学术界、产业界和教育界都意识到了此项技术对于今天作业系统发展所起到的不可替代的作用和产生的重要影响。因此如何科学地研究、学习和掌握UNIX技术?如何把握好UNIX技术研究和UNIX套用技术学习的尺度?如何将作业系统的理论学习和实际系统的设计技术相结合?如何在系统学习作业系统技术的同时,给学生或读者提供概念清晰、易于实践的教学读本?是很多作业系统授课老师时常思考的问题。经过多年的教学实践,作者对上述问题有了自己独特的理解,并力求将这些解决方案集中体现在本教程的第3次修订中,希望广大读者和教师能从中获益。
在本次修订中,特别增添了一些UNIX实用编程设计技术,同时为满足学生和读者提出的自学要求,添加了一些指导性的实例教学内容。为配合部分高校老师的教学,对有些教学内容和教学层次也做了适当修订。

教材目录

第3版前言
第1章 绪论 1
1.1 作业系统概述 1
1.1.1 建立作业系统的目标 1
1.1.2 作业系统是用户与计算机的接口 1
1.1.3 作业系统是资源管理器 2
1.2 UNIX系统的主要特性 3
1.3 UNIX系统的发展史 4
1.4 开源软体与UNIX的推广发展 6
1.4.1 开源软体 6
1.4.2 促进UNIX发展的重要组织机构 7
1.4.3 各种UNIX系统分支 7
习题 9
第2章 UNIX基本概念及入门技术 10
2.1 UNIX系统基本常识 10
2.1.1 两种前端机 10
2.1.2 用户的注册与注销 11
2.1.3 账户的管理 12
2.1.4 用户口令的管理 12
2.1.5 用户组信息 13
2.2 初识UNIX的shell 13
2.2.1 什幺是shell程式 13
2.2.2 shell的内部命令和外部命令 14
2.3 UNIX系统启动及用户登录过程 14
2.3.1 UNIX系统的启动方式 14
2.3.2 UNIX系统的启动过程 14
2.3.3 Linux引导过程实例 15
2.3.4 用户的登录过程 17
2.4 UNIX常用命令介绍 18
2.4.1 UNIX命令使用方法 18
2.4.2 多命令行及多行命令 19
2.4.3 一般常用命令 19
2.4.4 用于目录操作的命令 23
2.4.5 用于档案操作的命令 24
2.4.6 有关状态及信息查询的命令 28
2.4.7 用于网路和通信的命令 31
2.5 UNIX系统体系结构 34
2.5.1 传统UNIX系统体系结构 34
2.5.2 现代UNIX系统体系结构 35
2.6 UNIX系统使用注意事项 36
2.6.1 正确选择用户访问许可权 36
2.6.2 移动存储设备的使用 36
2.6.3 UNIX对多种档案系统类型的支持 37
2.7 本章小结 40
习题 40
第3章 编辑UNIX的文本档案 42
3.1 标準编辑器ed 42
3.1.1 使用ed 的基本常识 43
3.1.2 元字元和正则表达式 43
3.1.3 如何进入ed、退出ed及保存文本
档案 44
3.1.4 ed中的常用命令 44
3.2 全萤幕幕编辑器vi 46
3.2.1 如何进入vi、退出vi及保存一个
档案 46
3.2.2 命令行方式下的常用命令 46
3.2.3 末行命令方式下的常用命令 47
3.2.4 进入插入编辑方式的常用命令 48
3.2.5 使用vi的注意事项 48
3.2.6 vi环境的设定 49
3.3 Emacs编辑器 50
3.3.1 Emacs的使用方法 51
3.3.2 Emacs主选单功能简介 52
3.3.3 Emacs中的功能键 53
3.4 本章小结 53
习题 54
第4章 UNIX系统的shell 55
4.1 shell概述 55
4.1.1 shell的基本功能 55
4.1.2 多种UNIX的shell 55
4.2 shell的内部特性 57
4.2.1 shell的命令解释过程 57
4.2.2 UNIX系统定义的标準流 57
4.2.3 shell语法管理 58
4.2.4 标準流重定向与管道线控制 58
4.2.5 错误流重定向 60
4.2.6 命令执行控制及滤波功能 60
4.3 shell的环境设定 62
4.3.1 shell环境变数 62
4.3.2 Linux系统的shell环境配置 63
4.3.3 Korn shell环境设定 63
4.3.4 C shell环境设定 64
4.4 本章小结 66
习题 67
第5章 shell程式设计 68
5.1 shell编程的基本知识 68
5.1.1 shell程式可完成的工作 68
5.1.2 shell程式编写格式 68
5.1.3 shell程式的运行方式 69
5.2 shell变数的使用 69
5.2.1 shell变数及变数赋值 69
5.2.2 变数的访问及变数参数替换 70
5.2.3 变数的作用域 71
5.2.4 shell的预定义变数和环境变数 71
5.2.5 shell中命令的位置变数 72
5.2.6 变数替换 73
5.2.7 用命令做变数替换 73
5.3 test命令的使用 74
5.3.1 对档案特性的测试 74
5.3.2 对字元串内容的测试 74
5.3.3 对整数n的测试 75
5.4 shell程式的控制流 75
5.4.1 命令的返回状态 75
5.4.2 程式的控制结构 76
5.5 条件控制语句 77
5.6 循环语句 81
5.7 shell编程中常用的其他语句 84
5.8 shell程式的输出 85
5.9 shell程式的调试方法 86
5.10 本章小结 87
习题 88
第6章 UNIX系统编程基础 89
6.1 程式设计环境 89
6.1.1 理想中的程式设计环境 89
6.1.2 多任务环境下的程式执行 90
6.2 基于作业系统支持的程式设计 91
6.2.1 建立系统编程思想 91
6.2.2 UNIX提供的系统支持 92
6.2.3 关于UNIX的系统调用 94
6.2.4 系统调用与库函式的关係 95
6.3 在UNIX环境中完成C编程 96
6.3.1 编程需要掌握的工具 96
6.3.2 makefile档案编写 96
6.3.3 C程式的编译与调试 100
6.3.4 连结特殊库函式 101
6.4 常用函式馆glib的使用 102
6.4.1 glib基本类型定义 102
6.4.2 glib的宏 103
6.4.3 记忆体管理函式 103
6.4.4 字元串处理函式 104
6.4.5 glib可支持的数据结构 105
6.4.6 GString 107
6.4.7 计时器函式 108
6.4.8 错误处理函式 108
6.5 其他有关函式馆 108
6.5.1 libxml库 109
6.5.2 readline库 109
6.5.3 curses库 110
6.6 本章小结 112
习题 113
第7章 UNIX档案管理系统 114
7.1 UNIX档案的概念 114
7.2 UNIX档案分类 114
7.2.1 普通档案 114
7.2.2 目录档案 116
7.2.3 特殊档案 117
7.2.4 管道档案 117
7.2.5 连结档案 118
7.3 UNIX档案系统 118
7.3.1 档案的组织及命名 118
7.3.2 档案的许可机制 119
7.3.3 档案系统功能及结构 120
7.3.4 系统中的特殊目录 121
7.3.5 档案系统的安装与卸载 121
7.4 UNIX档案系统内部存储方式 123
7.4.1 逻辑卷与物理卷 123
7.4.2 档案系统的存储结构 125
7.4.3 索引节点和目录档案的作用 129
7.4.4 多重索引存储结构 130
7.5 UNIX档案系统的动态管理技术 132
7.5.1 支持多种档案系统的机制 132
7.5.2 档案信息的动态管理 133
7.5.3 档案的检索过程 135
7.5.4 档案共享方式 135
7.6 用于档案管理的系统调用 138
7.6.1 档案描述符 138
7.6.2 用于档案创建和档案连结的
系统调用 138
7.6.3 档案打开与关闭的系统调用 140
7.6.4 档案的读、写系统调用 140
7.7 档案随机存取技术 141
7.7.1 改变档案指针位置 141
7.7.2 捕获当前档案指针位置 143
7.8 档案记录管理技术 145
7.8.1 记录锁定技术描述 145
7.8.2 记录锁定技术举例 145
7.9 常用档案系统备份与恢复技术 147
7.10 本章小结 147
习题 148
第8章 UNIX的进程管理 150
8.1 进程的基本概念 150
8.1.1 程式的并发执行 150
8.1.2 进程的定义和描述 151
8.1.3 进程的状态 152
8.1.4 进程控制基本概念 154
8.2 UNIX进程管理机制 155
8.2.1 进程创建 155
8.2.2 进程描述 157
8.2.3 进程管理数据结构 157
8.3 UNIX命令执行及进程属性 163
8.3.1 命令执行与进程相关 163
8.3.2 进程属性说明 164
8.4 UNIX进程调度与管理 165
8.4.1 UNIX进程状态及其转换 165
8.4.2 UNIX进程调度程式 166
8.4.3 UNIX进程调度策略及其实现 167
8.5 UNIX进程管理的系统调用 169
8.5.1 进程管理系统调用的作用 169
8.5.2 进程的创建 170
8.5.3 控制进程执行特定任务 171
8.5.4 控制进程的终止 173
8.5.5 进程的同步 173
8.5.6 库函式system 174
8.6 本章小结 175
习题 176
第9章 UNIX存储管理 178
9.1 存储管理基本概念 178
9.1.1 存储器配置原则 178
9.1.2 存储管理基本任务 178
9.2 地址重定位 179
9.2.1 逻辑地址空间 179
9.2.2 物理地址空间 179
9.2.3 地址重定位 180
9.3 常用存储管理技术 181
9.3.1 连续记忆体分配方式 181
9.3.2 覆盖和交换技术 181
9.3.3 分页管理技术 182
9.3.4 段式管理技术 184
9.4 虚拟存储技术 185
9.4.1 局部性原理 185
9.4.2 虚拟存储思想 185
9.4.3 虚拟存储实现方法 186
9.4.4 虚拟存储页面置换算法 188
9.5 UNIX存储管理策略 191
9.5.1 交换策略 191
9.5.2 请求调页策略 191
9.6 Linux记忆体管理实现技术 192
9.6.1 Linux存储地址识别 192
9.6.2 Linux进程存储空间 193
9.6.3 Linux的分段模型 193
9.6.4 Linux的分页模型 194
9.6.5 Linux进程虚地址空间描述 195
9.6.6 Linux物理记忆体空间管理 196
9.6.7 基于Slab的快取管理 197
9.7 本章小结 197
习题 198
第10章 UNIX系统的进程通信 200
10.1 进程通信的基本概念 200
10.1.1 进程通信的分类 200
10.1.2 进程间通信 200
10.1.3 进程通信实现方式 200
10.2 UNIX的基本通信技术 202
10.2.1 锁档案通信 202
10.2.2 记录锁定档案通信 202
10.2.3 信号 204
10.2.4 用信号完成通信 204
10.3 管道通信 207
10.3.1 管道的读写控制 208
10.3.2 无名管道通信 208
10.3.3 有名管道通信 210
10.4 共享存储区通信技术 213
10.4.1 共享存储区的概念 213
10.4.2 共享存储区的建立与操作 214
10.4.3 共享存储区通信实例 215
10.5 UNIX的IPC 216
10.5.1 UNIX System V IPC基本机制 217
10.5.2 讯息伫列 217
10.5.3 Linux系统的IPC机制 222
10.6 本章小结 222
习题 223
第11章 UNIX的设备管理 224
11.1 设备管理的基本概念 224
11.1.1 设备管理模组的功能 224
11.1.2 设备分类管理 225
11.1.3 I/O传输控制技术 225
11.1.4 虚拟设备管理技术 227
11.2 UNIX的设备管理结构 227
11.2.1 设备管理体系结构 227
11.2.2 UNIX的设备分类标识 228
11.2.3 UNIX的设备特殊档案 228
11.2.4 逻辑设备描述及访问 229
11.3 设备状态及设备控制 230
11.3.1 设备状态及其转换 230
11.3.2 设备控制策略 230
11.4 设备驱动与系统核心间的关联 232
11.4.1 设备驱动程式 232
11.4.2 驱动程式与核心间的关联 233
11.4.3 设备驱动程式与档案系统的关係 233
11.5 块设备的数据高速快取机制 235
11.5.1 缓冲控制块的设定 235
11.5.2 缓冲池的结构 236
11.5.3 缓冲区的分配与释放 237
11.6 对设备做读写操作 238
11.6.1 块设备的读写 238
11.6.2 字元设备的读写 239
11.7 Linux系统设备管理问题 241
11.7.1 Linux设备驱动程式的特点 241
11.7.2 驱动程式与外界的接口 242
11.7.3 驱动程式的基本结构 242
11.7.4 常用设备接口 242
11.7.5 外设连线自动检测技术 244
11.8 本章小结 246
习题 247
第12章 UNIX的多执行绪环境 248
12.1 执行绪的基本概念 248
12.1.1 多执行绪基础 248
12.1.2 包含执行绪的进程模型 250
12.2 多执行绪平台特性 251
12.2.1 设计中可利用执行绪改进程式的
回响能力 251
12.2.2 处理器结构改善直接影响程式
执行效率 251
12.2.3 执行绪的执行状态及运行特性 251
12.3 多执行绪管理模式 252
12.3.1 纯用户级执行绪管理模式 252
12.3.2 纯核心级执行绪管理模式 253
12.3.3 组合型的执行绪管理模式 253
12.4 UNIX的多执行绪管理结构 254
12.5 多执行绪编程 255
12.5.1 多执行绪程式结构的改变 255
12.5.2 多执行绪标準库 256
12.5.3 多执行绪编程规则 257
12.6 多执行绪程式设计技术 259
12.6.1 创建和使用简单执行绪 259
12.6.2 对执行绪的常用操作 261
12.6.3 执行绪中使用的数据 263
12.7 多执行绪程式设计综合举例 264
12.8 本章小结 267
习题 269
第13章 UNIX网路特性及支撑环境 270
13.1 计算机网路基本知识 270
13.1.1 通信子网 270
13.1.2 资源子网 271
13.1.3 计算机网路的主要功能 271
13.1.4 计算机网路分类 272
13.1.5 计算机网路体系结构 272
13.1.6 网路中的传输介质和连线 274
13.1.7 网路作业系统 274
13.2 UNIX网路结构及支持协定 274
13.2.1 UNIX网路分层结构 274
13.2.2 UNIX中的TCP/IP协定 275
13.2.3 UNIX系统支持的UUCP协定 277
13.2.4 基于协定的Internet套用 278
13.3 网路间进程通信 278
13.3.1 套接字解决的问题 279
13.3.2 套接字通信的基本知识 279
13.3.3 套接字和套接字地址 280
13.3.4 套接字在虚电路服务中的套用 281
13.3.5 套接字在数据报服务中的套用 281
13.3.6 套接字协定族 282
13.3.7 套接字类型 282
13.3.8 套接字函式 282
13.4 用UNIX平台构建Internet网路环境 284
13.4.1 用户域名和IP位址 284
13.4.2 TCP/IP配置信息 285
13.4.3 电子邮件服务 286
13.4.4 远程档案传输服务 287
13.4.5 远程登录telnet服务 288
13.4.6 网路档案系统 290
13.5 本章小结 290
习题 291
第14章 X-Window及其他实用程式 292
14.1 X-Window 292
14.1.1 X-Window的特徵 292
14.1.2 X-Window的工作方式 293
14.1.3 X-Window的组成部件 294
14.1.4 X-Window编程环境介绍 295
14.2 数据检索加工工具awk 296
14.2.1 awk基本描述 296
14.2.2 awk中的记录和栏位 297
14.2.3 awk中使用的模式 298
14.2.4 awk中的操作语句 300
14.3 程式管理器 300
14.3.1 原始码控制系统SCCS 300
14.3.2 并行开发程式管理器 300
14.4 词法分析和语法分析生成工具 302
14.5 本章小结 303
习题 303
附录A UNIX系统中的常用系统调用 304
附录B Linux系统中的C环境 308
附录C UNIX/Linux常用命令 314
参考文献 343
参考资料
声明:此文信息来源于网络,登载此文只为提供信息参考,并不用于任何商业目的。如有侵权,请及时联系我们:baisebaisebaise@yeah.net
搜索
随机推荐

勇敢心资源网|豫ICP备19027550号