手机版

第6章习题解答(2)

发布时间:2021-06-10   来源:未知    
字号:

操作系统

8.某系统中有3个并发进程,都需要4个同类资源。试问该系统不会产生死锁的最少资源总数应该是 B 。

A.9 B.10 9.银行家算法是一种

A.死锁避免 B.死锁防止

C.11

D.12 D.死锁解除 D.信号量

C.死锁检测

10.信箱通信是进程间的一种

A.直接 B.间接 C.低级 三、问答

1.试说出图6-1(即教材中第2章的图2-2)所给出的监视程序A和计数程序B之间体现出一种什么关系,是“互斥”还是“同步”?为什么?

程序A:

程序B: while(1) {

B1: 延迟半小时; B2: 打印COUNT的值; B3:COUNT=0; }

while(1) {

A1: 收到监视器的信号; A2: COUNT=COUNT+1; }

图6-1 对两个程序的描述

答:图6-1(即教材中第2章的图2-2)所给出的监视程序A和计数程序B之间体现出的是一种互斥关系,因为在监视程序A里,要对共享变量COUNT进行操作:

COUNT=COUNT+1;

在计数程序B里要对共享变量COUNT进行操作: 打印COUNT的值;

COUNT=0;

这两段程序是不能交叉进行的,不然就会出现与时间有关的错误。

2.模仿教材中的图6-4,画出COPY和PUT之间的直接依赖关系。然后把两个图汇集在一起,体会它们三者之间正确的同步关系。再模仿教材中的图6-8,能用信号量及P、V操作来正确处理GET、COPY和PUT三者之间的协同工作关系吗?

答:图6-2给出了GET、COPY和PUT三者间正确的同步关系:GET在向COPY发“可以拷贝”的消息后,要等待COPY发来“拷贝结束”的消息。因为这个消息意味着输入缓冲区R已经被COPY腾空,GET可以再次向里面存放从文件F里取出的记录了;COPY在等到GET发来的“可以拷贝”的消息后,才能够把输入缓冲区R里的记录拷贝到输出缓冲区T中。完成这个动作后,表示输入缓冲区R已经被COPY腾空,因此应该立即向GET发消息,告诉它输入缓冲区R又可以使用了。随后,向PUT发送“可以打印”的消息,等待PUT发来“打印结束”的消息;PUT在等到COPY发来“可以打印”的消息后,才能够从输出缓冲区T里取出记录打印。打印完毕后,向COPY发送“打印完毕”的消息。这个消息意味着输出缓冲区T已经被PUT腾空,COPY又可以再次去等待GET发送的“可以拷贝”的消息,从输入缓冲区R里取出记录存入输出缓冲区T了。

第6章习题解答(2).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
×
二维码
× 游客快捷下载通道(下载后可以自由复制和排版)
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
× 常见问题(客服时间:周一到周五 9:30-18:00)