首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何找到死锁是否存在?

如何找到死锁是否存在?
EN

Stack Overflow用户
提问于 2015-10-14 14:18:01
回答 1查看 648关注 0票数 0

考虑一个具有4种资源类型的系统-- R1 (3单元)、R2 (2单元)、R3 (3单元)、R4 (2单元)。使用非抢占资源分配策略。在任何给定的情况下,如果请求不能完全满足,则不接受它。如果独立执行,三个进程P1、P2、P3按如下方式请求资源。

代码语言:javascript
复制
Process P1:

t=0: requests 2 units of R2

t=1: requests 1 unit of R3

t=3: requests 2 units of R1

t=5: releases 1 unit of R2 and 1 unit of R1.

t=7: releases 1 unit of R3

t=8: requests 2 units of R4

t=10: Finishes  
代码语言:javascript
复制
Process P2:

t=0: requests 2 units of R3

t=2: requests 1 unit of R4

t=4: requests 1 unit of R1

t=6: releases 1 unit of R3

t=8: Finishes   
代码语言:javascript
复制
Process P3:

t=0: requests 1 unit of R4

t=2: requests 2 units of R1

t=5: releases 2 units of R1

t=7: requests 1 unit of R2

t=8: requests 1 unit of R3

t=9: Finishes

如果所有三个进程都在时间t= 0处同时运行,下列哪一条语句是真的?

  1. 所有进程都将在没有死锁的情况下结束。
  2. 只有P1和P2将陷入死锁。
  3. 只有P1和P3将陷入死锁。
  4. 所有三个进程都将处于死锁状态。
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-10-14 15:09:57

我运行了请求和可用资源,所有进程都没有死锁就完成了。

  • 在t= 3时,进程P1必须等待,因为它没有获得所需的资源,但是当P3释放它们时,它会在t=5处得到排序。不可能发生“循环等待”和“等待和等待”。
  • 接下来等待P1是在t=8时,它请求2的R4,当P3在t= 9完成时排序。和上面一样,不会发生“循环等待”和“等待和等待”。

除此之外,所有请求都立即得到批准。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33127861

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档