OS 第五:死锁与饥饿 总结笔记

1.分别解释死锁和饥饿的含义。

  • 死锁:一组进程中的每个进程均等待此组进程中其他进程所占有的、因而永远无法得到的资源,这种现象称为进程死锁,简称死锁(deadlock)。
  • 饥饿:当等待事件给进程的推进和响应带来明显的影响时,就称为发生进程饥饿。

简要说明
  死锁:是指并发进程在请求资源时发生的无限期等待。
  饥饿:在预计时间内,某个或某些进程永远得不到完成工作的机会。通常是由资源分配不公引起的。

2.对于死锁现象发生的四个结论。

  • ① 参与死锁的进程数目至少为2;
  • ② 参与死锁的所有进程均等待资源;
  • ③ 参与死锁的进程至少有两个占有资源;
  • ④ 参与死锁的进程是系统中当前正在运行的进程集合的一个子集。

3.死锁发生的四个必要条件是什么?

  • 资源独占:一个资源在同一时刻只能被分配给一个进程。
  • 不可剥夺:资源申请者不能强行地从资源占有者守中夺取资源,即资源只能由其占有者在使用完后自愿地释放。
  • 保持申请:进程在占有部分资源后还可以申请新的资源,而且在申请新资源的时候并不释放它已经占有的资源。
  • 循环等待:存在一个进程等待序列{P1,P2,…, Pn},其中P1等待P2所占有的某一资源,P2等待P3所占有的某一资源,…,Pn等待P1所占有的某一资源,形成一个进程等待环路。

  当且仅当上述四个条件同时满足时,死锁才会发生。换言之,只要破坏上述四个条件中的任意一个,死锁就不会发生。

4.说明避免死锁与预防死锁的区别?

  • 预防死锁是对于进程的资源申请命令施加限制。
  • 避免死锁是在进程请求分配资源时进行动态检查,并根据检查结果决定是否实施资源分配。

避免死锁中,可把系统状态分为安全状态和不安全状态。


资料参考

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

MoMing丶

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值