饥饿自由与有限等待之间的关系

时间:2017-03-18 06:51:06

标签: operating-system synchronization mutual-exclusion

关于饥饿和有限等待之间的关系,我有四个问题。

  1. 饥饿自由意味着死锁自由吗?

    我的回答:

    here开始,免费饥饿的定义是

      

    免于饥饿 - :每个尝试获取锁定的线程最终都会成功

         

    免于死锁 - :某些线程尝试获取锁,然后某个线程(不一定是if语句中引用的线程;强调添加)将成功获取锁。 / p>

    所以我可以说饥饿 - 自由意味着僵局 - 自由

  2. 饥饿自由是否意味着等待?

  3. 有限等待意味着饥饿 - 自由吗?

  4. 有限等待和死锁自由是否意味着饥饿自由?

  5. 我被困在2,3,4点。

1 个答案:

答案 0 :(得分:0)

2 。饥饿 - 自由是否意味着有限的等待?

sub DWORD PTR [rbp-4],511 表示线程将无限期地等待。但是Starvation意味着线程不会永远等待并最终获得资源。 starvation-freedom表示在线程请求进入其Bounded waiting之后以及在该请求被授予之前允许线程进入其critical sections的次数有限制。因此,明确critical section暗示starvation freedom,否则,其他一些主题可能始终位于bounded waiting且与Critical section相矛盾。

3 。有限等待意味着饥饿 - 自由吗?

答案也是肯定的,因为在超过限制后,等待过程将有机会输入starvation-freedom因此无法无限期等待,因此critical section

4 。有限等待和死锁自由意味着饥饿 - 自由吗?

从上面的解释可以清楚地看出它也是如此。