列表

详情


在进程资源有向图中,圆圈表示进程,方框表示资源,方框内的小圆数表示资源数。当有向边(或称请求边)由进程指向资源时,表示申请一个资源;当有向边(或称分配边)由资源指向进程时,表示获得一个资源。 假设系统中有三个进程P1、P2 和P3,两种资源R1、R2,且R1的资源数等于3,R2的资源数等于3。如果进程资源图如图(a)和图(b)所示,那么图(a)中();图(b)中()。

第 1 问

A. P1、P2、P3 都是阻塞节点,该图不可以化简,是死锁的

B. Pl、P2、P3都是非阻塞节点,该图可以化简,是非死锁的

C. PI、P2是非阻塞节点,P3是阻塞节点,该图不可以化简,是死锁的

D. P3是非阻塞节点,PI、P3是阻塞节点,该图可以化简,是非死锁的

第 2 问

A. Pl、P2、P3 都是非阻塞节点,该图可以化简,是非死锁的

B. Pl、 P2、P3都是阻塞节点,该图不可以化简,是死锁的

C. P3 是非阻塞节点,PI, P2是阻塞节点,该图可以化简,是非死锁的

D. PI. P2是非阻塞节点,P3是阻塞节点,该图不可以化简,是死锁的

参考答案: A C

详细解析:

本题考查的是进程资源图的分析。

解答本题首先需要了解图所代表的含义。在图中R1与R2代表的是资源,P1-P3代表进程。从资源指向进程的箭头代表有资源分配给了进程,而从进程指向资源的箭头代表进程要申请这个资源(注:每个箭头只代表一个资源或资源请求)。
图(a):
在图a中R1一共有3个资源,并将这3个资源中的1个分给了P1,1个分给了P3,P2此时向R1申请1个资源,该申请可以得到满足,不会发生阻塞。一共有3个R2资源,并将这3个R2资源分别分给了进程P1,P2和P3,所以此时已经没有可用的R2资源了,但是进程P1、P2、P3又分别申请了1个R2,这三个请求都是得不到满足的,所以进程P1、P2、P3都是阻塞节点。进程资源图(a)不可以化简,是死锁的。第一题选择A选项。
图(b):
在图b中R1一共有3个资源,并将这3个资源中的2个分别分给了P1和P3,P2此时向R1申请2个资源,该申请不能得到满足,P2会发生阻塞。一共有3个R2资源,并将这3个R2资源分别分给了进程P1,P2和P3,所以此时已经没有可用的R2资源了,但是进程P1又分别申请了1个R2,所以请求是得不到满足的,所以进程P1是阻塞节点。P3只有分配无请求,所以是非阻塞节点。因为P3是非阻塞节点,可以运行完毕,运行完后释放占有的1个R1资源和1个R2资源,然后P1申请1个R2资源可以得到满足,这样可以使得P1变为非阻塞节点,得到所需资源运行完毕,释放其占有资源,使得P2变为非阻塞节点,运行完毕。故进程资源图(b)可以化简,是非死锁的。第二题选择C选项。


上一题