手机版

第6章习题解答(5)

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

操作系统

进程 磁带机 绘图仪 打印机 CD-ROM

(a)

进程 磁带机 绘图仪 打印机 CD-ROM (b)

E [ 6 3 4 2 ] (资源总数) P [ 5 3 2 2 ] (已分配数) A [ 1 0 2 0 ] (剩余数) (c)

图6-7 多种资源的银行家算法

答:进程A申请了最后一台磁带机后,系统资源的使用情况由图6-7变为图6-8。按照

多种资源的银行家算法,这时系统资源的剩余数可以满足进程D的要求,于是系统资源剩余数矩阵A变为A [1 1 2 1];这样的剩余数,可以满足进程A的要求,于是系统资源剩余数矩阵A变为A [5 1 3 2];这样的剩余数,可以满足进程B、C、E三个进程中任何一个的需要,例如给E。在E完成后,系统资源剩余数矩阵A仍为A [5 1 3 2];再给C,C完成后系统资源剩余数矩阵A变为A [6 2 4 2];再给B,B完成后系统资源剩余数矩阵A变为A [6 3 4 2],系统收回了所有资源。由此可知,进程A申请最后一台磁带机,不会引起死锁。

9.一个计算机有6台磁带机,有n个进程竞争使用,每个进程最多需要两台。那么n为多少时,系统才不存在死锁的危险?

答:由于每个进程最多需要两台磁带机,考虑极端情况:每个进程已经都申请了一台。那么只要还有一台空闲,就可以保证所有进程都可以完成。也就是说当有条件:n+1=6(即n=5)时,系统就不存在死锁的危险。

进程 磁带机 绘图仪 打印机 CD-ROM

(a)

进程 磁带机 绘图仪 打印机 CD-ROM (b)

E [ 6 3 4 2 ] (资源总数) P [ 6 3 2 2 ] (已分配数) A [ 0 0 2 0 ] (剩余数) (c)

图6-8 进程A申请了最后一台磁带机后

10.考虑教材中的图6-16(d)。如果进程C需要的是资源S,而不是资源R,这会引起

死锁吗?如果是既要求资源R又要求资源S,情况会怎样?

答:这时的资源使用序列为:(1)A申请R,C申请T,A申请S,C申请S,A释放R,A释放S;(2)A申请R,C申请T,A申请S,C申请S,C申请R,A释放R,A释放S。分别画出它们的资源分配图,可知,它们都不会引起死锁。

四、计算

1.在公共汽车上,司机和售票员的工作流程如图6-9(即教材上的图6-29)所示。为了确保行车安全,试用信号量及其P、V操作来协调司机和售票员的工作。

解:从日常生活知识知道,司机和售票员之间的工作有如下

司机:

售票员

操作系统

的制约关系存在。

(1)司机必须在得到售票员的“关门完毕”的信号后,才能启动汽车。这是一个司机要与售票员取得同步的问题。

(2)售票员必须在得到司机的“已经停车”的信号后,才能打开车门。这是一个售票员要与司机取得同步的问题。

因此,为了确保行车安全,需要设置两个同步信号量: S1——初值为0,控制司机与售票员取得同步;

S2——初值为0,控制售票员与司机取得同步。

于是,在加入了信号量上的P、V操作后,图6-9应该变为图6-10。

2.有一个阅览室共100个座位。用一张表来管理它,每个表目记录座号以及读者姓名。读者进入时要先在表上登记,退出时要注销登记。试用信号量及其P、V操作来描述各个读者“进入”和“注销”工作之间的同步关系。

解:分析题意,知道在管理读者“进入”和“注销” 阅览室的工作中,存在这样一些制约关系:

(1)100个座位是读者共同使用的资源,因此要用一个资源分配信号量来管理它; (2)读者“进入”阅览室时,要申请座位。只有申请到座位才能进入,否则应该等待到座位的释放;

(3)没有读者时,不能做“注销”工作,必须等到有了读者才能做。 因此,可以设置两个信号量:

S1——初值为100,管理座位的分配;

S2——初值为0,控制“注销”与“进入”间取得同步。

司机:

售票员:

图6-10 加入P、V操作后的司机与售票员

“进入”与“注销”两个进程的流程如图6-11所示。

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