2018年宁夏大学数学计算机学院408计算机学科专业基础综合之计算机操作系统考研强化五套模拟题
● 摘要
一、应用题
1. 输入进程I 和用户进程P 采用双缓冲技术交换数据。输入进程I 首先填满Bufl ,用户进程P 从Buf1提取数据的同时,输入进程I 填充Buf2。当Buf1出空时,输入进程I 又可填充Buf1; 同样,当Buf2填满时,用户进程P 又可从Buf2提取数据。如此两进程交替使用两缓冲区。试用P 、V 操作实现两进程之间的同步。
【答案】
2. 进程资源的使用情况和可用情况如下表所示(四个进程和三类资源):
(1)请画出资源分配图。
(2)分析目前系统中是否会发生死锁。
【答案】(1)资源分配图
Pi>。Pi 是进程每一条便是一个有序对 并且当前正在等待分配。如果ri 是资源类型如果则存在一条从Pi 指向ri 的有向边,它表示Pi 提出了一个要求分配ri 类资源中的一个资源的请求,则存在一条从ri 类资源执行进程Pi 的有向边,它表示ri 类资源中的某个资源已分配给了进程Pi 。有向边 在有向图中,用圆圈代表进程,用方框表示每类资源。每一类资源ri 可能有多个实例,可用方框中的圆点表示各个资源实例。申请边为从进程到资源的有向边,表示进程申请一个资源,但当前该进程在等待该资源。分配边为从资源到进程的有向边,表示有一个资源实例分配给进程。注意:一条申请便仅指向代表资源类ri 的方框,表示申请时不指定哪一个资源实例,而分配边必须由方框中的圆点引出,表目哪一个资源实例也被占有。 当进程Pi 请求资源类ri 的一个实例时,将一条请求边加入资源分配图,如果这个请求是可以满足的,则该请求边立即转换成分配边:当进程随后释放了某个资源时,则删除分配边。 (2)从进程对各类资源的占有量尚需量和系统中各类资源的剩余量来考虑是否有死锁存在。可以看出进程P2已得到全部资源,能在有限的时间内归还资源,得到可分配的资源数为 (3, 1,0)+(0, 0, 0)=(3, 1,0) 可满足进程P1的申请,P1也能在有限的时间内归还资源,于是可分配资源数増加为 (3,1,0)+(2, 0,0)=(5, 1,0) 接着,对进程P4的申请也能满足,最后让进程P3运行。所以存在一个进程推进的序列{P2, P1, P4, P3},先后都能完成,目前系统是安全的,没有死锁。也可通过对资源分配图化简的方法,说明没有死锁存在。 【解析】进程的死锁问题可以用有向图准确而形象的描述,这种有向图称为系统资源分配图。一个系统资源分配图SRAG 可定义为一个二元组,即SRAG=(V , E ),其中V 是顶点的集合,而E 是有向边的集合。顶点集合可分为两种部分:P=(Pl ,P2, …,Pn ), 是由系统内的所有进程组成的集合,每一个Pi 代表一个进程;R=(r1,r2,…,rm ), 是系统内所有资源组成的集合,每一个ri 代表一类资源。 二、综合题 3. 在请求页式存储管理中,什么叫快表?为什么要引入快表?画出具有快表的地址变换机构图。 【答案】为了提高查表的速度,在分页地址变换机构中加入一组高速缓冲存储器,用来存放当前作业的最常用的页号和与之相应的物理块号。一般称这样的寄存器组为快表或联想存储器。根据分析可画出如图所示的具有快表的地址变换机构图: (1)利用快表查找; (2)利用页表查找; (3)利用页表中查找到的页号、块号更新快表。 图 快表的地址变换机构图 4. 试说明引起进程被撤消的主要事件。 【答案】引起进程被撤销的主要事件有: (1)正常结束 在任何计算机系统中,都应有一个用于表示进程已经运行完成的指示;