问答题
假定某计算机系统有R1设备3台、R2设备4台,它们被P1、P2、P3和P4这4个进程所共享,且已知这4个进程均以下面所示的顺序使用现有设备。
→申请R1→申请R2→申请R1→释放R1→释放R2→释放R1→
(1)系统运行过程中是否有产生死锁的可能?为什么?
(2)如果有可能产生死锁,请列举一种情况,并画出表示该死锁状态的进程-资源图。
【正确答案】
(1)系统运行过程中有可能产生死锁。根据题意,系统中只有3台R1设备,它们要被4个进程共享,且每个进程对R1设备的最大需求为2。由于R1设备数量不足,而且它又是一个互斥、不可被剥夺的资源,而系统又没采取任何措施破坏死锁产生的剩余两个必要条件——请求与保持条件和环路等待条件,因此,在系统运行过程中可能会发生死锁。
(2)当P1、P2、P3进程各得到一个R1设备时,它们可继续运行,并均可顺利地申请到一个R2设备;当它们第二次申请R1设备时,因为系统已无空闲的R1设备,故它们全部阻塞,并进入循环等待的死锁状态。这种死锁状态下的进程-资源图如图所示。
[*]
【答案解析】
提交答案
关闭