《计算机作业系统教程(第4版)》是2014年出版的图书,作者是张尧学、宋虹、张高。
基本介绍
- 书名:计算机作业系统教程(第4版)
- 作者:张尧学、宋虹、张高
- ISBN:9787302336686
- 定价:34.5元
- 出版时间:2014年
- 装帧:平装
图书简介
作业系统是现代计算机系统中必不可少的基本系统软体,也是计算机专业的必修课程和从事计算机套用人员必不可少的知识。
本书是编着者在清华大学计算机系多年教学和科研的基础上对第3版改编而成的,全书共12章,主要内容包括作业系统用户界面、进程与执行绪管理、处理机管理、记忆体管理、档案系统与设备管理等基本原理及Linux和Windows两个主流作业系统的核心介绍。
与第3版相比,本书进一步深入浅出地对作业系统的基本原理进行了描述,而且,本书更进一步强调了学生对当前主流作业系统的应有了解。因此,本书在第3版Linux 2.4和Windows NT作业系统实例的基础上,补充了有关Linux 2.6、Windows NT 6.0以及嵌入式作业系统的相关知识。
本书可作为高等院校计算机专业或相关专业作业系统课程的教材,也可供有关科技人员自学或参考。
目录
第1章绪论1
1.1作业系统概念1
1.2作业系统的历史2
1.2.1手工操作阶段2
1.2.2早期批处理3
1.2.3多道程式系统5
1.2.4分时作业系统6
1.2.5实时作业系统6
1.2.6通用作业系统7
1.2.7作业系统的进一步发展7
1.3作业系统的基本类型8
1.3.1批处理作业系统8
1.3.2分时系统9
1.3.3实时系统9
1.3.4通用作业系统10
1.3.5个人计算机上的作业系统10
1.3.6网路作业系统10
1.3.7分散式作业系统11
1.4作业系统功能11
1.4.1处理机管理12
1.4.2存储管理12
1.4.3设备管理12
1.4.4信息管理(档案系统管理)12
1.4.5用户接口13
1.5计算机硬体简介13
1.5.1计算机的基本硬体元素13
1.5.2与作业系统相关的几种主要暂存器14
1.5.3存储器的访问速度15
1.5.4指令的执行与中断15
1.5.5作业系统的启动16
1.6算法的描述16
1.7研究作业系统的几种观点17
1.7.1计算机资源管理者的观点18
1.7.2用户界面的观点18
1.7.3进程管理的观点18
本章小结18
习题19
第2章作业系统用户界面20
2.1简介20
2.2一般用户的输入输出界面21
2.2.1作业的定义21
2.2.2作业组织21
2.2.3一般用户的输入输出方式22
2.3命令控制界面24
2.4Linux与Windows的命令控制界面25
2.4.1Linux的命令控制界面25
2.4.2Windows的命令控制界面27
2.5系统调用29
2.6Linux和Windows的系统调用31
2.6.1Linux系统调用31
2.6.2Windows系统调用32
本章小结33
习题34
第3章进程管理35
3.1进程的概念35
3.1.1程式的并发执行35
3.1.2进程的定义39
3.2进程的描述39
3.2.1进程控制块40
3.2.2进程上下文41
3.2.3进程上下文切换43
3.2.4进程空间与大小43
3.3进程状态及其转换44
3.3.1进程状态44
3.3.2进程状态转换44
3.4进程控制45
3.4.1进程创建与撤销45
3.4.2进程的阻塞与唤醒47
3.5进程互斥47
3.5.1资源共享所引起的制约47
3.5.2互斥的加锁实现50
3.5.3信号量和P、V原语51
3.5.4用P、V原语实现进程互斥54
3.6进程同步55
3.6.1同步的概念55
3.6.2私用信号量56
3.6.3用P、V原语操作实现同步57
3.6.4生产者消费者问题58
3.7进程通信59
3.7.1进程的通信方式59
3.7.2讯息缓冲机制60
3.7.3信箱通信61
3.7.4进程通信的实例——和控制台的通信62
3.7.5进程通信的实例——管道66
3.8死锁问题69
3.8.1死锁的概念69
3.8.2死锁的消除方法70
3.9执行绪的概念71
3.9.1为什幺要引入执行绪71
3.9.2执行绪的基本概念72
3.9.3执行绪与进程的区别72
3.9.4执行绪的适用範围73
3.10执行绪分类与执行74
3.10.1执行绪的分类74
3.10.2执行绪的执行特性76
本章小结77
习题77
第4章处理机调度79
4.1分级调度79
4.1.1作业的状态及其转换79
4.1.2调度的层次80
4.1.3作业与进程的关係81
4.2作业调度81
4.2.1作业调度功能81
4.2.2作业调度目标与性能衡量82
4.3进程调度84
4.3.1进程调度的功能84
4.3.2进程调度的时机85
4.3.3进程调度性能评价86
4.4调度算法86
4.5算法评价90
4.5.1FCFS方式的调度性能分析90
4.5.2轮转法调度性能评价93
4.5.3线性优先权法的调度性能94
4.6实时系统调度方法95
4.6.1实时系统的特点95
4.6.2实时调度算法的分类97
4.6.3时限调度算法与频率单调调度算法97
本章小结99
习题99
第5章存储管理101
5.1存储管理的功能101
5.1.1虚拟存储器101
5.1.2地址变换102
5.1.3内外存数据传输的控制104
5.1.4记忆体的分配与回收104
5.1.5记忆体信息的共享与保护105
5.2分区存储管理106
5.2.1分区管理基本原理106
5.2.2分区的分配与回收108
5.2.3有关分区管理其他问题的讨论111
5.3覆盖与交换技术112
5.3.1覆盖技术112
5.3.2交换技术113
5.4页式管理115
5.4.1页式管理的基本原理115
5.4.2静态页面管理115
5.4.3动态页式管理118
5.4.4请求页式管理中的置换算法120
5.4.5存储保护123
5.4.6页式管理的优缺点123
5.5段式与段页式管理124
5.5.1段式管理的基本思想124
5.5.2段式管理的实现原理124
5.5.3段式管理的优缺点128
5.5.4段页式管理的基本思想129
5.5.5段页式管理的实现原理129
5.6局部性原理和抖动问题131
本章小结134
习题134第6章进程与存储管理示例136
6.1Linux进程和存储管理简介136
6.2Linux进程结构139
6.2.1进程的概念139
6.2.2进程的虚拟地址结构140
6.2.3进程上下文141
6.2.4进程的状态和状态转换143
6.2.5小结145
6.3Linux进程控制145
6.3.1Linux启动及进程树的形成145
6.3.2进程控制146
6.4Linux进程调度149
6.5Linux进程通信152
6.5.1Linux的低级通信152
6.5.2进程间通信153
6.6Linux存储管理161
6.6.1虚存空间和管理161
6.6.2请求调页技术163
本章小结165
习题166
第7章Windows的进程与记忆体管理167
7.1WindowsNT的特点及相关的概念167
7.1.1WindowsNT体系结构的特点167
7.1.2Windows的管理机制168
7.2Windows进程和执行绪169
7.2.1Windows的进程和执行绪的定义170
7.2.2进程和执行绪的关联170
7.2.3Windows进程的结构170
7.2.4Windows执行绪的结构171
7.2.5Windows进程和执行绪的创建172
7.3Windows处理器调度机制173
7.3.1调度优先权174
7.3.2执行绪状态174
7.3.3执行绪调度机制175
7.4Windows的记忆体管理176
7.4.1记忆体管理器177
7.4.2记忆体管理的机制177
7.5虚拟地址空间178
7.5.1虚拟地址空间布局178
7.5.2虚拟地址转换179
7.6页面调度181
7.6.1缺页处理181
7.6.2工作集及页面调度策略182
7.6.3页框号和物理记忆体管理182
本章小结183
习题184
第8章档案系统185
8.1档案系统的概念185
8.2档案的逻辑结构与存取方法187
8.2.1逻辑结构187
8.2.2存取方法189
8.3档案的物理结构与存储设备191
8.3.1档案的物理结构192
8.3.2档案存储设备194
8.4档案存储空间管理195
8.5档案目录管理197
8.5.1档案的组成198
8.5.2档案目录198
8.5.3便于共享的档案目录200
8.5.4目录管理201
8.6档案存取控制203
8.7档案的使用205
8.8档案系统的层次模型205
本章小结207
习题208
第9章设备管理210
9.1引言210
9.1.1设备的类别210
9.1.2设备管理的功能和任务211
9.2数据传送控制方式212
9.2.1程式直接控制方式212
9.2.2中断方式213
9.2.3DMA方式215
9.2.4通道控制方式217
9.3中断技术219
9.3.1中断的基本概念219
9.3.2中断的分类与优先权219
9.3.3软中断220
9.3.4中断处理过程220
9.4缓冲技术222
9.4.1缓冲的引入222
9.4.2缓冲的种类222
9.4.3缓冲池的管理223
9.5设备分配225
9.5.1设备分配用数据结构225
9.5.2设备分配的原则227
9.5.3设备分配算法228
9.6I/O进程控制228
9.6.1I/O控制的引入228
9.6.2I/O控制的功能228
9.6.3I/O控制的实现229
9.7设备驱动程式230
本章小结230
习题231
第10章Linux档案系统233
10.1Linux档案系统的特点与档案类别233
10.1.1特点233
10.1.2档案类型234
10.2Linux的虚拟档案系统235
10.2.1虚拟档案系统框架235
10.2.2Linux虚拟档案系统的数据结构235
10.2.3VFS的系统调用241
10.3档案系统的注册和挂装242
10.3.1档案系统注册242
10.3.2已挂装档案系统描述符鍊表243
10.3.3挂装根档案系统244
10.3.4挂装一般档案系统245
10.3.5卸载档案系统246
10.4进程与档案系统的联繫246
10.4.1系统打开档案表246
10.4.2用户打开档案表246
10.4.3进程的当前目录和根目录247
10.5ext2档案系统247
10.5.1ext2档案系统的存储结构247
10.5.2ext2档案系统主要的磁碟数据结构248
10.5.3ext2档案系统的记忆体数据结构251
10.5.4数据块定址252
10.6块设备驱动253
10.6.1设备配置253
10.6.2设备驱动程式的接口254
10.7字元设备驱动255
本章小结256
习题257
第11章Windows的设备管理和档案系统258
11.1WindowsI/O系统的结构258
11.1.1设计目标258
11.1.2设备管理服务258
11.2设备驱动程式和I/O处理259
11.2.1设备驱动类型和结构260
11.2.2Windows的I/O处理260
11.3Windows的档案系统262
11.3.1Windows磁碟管理263
11.3.2Windows档案系统格式263
11.3.3Windows档案系统驱动264
11.4NTFS档案系统264
11.4.1NTFS的特点264
11.4.2NTFS的磁碟结构265
11.4.3NTFS的档案系统恢复266
本章小结267
习题268
第12章嵌入式作业系统简介269
12.1嵌入式作业系统的总体架构269
12.1.1嵌入式作业系统特点及分类269
12.1.2嵌入式作业系统的总体架构270
12.2嵌入式作业系统的任务管理273
12.2.1多任务机制273
12.2.2任务状态和任务状态迁移274
12.2.3任务调度275
12.2.4任务间通信276
12.2.5VxWorks任务管理278
12.3记忆体管理281
12.3.1动态记忆体管理机制282
12.3.2VxWorks动态记忆体管理函式282
12.3.3虚拟记忆体管理机制283
12.3.4VxWorks虚拟记忆体管理284
12.4设备管理与档案系统285
12.4.1I/O系统内部结构285
12.4.2实时核心的中断管理286
12.4.3基本I/O操作流程287
12.4.4VxWorks的I/O接口287
12.4.5档案系统架构及操作288
12.4.6VxWorks档案系统289
12.5嵌入式作业系统的开发290
12.5.1集成开发环境Tornado291
12.5.2VxWorks的交叉编译开发环境294
12.5.3实例开发的设计与实现过程296
本章小结297
习题298
参考文献299