资源分配图死锁检测

时间:2012-11-29 12:19:08

标签: graph operating-system process

我知道循环请求会导致死锁,但我想知道以下是否也会导致死锁......

Resource Graph

我不清楚,但我也认为如果“由于两个或多个程序/进程因完成操作而需要另一方的响应而导致失败或无法执行”

这是否意味着如果进程2和进程4都需要R7,这将导致死锁? (对于多个进程请求的资源R5和R4相同)

1 个答案:

答案 0 :(得分:1)

使用图片中的符号的最简单的死锁图是当两个进程都需要相同的两个资源时。例如,如果您的示例流程P2依赖于资源R5,则可能会出现死锁。假设P2P4都同时请求R7R5P2锁定R7P4锁定{{} 1}}。然后R5正在等待P2并且R5正在等待P4,也就是说,每个人都在等待另一个人释放锁定。这是一个很小的例子。

在您的情况下,没有这种可能性,因为这两个不同的进程不会共享两个资源。唯一有问题的是R7。如果存在与P4P2的争用,那么,P7将先执行(没问题),否则另一个进程先执行,解锁资源,并允许{{1执行(也没问题)。