杭电操作系统复习资料超全超详细.docx
- 文档编号:8862257
- 上传时间:2023-02-02
- 格式:DOCX
- 页数:21
- 大小:864.29KB
杭电操作系统复习资料超全超详细.docx
《杭电操作系统复习资料超全超详细.docx》由会员分享,可在线阅读,更多相关《杭电操作系统复习资料超全超详细.docx(21页珍藏版)》请在冰豆网上搜索。
杭电操作系统复习资料超全超详细
操作系统总复习(杭电梁红兵老师版201301)
考试题型和大致分值:
单向选择(1分/选,大约25分)判断题(1分/判断,大约10分)填空题(1分/空,大约25分)综合题(大约40分)(包括问答题、算法题、计算题等类型)
第一章操作系统引论
1.OS的定义
操作系统:
操作系统是一组控制和管理计算机硬件和软件资源、合理地对各类作业进行调度、以及方便用户使用计算机的程序的集合。
2.OS的目标
‐方便性:
使计算机易学易用
‐有效性:
提高系统资源的利用率和吞吐量
3.OS的作用
‐OS是用户与计算机硬件之间的接口;
‐OS是计算机系统资源的管理者;
‐OS是扩充裸机功能的软件,它实现了对计算机资源的抽象;
‐OS是计算机系统工作流程的组织者。
4.OS的最主要任务
管理计算机的资源
5.OS的基本功能
‐处理机管理(即进程管理)╮
‐存储器管理│管理资源,
‐设备管理│提高计算机资源利用率
‐文件管理╯
‐提供友好的用户接口}方便用户使用计算机
6.OS提供的用户接口
‐命令接口(联机命令、脱机命令)
‐图形接口
‐程序接口(即系统调用,是OS提供的一组实现特殊功能的子程序,以供应用程序取得OS的服务)。
7.OS的特征
并发,共享,虚拟,异步
▲并发与并行的区别
并发性:
指两个或多个事件在同一时间间隔内发生。
如单处理器中的两个进程(宏观上同时,微观上交替)(只并发,但不并行)
并行性:
两个或多个事件在同一时刻同时发生。
如计算机中的CPU与I/O设备、I/O设备与I/O设备的工作
8.OS的发展过程
–无OS的计算机系统
–单道批处理系统
–多道批处理系统
–分时系统
–实时系统
▲批处理首先考虑资源利用率和系统吞吐量,分时系统首先考虑交互能力和响应时间,实时系统首先考虑实时性和可靠性。
▲批处理系统的特点:
资源利用率高,系统吞吐量大
无交互能力,作业平均周转时间长
▲多道程序设计技术:
多道程序同时装入内存,允许他们并发运行。
优点:
提高CPU、存储器、设备的资源利用率,增加系统吞吐量。
▲分时系统的关键问题:
人机交互
作业提交直接进入内存,引入时间片分时共享CPU
响应时间≈进程数目×时间片大小
▲分时系统和实时系统的特征比较
交互能力:
分时系统强于实时系统
实时性:
实时系统优于分时系统
可靠性:
实时系统优于分时系统
▲OS的其他分类方法
–用户数量:
单用户OS,多用户OS
–任务数量:
单任务OS,多任务OS
单用户单任务OS,单用户多任务OS,多用户多任务OS
–计算机体系结构:
微机OS,网络OS,多处理机OS,分布式OS等
9.OS的内部结构
–整体式结构(无结构)
–模块化结构
–层次式结构
–微内核结构(Client/Server模型)
第二章进程管理
1.引入进程的原因
–为了提高资源利用率必须让多个程序并发运行。
–程序的并发运行出现了新的特征:
间断性、失去封闭性、不可再现性。
–为了让程序能正确并发运行,引入进程概念。
2.进程的定义
–程序:
指令的有序集合。
–进程(process)是程序的一次执行。
3.进程的特征(最基本的特征:
动态性、并发性)
(1)结构特征:
程序+数据+PCB(进程存在的唯一标志)=进程
(2)动态性:
①是程序的执行过程;
②有生命周期;
(3)并发性:
多个进程可并发执行;
(4)独立性:
是系统进行资源分配和调度的独立单位,是能独立运行的基本单位;
(5)异步性:
进程以不可预知的速度向前推进。
速度不单取决于对应的程序,还受外界环境的影响。
4.进程与程序的区别
(1)从定义上看,程序是一组指令的有序集合;进程是程序的运行过程;
(2)从结构上看,进程不仅包含程序段,还包含数据段和PCB;
(3)进程是动态性,而程序是静态的;
(4)进程可独立地、并发地执行,程序则不能独立、并发执行;
5.进程与程序的对应关系
‐在某个时刻一个进程对应于一个程序;
‐在整个生命周期中,进程可执行多个程序;(fork+exec)
‐一个程序多次执行则将对应多个进程;
6.进程三种基本状态的转换
7.单CPU中N个进程的情况
具有挂起状态的进程状态转换
8.内核态与用户态
CPU指令(特权指令,非特权指令)
▲特权指令:
关机指令、清主存、启动外设指令、设置系统时钟时间、关中断、修改存储器管理寄存器等
▲非特权指令:
通用寄存器清0指令,访问内存指令,算术运算指令等
CPU的执行状态
内核态(核心态、系统态、管态):
能访问所有的内存空间和I/O端口,能执行特权和非特权指令。
用户态(目态)只能访问分配给自己的内存空间,只能执行非特权指令。
OS的内核运行于核心态,应用程序则运行于用户态。
(进程控制的大量原语)
9.进程的制约关系
直接制约:
源于进程合作
间接制约:
源于资源共享
10.同步
为了保证进程正确的并发执行,对多个相关进程在执行的次序上进行协调的过程。
11.临界资源
–要求互斥共享的资源。
–系统中一次仅允许一个进程使用的资源。
12.临界区
–进程中访问临界资源的那部分程序段。
–进程必须互斥地进入相关临界区
13.同步机制(如信号量机制)应遵循的准则
–空闲让进。
–忙则等待。
–有限等待。
–让权等待。
14.用记录型信号量实现互斥时:
为每一类临界资源需定义一个信号量:
※信号量的初值:
s.value的初值为对应临界资源的初始个数;
s.L的初值为NULL。
※信号量中的成员value>=0时,表示当前的空闲资源数;value<0时,其绝对值表示因竞争该类资源而阻塞的进程个数;╮
※wait()相当于申请一个临界资源;│信号量的物理意义
※signal()相当于释放一个临界资源。
╯
15.利用信号量实现同步
‐分别为每种同步关系(一个进程等另一个进程完成某个动作)设置一个同步信号量S,其初值为0;
‐在需要等其他进程的地方插入wait(s);
‐在完成其他进程所等的动作处插入signal(S)。
16.使用信号量解决进程同步问题的步骤
(1)确定进程:
包括进程的数量、进程的工作内容。
(2)确定进程之间的互斥、同步关系:
检查进程间要竞争哪些临界资源,以及有哪些工作必须在合作进程完成某个动作后才能进行,以此来确定进程间是互斥还是同步。
(3)确定信号量:
分别为每种临界资源定义一个信号量,初值为临界资源的初始个数;分别为每种同步关系定义一个信号量,初值为0。
▲每个信号量在使用以前都必须先定义并赋好初值。
(4)用类程序语言描述算法。
根据进程的工作内容写出进程对应的关键动作;然后:
在需要使用临界资源的程序段前通过加相应信号量的P操作来申请该资源,在使用完临界资源后加相应信号量的V操作来释放该资源。
在需要等合作进程完成某个动作才能执行的程序段之前加相应信号量的P操作;在完成被合作进程所等的动作之后加相应信号量的V操作。
注意:
每个信号量的P、V操作通常是成对的。
17.进程通信的三种类型:
‐共享存储器通信;
‐消息通信(如共享消息队列通信);
‐管道通信。
18.消息缓冲队列通信机制
19.线程的引入
‐将拥有资源的实体和执行的实体分开,使执行的实体具有较少的资源,从而减少并发执行的开销,从而提高系统的并发程度。
‐拥有资源的基本单位——进程;
‐执行的基本单位(即CPU调度和分派的单位)——线程。
▲线程是进程内一个相对独立的运行单位,一个进程可以有一个或多个线程(至少有一个),这些线程共享这个进程的代码、数据及大部分管理信息,但每个线程有自己的程序计数器、堆栈和线程控制块。
▲但对用户级线程而言,内核进行CPU调度仍然以进程(而不是用户级线程)为单位。
第三章调度与死锁
1.三级调度
–高级调度,也叫作业调度,是指从外存后备队列中选择若干作业进入内存,并为它们分配资源、创建进程的过程。
–中级调度,又称进程对换,是指按一定的调度算法,将内存中处于等待状态的某些进程调至外存对换区,腾出内存空间,以将外存对换区上已具备执行条件的进程重新调入内存的过程。
–低级调度,也叫进程调度,是指按一定的调度算法,从就绪进程中选择一个进程,并将CPU分派给它的过程。
2.进程调度概念
从就绪进程中选择一个进程,并将CPU分派给它:
‐保存现场;
‐按某种算法选择就绪进程;
‐分派CPU。
3.进程调度方式
‐非抢占方式
‐抢占方式
4.具体算法
1)先来先服务
2)短进程优先(保证作业平均周转时间最短)
3)时间片轮转(适用于分时系统)
4)高优先权优先(适用于实时系统)
动态优先权,优先权变化的原则
5)高响应比优先响应比=等待时间+要求服务时间
要求服务时间
6)多级反馈队列(性能好)
周转时间,平均周转时间的计算
5.死锁(Deadlock):
两个或两个以上的进程,其中每个进程都无限等待被另一个进程所占有的且永远无法释放的资源,这种现象称为进程死锁,这一组进程就称为死锁进程。
6.引起死锁的原因
–竞争临界资源
–进程推进顺序非法
7.引起死锁的必要条件
–互斥条件
–请求与保持条件
–不剥夺条件
–环路等待条件
8.预防死锁(事先破坏一个或几个必要条件)
–互斥条件(一般不能被破坏,只有少部分资源可用虚拟设备技术破坏该条件)
–请求与保持条件(一次性分配所有资源)
–不剥夺条件
–环路等待条件(资源有序分配)
9.避免死锁(在分配资源前进行安全性检查,避免系统进入不安全状态)
不安全状态≠死锁状态;
不安全状态很可能导致死锁状态的发生,但不是必然导致死锁状态的发生;
10.银行家算法
11.死锁考题举例:
某系统中仅有m个同类资源,由n个进程互斥使用,如果每个进程对该类资源的最大需求量为w,那么当m、n、w分别取表中的值时,哪种情况可能发生死锁:
A
B
C
D
E
m
2
2
2
4
4
n
1
2
2
3
3
w
2
1
2
2
3
答案:
A/B/D不会发生死锁;C/E可能发生死锁。
12.死锁定理
–资源分配图的化简
–死锁定理
简化资源分配图,如果资源分配图能完全简化,则系统中没有死锁;否则系统存在死锁。
第四章存储器管理
1.存储器分级管理
2.符号地址、逻辑地址、物理地址的概念
–逻辑地址,也叫做相对地址,或虚拟地址
–逻辑地址空间可以是一维的(如连续分配、分页系统)或二维的(如分段系统和段页式系统)
–物理地址,也叫做绝对地址,实地址,或内存地址
–物理地址空间始终是一维的
3.重定位(即地址映射)
–静态重定位(装入时进行,程序不能移动位置)
–动态重定位(执行时进行,程序能在内存中移动位置)
4.内存分配方式
5.碎片问题
–内部碎片:
(如固定分区,分页存储管理,段页式存储管理)
–外部碎片:
(动态分区、分段存储管理)
6.逻辑地址维数
–一维(连续分配、分页存储管理方式)
–二维(分段存储管理、段页式存储管理)
7.没有快表时访问一个数据需要访问内存的次数
–1次(连续分配)
–2次(一级分页存储管理、分段存储管理)
–3次(二级分页存储管理、段页式存储管理)
8.动态分区分配
–首次适应算法(空闲区按起始地址递增的次序拉链)
–最佳适应算法(空闲区按分区大小递增的次序拉链)
–回收时要进行分区的合并(具体有前后都没有空闲分区、只是前面有空闲区、只是后面有空闲区、前后都是空闲区这四种情况)
–碎片问题可采用紧凑技术加以解决
–采用紧凑技术后的动态分区分配方式也叫可重定位分区分配方式(因为它需要得到动态重定位技术的支持)
9.对换
–所谓“对换”,是指把内存中暂时不能运行的进程或暂时不用的程序或数据,调出到外存上,以便腾出足够的内存空间,再把具备运行条件的进程或进程所需要的程序和数据,调入内存。
–整体对换:
以进程为单位的对换。
(但进程的PCB常驻内存不应该被换出;进程的程序段如果正在被其他进程共享,也不应该被换出内存)
–部分对换:
以“页”或“段”为单位的对换
10.分页存储管理
–离散分配方式
–一维的逻辑地址空间
–作业被分成若干大小相等的部分——页
–页的大小由系统决定,为2的幂
–内存分成若干与页大小相等的部分——页框或内存块
–利用页表进行地址转换
–访问一个数据需2次访问内存,用快表(联想存储器)来改善访问速度
11.硬件地址变换机构
12.分段存储管理
–离散分配方式
–二维的逻辑地址空间
–作业被编程人员分成若干个段
–每个段的长度可以不同,每个段的长度由编程人员决定
–内存分配方式与动态分区方式类似,但只需为每个段分配连续的空间,段与段之间不必连续
–利用段表进行地址转换
–访问一个数据需2次访问内存,用快表(联想存储器)来改善访问速度
13.段页式系统
–离散分配方式
–二维的逻辑地址空间
–作业被编程人员分成若干个段
–每个段再被系统分为若干个页
–内存按页的大小分成若干个页框(物理块)
–每个作业一张段表,作业的每个段需要一张页表
–访问一个数据需3次访问内存(访问段表,再访问页表,最后访问数据或指令),用快表来改善访问速度
14.分段与分页的区别
(1)页是信息的物理单位,段是信息的逻辑单位;
(2)页的大小固定,段的大小可变;
(3)分页系统中的逻辑地址空间是一维的,分段系统中的是二维的。
15.虚拟存储器
–虚拟存储器的理论基础:
局部性原理
–虚拟存储器的关键技术:
请求调页/段技术、页/段置换技术
–虚拟存储器的定义:
虚拟存储器是指具有请求调入功能和置换功能,能从逻辑上对内存容量加以扩充的一种存储器系统。
–虚拟存储器容量:
取决于逻辑地址的结构,还受内外存空间总量的限制。
–虚拟存储器的特征:
多次性、对换性、虚拟性、离散性
–虚拟存储器的实现方式:
①请求调页、②请求调段、③请求段页式
–虚拟存储器的硬件支持:
①页表、段表
②缺页/段中断机构
③地址变换机构
16.请求分页存储管理方式
–页表项中需增加状态位、访问字段、修改位、外存地址等信息
–页面置换算法:
OPT、FIFO、LRU、CLOCK(NRU)等
–FIFO存在Belady现象
–置换算法选择不当可引起抖动现象
–访问数据的时间:
快表、内存、缺页中断处理
17.内存共享
–分段共享比分页共享更方便;
–可重入的代码段能被多个进程共享;
–系统中需设置一张共享段表。
18.内存保护
–不能由纯软件的方法实现,而需硬件和软件的配合一起完成;
–连续分配方式中:
一对界限寄存器
–离散分配方式中:
①越界检查:
页号&页表长度
段号&段表长度,段内地址&段长
②存取控制检查
③环保护机构
19.提高内存利用率的途径
(1)改连续分配方式为离散分配方式,以减少内存中的零头。
(2)增加对换机制:
将那些暂时不能运行的进程,或暂时不需要的程序和数据,换出至外存,以滕出内存来装入可运行的进程。
(3)引入动态链接机制:
当程序在运行中需要调用某段程序时,才将该段程序由外存装入内存。
这样,可以避免装入一些本次运行中不用的程序。
(4)引入虚拟存储器机制,使更多的作业能装入内存,并使CPU更加忙碌。
引入虚拟存储器机制,还可以避免装入本次运行中不会用到的那部分程序和数据。
(5)引入存储器共享机制:
允许一个正文段或数据段被若干个进程共享,以消减内存中重复的拷贝。
第五章设备管理
1.按信息交换的单位对设备进行分类
‐块设备(如磁盘,信息传送以块为单位,I/O控制方式通常采用DMA方式,其中的数据可寻址)
‐字符设备(如打印机,键盘等,信息传送以字节为单位,I/O控制方式通常采用中断方式,其中的数据不可寻址)
2.按设备的共享属性对设备进行分类
‐独占设备:
一段时间内只允许一个进程访问。
‐共享设备:
可同时访问。
可寻址,可随机访问。
‐虚拟设备:
1个物理设备→若干个逻辑设备
3.设备控制器
设备控制器是CPU与I/O设备之间的接口,它接收从CPU发来的命令,并去控制一个或多个设备的工作。
4.通道
通道通常是一个硬件,相当于一个功能简单的处理机。
–通道的指令类型单一,主要局限于与I/O操作有关的指令;
–通道没有自己的内存,是与CPU共享内存。
5.I/O控制方式发展的主要推动力:
–尽量减少主机对I/O的干预;
–缓和CPU与I/O设备速度不匹配的矛盾;
–提高CPU和I/O设备操作的并行程度。
6.I/O控制方式
–程序I/O方式;
–中断驱动方式;
–DMA控制方式;
–I/O通道控制方式。
7.缓冲引入的原因
(1)缓和CPU与I/O设备间速度不匹配的矛盾。
(2)减少对CPU的中断频率,放宽对CPU中断响应时间的限制。
(3)提高CPU和I/O设备之间的并行性。
8.单缓冲、双缓冲
9.缓冲池
由内存中一组缓冲区组成,由系统统一管理。
10.I/O软件的组成
11.设备独立性
‐是指应用程序独立于具体使用的物理设备。
也称为设备无关性。
‐优点:
1)增加设备分配时的灵活性;2)易于实现I/O重定向。
‐实现方式:
1)应用程序通过逻辑设备名来请求使用某类设备;2)系统中必须设置一张逻辑设备表LUT用来进行逻辑设备到物理设备的映射;3)在设备驱动程序之上还应设置一层设备独立性软件。
12.设备驱动程序(用来启动I/O设备进行I/O)
(1)接收由I/O进程发来的命令和参数,并将命令中的抽象要求转换为具体要求。
(2)检查用户I/O请求的合法性,了解I/O设备的状态,传递有关参数,设置设备的工作方式。
(3)发出I/O命令,启动I/O设备。
(4)及时响应由控制器或通道发来的中断请求。
(5)根据用户的I/O请求,自动地构成通道程序。
13.SPOOLing系统的组成:
1盘上的输入/出井:
模拟脱机输入/出时的磁盘;
2内存中的输入缓冲区和输出缓冲区;
3内存中的输入进程SPi和输出进程SPo:
模拟脱机输入/出时的外围机。
14.SPOOLing系统的特点
–提高了I/O的速度。
–将独占设备改造为共享设备。
–实现了虚拟设备功能。
15.利用SPOOLing技术共享打印机
(1)当用户进程请求打印时,系统并不把打印机分配给它,而是为它做两件事:
①在输出井中为之申请一个空闲磁盘分区,并将要打印的数据送入其中;
②再为用户进程申请一张空白的用户请求打印表,并将用户的打印要求填入其中,再将该表挂到打印请求队列上。
(2)打印机空闲时:
输出进程取出一张打印请求表,再从输出井中取出打印数据到输出缓冲区,通过打印机进行打印。
16.磁盘访问时间(寻道时间+旋转延迟时间+数据传输时间)
相关因素:
寻道距离,磁盘旋转速度,每道的字节数及数据传输量
17.磁盘移臂调度算法
‐先来先服务FCFS
‐最短寻道时间优先SSTF
‐电梯调度SCAN
‐循环扫描CSCAN
‐NStepSCAN
‐FSCAN
18.提高磁盘I/O速度的方法
‐在内存中开辟磁盘高速缓存
‐提前读
‐延迟写
‐优化物理块分布
‐虚拟盘
第六章文件系统
1.文件系统的功能
–文件存储空间的管理
–目录管理
–文件的读写管理
–文件的共享和保护
–提供友好的接口方便用户使用信息资源
2.文件逻辑结构
是指从用户观点出发所看到的文件组织形式,即用户对文件中信息的组织方式,它又称为文件组织。
–无结构文件(即字符流式文件):
现代OS普遍采用无结构方式
–有结构文件(包括顺序文件、索引文件、索引顺序文件)
3.文件物理结构
文件在存储介质上的存储组织方式,它与文件存储空间的分配策略和存储介质的性能相关。
–顺序结构文件(也叫连续文件)
–链接结构文件(包括隐式链接和显式链接)(如MS-DOS)
–索引结构文件(包括单级、多级、混合索引结构)(如UNIX\LINUX\MINIX)
4.逻辑文件与物理文件
‐逻辑文件指从用户观点出发所看到的文件,如现代OS中的流式文件。
‐物理文件是指存放在文件存储器中的文件。
‐流式文件中信息按字节为单位从0开始编号,此即逻辑地址,它可以转换成逻辑块号,和块内偏移量。
‐物理文件中每个单元的地址则以物理块号和块内偏移表示,此即物理地址。
‐逻辑地址到物理地址的转换
5.文件物理结构的比较
1)顺序文件:
顺序存取效率最高;随机访问也很方便。
但文件动态地增长和缩小系统开销很大;文件创建时要求用户提供文件的大小;存储空间浪费较大。
2)隐式链接文件:
克服了连续文件的不足之处,但不适合随机访问,可靠性差。
3)显式链接文件:
能随机访问,但对大文件随机访问性能差。
4)单级、多级索引:
既适合顺序访问,也适合随机访问,但索引表比较浪费文件存储空间。
5)混合索引:
既适合顺序访问,也适合随机访问,比普通索引方式节约存储空间,是一种比较好的文件物理结构。
UNIX系统采用混合索引方式。
6.目录管理的要求
(1)实现“按名存取”。
←文件系统最基本的目标
(2)提高对目录的检索速度。
(3)文件共享。
(4)允许文件重名。
7.文件控制块(FCB)
‐文件控制块是OS用来存放描述文件、管理文件的文件属性信息(包括文件名、文件的物理地址、文件的长度、文件的存取权限、创建使用的时间等)的数据结构。
‐文件=FCB+文件内容
‐文件与FCB一一对应
‐FCB是文件存在的唯一标志
‐FCB与文件一起存放在文件存储空间中,对文件执行打开操作时,FCB被读入内存
8.FCB的实现方式:
1一个FCB就是一个目录项,目录项的有序集合形成文件目录(如MS-DOS)。
2将FCB拆分成文件名和索引结点两部分(如UNIX)
目录项=文件名+索引结点编号
一个文件只有一个磁盘磁盘索引结点,但可有多个目录项
9.引入索引结点的目的
减少目录文件的内容(长度),从而提高在目录中检索文件的速度。
10.目录结构
–单级目录
–两级目录
–多级目录(树形目录):
目前最常用的目录结构
根目录、当前工作目录
1层次清晰;
2进一步提高目录检索速度;
3文件重名更方便;
4容易实现共享和保护
11.文件存储空间的管理
空闲表,空闲链表,位示图,成组链接法
12.文件的共享
–基于索引结点的共享(硬链接文件)
被共享的文件
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 操作系统 复习资料 超全超 详细