软件设计师(软考)13年上半年上午25题进程资源图

软件设计师(软考)13年上半年上午25题26题进程资源图

在这里插入图片描述

一、资源进程图的化简与判断死锁问题

做这种题目首先我们要先明白一句话:资源先分配,然后进程再请求。

倘若资源中没有资源,那么进程则无法请求到,那么就会出现阻塞状态。

并且资源分配与请求不能够只是简单的相互抵消。

二、通过此题目进行理解
我们首先先观察图(a)

在这里插入图片描述

首先R1先分配资源,R1一次性将自己的资源全部分配出去了,R1先把资源分配给了P1和P2,导致R1中现在并不存在资源,这时候P2向R1中申请资源,但是由于R1中并没有资源,导致P2一直在等待R1中有资源。所以这时候P2是处于阻塞状态。

接下来观察R2,R2同样一次性将自己的资源全部分配出去了,导致R2中并没有资源,这也就导致P1向R2请求资源同样请求不到,所以P1也处于阻塞状态。

所以我们现在发现P1,P2两个进程都处于阻塞状态。那么图(a)这个图就出现了死锁的情况,所以的资源和进程都处理不了。一整个图都不能进行任何化简。(化简其实就是把图中一些线给消去。)

所以25题我们选择B

接下来我们来观察图(b)

在这里插入图片描述

还是和图(a)中的分析一样的。资源先分配,然后进程再去请求。

先看到R1中,R1先分配,将自己的两个资源一次性全部分配出去了,R1中就没有资源了,这个时候P2来请求R1中的资源请求不到,所以P2现在处于阻塞状态。
然后我们现在来看R2,R2先是把自己的资源分配了两个出去,一个给了P2,一个给了P3,自己本身还存在一个资源,这个时候P1来请求R2的一个资源,就能够请求的到,然后P1成功将请求R2资源的那条线消去了,然后P1就能够去处理R1所分配过来的一个资源,处理完成之后,P1就将R1所分配过来的资源归还回去,这个时候R1就有一个资源了。
那么一直处于阻塞状态的P2发现R1有了一个资源之后,立刻就能够请求到了,然后将R1中的一个资源拿了过来,P2的请求就结束了,并且再处理完之后将资源归还回去,然后就能够处理R2所分配过来的资源,然后再将R2所分配过来的资源归还回去。
完成了上述操作之后,R2中就有两个资源,这时P3来请求一个资源就肯定能够请求的到。并且将分配来的资源处理掉。

完成一系列操作之后,整张图的线就已经全部消除了。这就是成功化简了,并且没有一个地方出现无法执行的状态,也就是没有出现死锁状态,所以26题我们选择C

图b图解

上面可能有些啰嗦,我们用图解直观的来看一下

1、先是原图
在这里插入图片描述
2、首先分配完成之后,P2去申请R1,发现并能够申请的到,所以P2处于阻塞状态。
在这里插入图片描述
3、这个时候由于R2中有一个资源,所以P1能够申请的到,并且将R1分配来的资源处理掉,所以R1中就有一个资源了。这个样就化简了P1。

在这里插入图片描述

4、这个时候P2就发现了他所申请的R1中有一个资源了,所以阻塞状态解除,并且向R1申请到了资源,并且处理掉R2所分配过来的资源。R2中就有两个资源了。这个时候就化简了P2。
在这里插入图片描述
5、最后R3向R2中请求资源,并且能够请求的到,请求处理完成之后,再去做所分配过来的资源,然后P3也就孤立了,并且将所分配来的资源返还回去,所以R1中有2个资源,R2中有3个资源。
在这里插入图片描述

6、最后完成图像所有操作。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值