考试操作系统重点整理(西安电子科技大学出版社第三版)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1.临界资源临界区
临界资源(Critical Resource):把一段时间内只允许一个进程访问的资源称为临界资源或独占资源
临界区(Critical Section):每个进程中访问临界资源的那段代码称为临界区
2.为什么要引入缓冲区
(1)缓和CPU与I/O设备间速度不匹配的矛盾。
(2)减少对CPU的中断频率,放宽对CPU中断响应时间的限制
(3)提高CPU和I/O设备之间的并行性。
3.页表定义
(1)在分页系统中,允许进程的每一页离散地存储在内存的任一存储块中,为方便查找,系统为每一进程建立一张页面映像表,简称页表
(2)页表实现了从页号到物理块号的地址映射。在页表表项中常设置一存取控制字段,对存储块内容加以保护。
(3)状态位P :指示该页是否已调入内存。
访问字段A :用于记录本页在一段时间内被访问的次数,或记录本页最近已有多长时间未被访问。
修改位M :表示该页在调入内存后是否被修改过。
外存地址:用于指出该页在外存上的地址。
4.spooling技术
(1)为缓和CPU的高速性与I/O设备低速性间的矛盾而引入了脱机输入、脱机输出技术。该技术是利用专门的外围控制机,将低速设备上的数据传送到高速磁盘上;或者相反。这样就可以在主机的直接控制下实现脱机输入输出。此时外围操作与CPU对数据的处理同时进行,我们把这种在联机情况下实现的同时外围操作称为SPOOLing(Simultaneaus Periphernal Operating On—Line),或称为假脱机操作。
(2)SPOOLing系统的组成
主要有三大部分:
a)输入井和输出井。是磁盘上开辟的两个大存储空间。
b)输入缓冲区和输出缓冲区。在内存中开辟两个缓冲区,输入缓冲区暂存由输入设备送来
的数据,后送输入井;输出缓冲区暂存从输出井送来的数据,后送输出设备。
c)输入进程和输出进程。利用两个进程模拟脱机I/O时的外围处理机。
5.虚拟存储器
(1)是指具有请求调入功能和置换功能,能从逻辑上对内存容量加以扩充的一种存储器系统。其逻辑容量由内存容量和外存容量之和所决定,其运行速度接近于内存速度,而每位的成本却接近于外存。
(2)虚拟存储器的特征:
a)多次性:一个作业被分成多次调入内存运行
b)对换性:允许在作业的运行过程中进行换进、换出。
c)虚拟性:能够从逻辑上扩充内存容量,使用户所看到的内存容量远大于实际内存容量。
6.进程创建与阻塞过程(P45)
(1)进程的创建过程:
a)申请空白PCB
b)为新进程分配资源
c)初始化进程控制块
d)将新进程插入就绪队列
(2)进程的阻塞过程
a)调用阻塞原语阻塞自己;
b)将PCB中的状态改为阻塞,并加入阻塞队列;
c)转进程调度
7.分页和分段有何区别?
a.分页和分段都采用离散分配的方式,且都要通过地址映射机构来
实现地址变换,这是它们的共同点;
b.对于它们的不同点有三,第一,从功能上看,页是信息的物理单位,分页是为实现离散分配方式,以消减内存的外零头,提高内存的利用率,即满足系统管理的需要,而不是用户的需要;而段是信息的逻辑单位,它含有一组其意义相对完整的信息,目的是为了能
更好地满足用户的需要;第二页的大小固定且由系统确定,而段的长度却不固定,决定于用户所编写的程序;第三分页的作业地址空间是一维的,而分段的作业地址空间是二维的。
8.四种i/o控制方式
I/O控制方式:程序I/O方式、中断驱动I/O控制方式、DMAI/O控制方式、I/O通道控制方式。程序I/O方式适用于早期的计算机系统中,并且是无中断的计算机系统;中断驱动I/O 控制方式是普遍用于现代的计算机系统中;DMA I/O控制方式适用于I/O设备为块设备时在和主机进行数据交换的一种I/O控制方式;当I/O设备和主机进行数据交换是一组数据块时通常采用I/O通道控制方式,但此时要求系统必须配置相应的通道及通道控制器。
9.死锁
(1)死锁(Deadlock):是指多个进程在运行过程中因争夺资源而造成的一种僵局,当进程处于这种状态时,若无外力作用,它们都将无法再向前推进。
(2)产生死锁的原因可归结为如下两点:
a)竞争资源。当系统中供多个进程共享的资源如打印机、公用队列等,其数目不足以满足
诸进程的需要时,会引起诸进程对资源的竞争而产生死锁。
b)进程间推进顺序非法。进程在运行过程中,请求和释放资源的顺序不当,也同样会导致
产生死锁。
(3)死锁产生的必要条件
a)互斥条件:进程访问的是临界资源,即在一段时间内某资源只由一个进程占用。如果此
时还有其他进程请求该资源,则请求者只能等待,直至占有该资源的进程用完释放。
b)请求和保持条件:一进程在请求新的资源的同时,保持对已分配资源的占有。
c)不剥夺条件:指进程已获得的资源,在未使用完之前,不能被剥夺,只能在使用完时由
自己释放。
d)环路等待条件:指在发生死锁时,必然存在一个进程--资源的环形链。即进程集合
{P0,P1,P2,…,Pn}中的P0正在等待一个P1占用的资源;P1正在等待一个P2占用的资源,……,Pn正在等待一个已被P0占用的资源。
(4)处理死锁的基本方法
a)预防死锁
b)避免死锁
c)检测死锁
d)解除死锁
(5)预防死锁
a.摒弃"请求和保持"条件:系统规定所有进程开始运行之前,都必须一次性地申请其在整个运行过程所需的全部资源,但在分配资源时,只要有一种资源不能满足某进程的要求,即使其它所需的各资源都空闲,也不分配给该进程,而让该进程等待;
b.摒弃"不剥夺"条件:系统规定,进程是逐个地提出对资源的要求的。当一个已经保持了某些资源的进程,再提出新的资源请求而不能立即得到满足时,必须释放它已经保持了的所有资源,待以后需要时再重新申请;
c.摒弃"环路等待"条件:系统将所有资源按类型进行线性排序,并赋予不同的序号,且所有进程对资源的请求必须严格按序号递增的次序提出,这样,在所形成的资源分配图中,不可能再出现环路,因而摒弃了"环路等待"条件。
(6)银行家算法(P115 22题)
(7)解除死锁
剥夺资源:从其他进程剥夺足够数量的资源给死锁进程以解除死锁状态。
撤销进程:最简单的是让全部进程都死掉;温和一点的是按照某种顺序逐个撤销进程,直至有足够的资源可用,使死锁状态消除为止。
(8)检测死锁
a)资源分配图
b)死锁定理(P112)