计算机操作系统教程——基于华为openEuler操作系统
全新正版未拆封
¥
35.74
5.2折
¥
69
全新
仅1件
作者刘晓建
出版社清华大学出版社
出版时间2023-03
版次1
装帧其他
上书时间2023-10-29
商品详情
- 品相描述:全新
图书标准信息
-
作者
刘晓建
-
出版社
清华大学出版社
-
出版时间
2023-03
-
版次
1
-
ISBN
9787302625018
-
定价
69.00元
-
装帧
其他
-
开本
16开
-
纸张
胶版纸
-
页数
352页
-
字数
509千字
- 【内容简介】
-
本书系统介绍了计算机操作系统。全书共分为7章,分别为操作系统概论、操作系统硬件基础、进程管理、进程的并发和死锁、内存管理、文件管理系统、输入/输出系统。本书依据操作系统课程的教学大纲,参考多部国内外经典教材,根据教学活动中学生的反馈意见,对内容进行了合理选材和组织,注重基本概念、方法和原理的讲解,力求做到概念准确、原理透彻,能够满足教学以及工程开发的基本要求。特别是增加了硬件基础知识的介绍,有利于形成软硬件一体化的思维方式,同时便于不具备计算机硬件基础的学生学习。本书加强了操作系统不同知识模块间的联系,使学生对操作系统形成一个系统化认识。本书以华为openEuler操作系统为案例,将抽象的概念和原理具体化,使其更容易理解和实际操作。 本书适合作为高等学校计算机相关专业本科教材,各学校可以根据教学时数安排选取书中内容;本书也可以作为培训机构教材,以及教师、研究人员和操作系统开发者的参考用书。
- 【目录】
-
第1章计算机操作系统概论1
1.1操作系统的概念1
1.1.1从用户使用角度理解操作系统2
1.1.2从计算资源管理和控制角度理解操作系统3
1.1.3从计算环境角度理解操作系统4
1.2操作系统的发展历史5
1.2.1人工操作阶段5
1.2.2简单批处理系统6
1.2.3多道程序批处理系统8
1.2.4分时系统11
1.2.5实时系统13
1.3操作系统的结构14
1.3.1简单结构15
1.3.2宏内核结构16
1.3.3层次化结构16
1.3.4微内核结构18
1.3.5外核结构19
1.3.6虚拟机21
1.4操作系统大观23
习题26
第2章操作系统的硬件基础28
2.1计算机硬件结构28
2.1.1内存29
2.1.2CPU32
2.1.3I/O模块34
2.1.4系统总线35〖1〗〖2〗计算机操作系统教程——基于华为openEuler操作系统目录〖2〗〖2〗2.2指令37
2.2.1指令集37
2.2.2过程调用39
2.2.3CISC和RISC42
2.3指令循环和异常处理43
2.3.1指令循环43
2.3.2异常和异常的分类45
2.3.3异常处理47
2.4CPU的运行模式和模式切换50
2.4.1低EL特权级和高EL特权级的相互转换51
2.4.2异常处理过程中的CPU运行模式切换52
习题53
第3章进程管理55
3.1进程的概念55
3.1.1程序并发执行的基本需求55
3.1.2进程概念的理解56
3.1.3进程的结构56
3.1.4进程的虚拟地址空间布局57
3.1.5观察openEuler中进程的虚拟地址空间布局58
3.1.6进程控制块60
3.2进程的状态62
3.2.1五状态模型62
3.2.2七状态模型65
3.3进程控制67
3.3.1进程的创建67
3.3.2进程的退出67
3.3.3进程上下文切换68
3.3.4进程上下文切换的时机70
3.3.5openEuler中系统调用的实现71
3.3.6openEuler环境下使用strace跟踪系统调用过程73
3.4openEuler中的进程控制74
3.4.1获取进程IDs74
3.4.2创建和终止进程75
3.4.3回收子进程78
3.4.4装载和运行程序80
3.5进程调度策略82
3.5.1调度目标82
3.5.2进程调度83
3.5.3短程调度策略84
3.5.4openEuler中的调度策略89
3.6线程92
3.6.1线程概念的引入93
3.6.2线程的实现95
3.6.3线程与进程的关系96
3.6.4openEuler中的POSIX线程库96
3.6.5多线程程序中的变量99
习题102
第4章进程的并发和死锁104
4.1并发问题104
4.2进程的互斥106
4.2.1互斥问题106
4.2.2解决互斥问题的软件方法109
4.2.3解决互斥问题的硬件方法116
4.2.4信号量和P、V操作119
4.2.5使用信号量解决互斥问题121
4.3openEuler中信号量的实现123
4.3.1down和up原语的实现123
4.3.2有关信号量的函数调用126
4.4进程的同步126
4.4.1同步问题126
4.4.2使用信号量解决同步问题128
4.5典型并发设计问题130
4.5.1生产者消费者问题131
4.5.2读者写者问题135
4.6死锁139
4.6.1死锁的定义139
4.6.2哲学家就餐问题142
4.6.3死锁的描述145
4.6.4死锁发生的条件146
4.7死锁的处理147
4.7.1死锁预防148
4.7.2死锁避免148
4.7.3死锁检测155
习题157
第5章内存管理161
5.1内存管理的需求161
5.1.1内存管理的4个基本要求161
5.1.2地址定位162
5.2早期操作系统的内存管理165
5.2.1固定分区管理165
5.2.2覆盖技术167
5.2.3可变分区管理168
5.2.4伙伴系统169
5.3虚拟内存171
5.3.1可执行目标文件172
5.3.2openEuler环境下解析ELF文件174
5.3.3虚拟地址空间180
5.3.4虚拟内存和分页180
5.3.5虚拟内存究竟是什么183
5.3.6页表186
5.3.7虚拟地址转换和缺页故障处理188
5.3.8对内存管理需求的支持192
5.3.9地址转换的硬件实现和加速195
5.4分页式虚拟内存管理201
5.4.1程序局部性原理202
5.4.2读取策略203
5.4.3置换策略206
5.4.4驻留集管理208
5.4.5换出策略211
5.4.6加载控制211
5.5分段式虚拟内存管理212
5.5.1基本原理212
5.5.2段的动态链接215
5.5.3段的共享217
5.5.4段页式虚拟内存管理220
习题223
第6章文件管理225
6.1文件系统226
6.1.1文件系统的概念226
6.1.2文件系统的存储结构226
6.2文件227
6.2.1文件的属性227
6.2.2文件上的操作229
6.2.3文件的存储设备229
6.2.4openEuler环境下如何获取文件信息231
6.3openEuler文件系统233
6.3.1文件系统总体架构233
6.3.2物理文件系统235
6.3.3虚拟文件系统240
6.3.4伪文件系统243
6.4文件内容的磁盘块分布和磁盘空闲空间管理245
6.4.1混合索引表245
6.4.2B 树248
6.4.3MSDOS的磁盘空间管理250
6.4.4成组链接法251
6.5文件链接253
6.6文件共享258
6.6.1打开文件在内核中的数据结构258
6.6.2进程间的文件共享259
6.6.3打开文件的一致性语义和文件锁262
6.6.4管道263
6.7文件系统的保护266
6.7.1文件访问权和保护域266
6.7.2openEuler文件系统的访问控制机制268
6.8openEuler中有关文件的系统调用275
6.8.1文件读、写的系统调用275
6.8.2访问文件状态的系统调用278
6.8.3文件链接的系统调用280
习题282
第7章输入/输出系统284
7.1I/O系统概述284
7.1.1外设的分类和特点284
7.1.2外设与主机CPU的连接285
7.1.3I/O接口287
7.1.4I/O端口及其编址方式288
7.1.5I/O系统软件的层次结构289
7.2I/O设备的控制方式290
7.2.1可编程I/O291
7.2.2中断驱动的I/O292
7.2.3直接存储器访问方式294
7.2.4I/O通道控制方式297
7.2.5I/O通道类型300
7.3I/O系统软件组织303
7.3.1用户程序与I/O软件的关系303
7.3.2与具体设备无关的I/O软件304
7.3.3设备驱动程序307
7.3.4中断服务程序308
7.4Linux设备驱动模型309
7.4.1Linux的设备抽象310
7.4.2Linux的设备驱动模型312
7.4.3设备驱动程序开发315
7.5缓冲处理技术321
7.5.1缓冲的引入321
7.5.2单缓冲区和双缓冲区322
7.5.3缓冲区和页缓存324
7.6磁盘I/O调度329
7.6.1磁盘访问时间 331
7.6.2早期的磁盘调度算法 332
7.6.3基于扫描的磁盘调度算法333
7.7虚拟设备——假脱机335
习题337
参考文献340
点击展开
点击收起
— 没有更多了 —
以下为对购买帮助不大的评价