- 中国铁道出版社
- 9787113312879
- 1-1
- 531487
- 60269771-6
- 16开
- 2024-08
- 工学
- 计算机类
- 电子与信息大类
- 计算机类
- 计算机类
- 本科
作者简介
内容简介
本书是“山西省高等教育教学改革创新项目——基于openEuler的信创教育背景下操作系统课程实例化教学内容研究”成果之一。全书内容分为两部分:第一部分为操作系统基本理论,以操作系统对计算机系统资源的管理为线索,讲述操作系统的基本概念、基本原理、设计方法和实现技术,包含操作系统概述、操作系统用户接口、处理器管理、存储管理、文件管理和设备管理六章;第二部分为操作系统实验,精选八个实验项目,从安装openEuler操作系统出发,开始练习openEuler基础命令的使用,在openEuler环境下创建进程、实现进程同步与通信,进行用户及权限管理、软件管理、文件管理,并介绍了shell脚本语言的基础知识。实验中涉及的具体操作给出了详细的操作步骤,涉及程序开发的给出了参考源代码,以方便教师和学生使用。
本书适合作为普通高等院校计算机专业及相关专业的“操作系统”课程教材,也可作为从事计算机科学、工程和应用等方面工作科技人员的参考用书。
本书适合作为普通高等院校计算机专业及相关专业的“操作系统”课程教材,也可作为从事计算机科学、工程和应用等方面工作科技人员的参考用书。
目录
第一部分 操作系统基本理论
第1章 操作系统概述2
1.1操作系统概念3
1.1.1操作系统与计算机系统3
1.1.2操作系统定义3
1.1.3研究操作系统的几种观点4
1.2操作系统发展历程5
1.2.1无操作系统——第一代计算机5
1.2.2批处理系统——第二代计算机6
1.2.3多道程序系统——第三代计算机7
1.2.4多元化操作系统——第四代计算机8
1.3操作系统分类9
1.3.1批处理操作系统9
1.3.2分时操作系统9
1.3.3实时操作系统10
1.3.4网络操作系统11
1.3.5分布式操作系统12
1.3.6嵌入式操作系统13
1.3.7云操作系统14
1.4现代操作系统特征15
1.4.1并发性15
1.4.2共享性16
1.4.3虚拟性16
1.4.4异步性17
1.5操作系统功能17
1.5.1处理器管理18
1.5.2存储管理19
1.5.3设备管理19
1.5.4文件管理19
1.5.5用户接口19
1.6操作系统结构20
1.6.1单体结构20
1.6.2层次式结构20
1.6.3微内核与客户-服务器模式21
1.6.4面向对象结构22
1.6.5多处理器模式22
小结22
思考与练习23
第2章 操作系统用户接口.25
2.1作业26
2.1.1作业分类26
2.1.2作业管理的功能27
2.2用户管理28
2.2.1用户的基础概念29
2.2.2用户组管理及用户登录管理30
2.3操作系统接口31
2.3.1脱机命令接口31
2.3.2联机命令接口32
2.3.3图形接口34
2.3.4程序级接口34
2.4系统调用35
2.4.1处理器的两种工作状态35
2.4.2系统调用的实现35
2.4.3系统调用的实例37
小结38
思考与练习38
3章 处理器管理40
3.1进程与线程41
3.1.1进程的引入41
3.1.2进程的概念43
3.1.3进程控制47
3.1.4进程调度49
3.1.5线程55
3.2进程间的制约关系60
3.2.1进程互斥和同步的概念60
3.2.2进程互斥的实现62
3.2.3进程同步的实现68
3.2.4用P、V原语解决经典的同步/互斥问题70
3.2.5结构化的同步/互斥机制——管程75
3.3进程通信78
3.3.1进程通信的类型78
3.3.2消息缓冲机制80
3.3.3信箱通信83
3.4死锁84
3.4.1死锁的概念84
3.4.2死锁产生的必要条件86
3.4.3死锁的预防86
3.4.4死锁的避免88
3.4.5死锁的检测和解除91
3.5处理器调度93
3.5.1调度的层次和分类93
3.5.2作业调度的功能和性能指标96
3.5.3作业调度算法98
小结102
思考与练习104
第4章 存储管理110
4.1存储管理概述111
4.1.1存储系统的分层设置112
4.1.2存储理论和存储管理目的112
4.1.3存储管理功能113
4.1.4内存分区分配方式113
4.1.5内存地址组织方式114
4.1.6内存程序保护方式119
4.1.7内存容量扩充方式119
4.2连续分配存储管理120
4.2.1单一连续分区120
4.2.2固定分区121
4.2.3可变分区123
4.2.4伙伴系统129
4.3离散分配存储管理130
4.3.1页式存储管理130
4.3.2段式存储管理139
4.3.3段页式存储管理143
4.4虚拟存储管理145
小结156
思考与练习158
第5章 文件管理163
5.1文件与文件系统164
5.1.1基本概念164
5.1.2文件系统的层次结构165
5.1.3虚拟文件系统167
5.1.4文件操作167
5.2文件的组织结构168
5.2.1文件的逻辑结构169
5.2.2文件的物理结构170
5.3文件目录175
5.3.1文件控制块与索引节点176
5.3.2目录结构177
5.3.3目录查询技术179
5.4文件存储空间管理180
5.4.1空闲分区表法181
5.4.2空闲块链法181
5.4.3位示图法183
5.5文件共享与文件安全183
5.5.1早期的文件共享方法183
5.5.2目前常用的文件共享方法184
5.5.3文件系统的安全186
5.5.4文件保护187
小结188
思考与练习189
第6章 设备管理191
6.1设备管理概述192
6.1.1外围设备192
6.1.2I/O控制方式193
6.1.3设备管理功能和结构198
6.2逻辑I/O200
6.2.1设备分配201
6.2.2安全性203
6.3设备I/O204
6.3.1I/O任务204
6.3.2缓存管理204
6.4I/O调度与驱动207
6.4.1I/O调度208
6.4.2通道程序211
6.4.3设备驱动程序212
6.4.4设备中断处理程序212
6.5虚拟设备213
6.5.1Spooling的基本概念213
6.5.2Spooling虚拟输入设备215
6.5.3Spooling虚拟输出设备217
小结219
思考与练习219
第二部分 操作系统实验
第7章 openEuler操作系统安装实验222
7.1实验目的222
7.2实验内容222
7.3实验指导222
7.3.1下载openEuler镜像222
7.3.2安装VMware虚拟机软件223
7.3.3新建虚拟机225
7.3.4安装openEuler操作系统229
7.3.5登录虚拟机231
练习232
第8章 openEuler基础命令及文本编辑器的使用实验233
8.1实验目的233
8.2实验内容233
8.3实验指导233
8.3.1bash命令的基本操作233
8.3.2目录及文件基本操作234
8.3.3文件查看237
8.3.4查找命令240
8.3.5打包和压缩命令241
8.3.6帮助命令242
8.3.7其他常见命令243
8.3.8openEuler文本编辑器的使用244
练习247
第9章进程创建实验248
9.1实验目的248
9.2实验内容248
9.3实验指导248
9.3.1查看进程248
9.3.2创建进程253
9.3.3实验内容参考程序源代码255
练习255
第10章进程同步及通信实验256
10.1实验目的256
10.2实验内容256
10.3实验指导256
10.3.1进程同步原理256
10.3.2进程通信258
10.3.3实验源程序参考代码262
练习267
第11章openEuler用户及权限管理实验268
11.1实验目的268
11.2实验内容268
11.3实验指导268
11.3.1用户的管理268
11.3.2用户账号的锁定操作270
11.3.3用户组管理271
11.3.4手工及批量创建账号271
11.3.5查看常见用户关联文件272
11.3.6设置文件及目录的权限及归属273
练习274
第12章openEuler软件管理实验275
12.1实验目的275
12.2实验内容275
12.3实验指导275
12.3.1配置Yum源275
12.3.2使用rpm命令管理软件276
12.3.3安装个人网盘应用279
练习285
第13章openEuler存储技术文件系统管理实验286
13.1实验目的286
13.2实验内容286
13.3实验指导286
13.3.1添加磁盘286
13.3.2MBR分区表模式下磁盘分区管理288
13.3.3GPT分区表模式下磁盘分区管理292
13.3.4格式化与挂载294
13.3.5逻辑卷管理295
练习299
第14章shell脚本语言基础实验300
14.1实验目的300
14.2实验内容300
14.3实验指导300
14.3.1shell变量300
14.3.2shell中的特殊字符302
14.3.3条件判断与循环结构307
练习311
参考文献312
第1章 操作系统概述2
1.1操作系统概念3
1.1.1操作系统与计算机系统3
1.1.2操作系统定义3
1.1.3研究操作系统的几种观点4
1.2操作系统发展历程5
1.2.1无操作系统——第一代计算机5
1.2.2批处理系统——第二代计算机6
1.2.3多道程序系统——第三代计算机7
1.2.4多元化操作系统——第四代计算机8
1.3操作系统分类9
1.3.1批处理操作系统9
1.3.2分时操作系统9
1.3.3实时操作系统10
1.3.4网络操作系统11
1.3.5分布式操作系统12
1.3.6嵌入式操作系统13
1.3.7云操作系统14
1.4现代操作系统特征15
1.4.1并发性15
1.4.2共享性16
1.4.3虚拟性16
1.4.4异步性17
1.5操作系统功能17
1.5.1处理器管理18
1.5.2存储管理19
1.5.3设备管理19
1.5.4文件管理19
1.5.5用户接口19
1.6操作系统结构20
1.6.1单体结构20
1.6.2层次式结构20
1.6.3微内核与客户-服务器模式21
1.6.4面向对象结构22
1.6.5多处理器模式22
小结22
思考与练习23
第2章 操作系统用户接口.25
2.1作业26
2.1.1作业分类26
2.1.2作业管理的功能27
2.2用户管理28
2.2.1用户的基础概念29
2.2.2用户组管理及用户登录管理30
2.3操作系统接口31
2.3.1脱机命令接口31
2.3.2联机命令接口32
2.3.3图形接口34
2.3.4程序级接口34
2.4系统调用35
2.4.1处理器的两种工作状态35
2.4.2系统调用的实现35
2.4.3系统调用的实例37
小结38
思考与练习38
3章 处理器管理40
3.1进程与线程41
3.1.1进程的引入41
3.1.2进程的概念43
3.1.3进程控制47
3.1.4进程调度49
3.1.5线程55
3.2进程间的制约关系60
3.2.1进程互斥和同步的概念60
3.2.2进程互斥的实现62
3.2.3进程同步的实现68
3.2.4用P、V原语解决经典的同步/互斥问题70
3.2.5结构化的同步/互斥机制——管程75
3.3进程通信78
3.3.1进程通信的类型78
3.3.2消息缓冲机制80
3.3.3信箱通信83
3.4死锁84
3.4.1死锁的概念84
3.4.2死锁产生的必要条件86
3.4.3死锁的预防86
3.4.4死锁的避免88
3.4.5死锁的检测和解除91
3.5处理器调度93
3.5.1调度的层次和分类93
3.5.2作业调度的功能和性能指标96
3.5.3作业调度算法98
小结102
思考与练习104
第4章 存储管理110
4.1存储管理概述111
4.1.1存储系统的分层设置112
4.1.2存储理论和存储管理目的112
4.1.3存储管理功能113
4.1.4内存分区分配方式113
4.1.5内存地址组织方式114
4.1.6内存程序保护方式119
4.1.7内存容量扩充方式119
4.2连续分配存储管理120
4.2.1单一连续分区120
4.2.2固定分区121
4.2.3可变分区123
4.2.4伙伴系统129
4.3离散分配存储管理130
4.3.1页式存储管理130
4.3.2段式存储管理139
4.3.3段页式存储管理143
4.4虚拟存储管理145
小结156
思考与练习158
第5章 文件管理163
5.1文件与文件系统164
5.1.1基本概念164
5.1.2文件系统的层次结构165
5.1.3虚拟文件系统167
5.1.4文件操作167
5.2文件的组织结构168
5.2.1文件的逻辑结构169
5.2.2文件的物理结构170
5.3文件目录175
5.3.1文件控制块与索引节点176
5.3.2目录结构177
5.3.3目录查询技术179
5.4文件存储空间管理180
5.4.1空闲分区表法181
5.4.2空闲块链法181
5.4.3位示图法183
5.5文件共享与文件安全183
5.5.1早期的文件共享方法183
5.5.2目前常用的文件共享方法184
5.5.3文件系统的安全186
5.5.4文件保护187
小结188
思考与练习189
第6章 设备管理191
6.1设备管理概述192
6.1.1外围设备192
6.1.2I/O控制方式193
6.1.3设备管理功能和结构198
6.2逻辑I/O200
6.2.1设备分配201
6.2.2安全性203
6.3设备I/O204
6.3.1I/O任务204
6.3.2缓存管理204
6.4I/O调度与驱动207
6.4.1I/O调度208
6.4.2通道程序211
6.4.3设备驱动程序212
6.4.4设备中断处理程序212
6.5虚拟设备213
6.5.1Spooling的基本概念213
6.5.2Spooling虚拟输入设备215
6.5.3Spooling虚拟输出设备217
小结219
思考与练习219
第二部分 操作系统实验
第7章 openEuler操作系统安装实验222
7.1实验目的222
7.2实验内容222
7.3实验指导222
7.3.1下载openEuler镜像222
7.3.2安装VMware虚拟机软件223
7.3.3新建虚拟机225
7.3.4安装openEuler操作系统229
7.3.5登录虚拟机231
练习232
第8章 openEuler基础命令及文本编辑器的使用实验233
8.1实验目的233
8.2实验内容233
8.3实验指导233
8.3.1bash命令的基本操作233
8.3.2目录及文件基本操作234
8.3.3文件查看237
8.3.4查找命令240
8.3.5打包和压缩命令241
8.3.6帮助命令242
8.3.7其他常见命令243
8.3.8openEuler文本编辑器的使用244
练习247
第9章进程创建实验248
9.1实验目的248
9.2实验内容248
9.3实验指导248
9.3.1查看进程248
9.3.2创建进程253
9.3.3实验内容参考程序源代码255
练习255
第10章进程同步及通信实验256
10.1实验目的256
10.2实验内容256
10.3实验指导256
10.3.1进程同步原理256
10.3.2进程通信258
10.3.3实验源程序参考代码262
练习267
第11章openEuler用户及权限管理实验268
11.1实验目的268
11.2实验内容268
11.3实验指导268
11.3.1用户的管理268
11.3.2用户账号的锁定操作270
11.3.3用户组管理271
11.3.4手工及批量创建账号271
11.3.5查看常见用户关联文件272
11.3.6设置文件及目录的权限及归属273
练习274
第12章openEuler软件管理实验275
12.1实验目的275
12.2实验内容275
12.3实验指导275
12.3.1配置Yum源275
12.3.2使用rpm命令管理软件276
12.3.3安装个人网盘应用279
练习285
第13章openEuler存储技术文件系统管理实验286
13.1实验目的286
13.2实验内容286
13.3实验指导286
13.3.1添加磁盘286
13.3.2MBR分区表模式下磁盘分区管理288
13.3.3GPT分区表模式下磁盘分区管理292
13.3.4格式化与挂载294
13.3.5逻辑卷管理295
练习299
第14章shell脚本语言基础实验300
14.1实验目的300
14.2实验内容300
14.3实验指导300
14.3.1shell变量300
14.3.2shell中的特殊字符302
14.3.3条件判断与循环结构307
练习311
参考文献312















