资源调用--死锁的情况

1、公式

总共有w个资源,有n个进程,每个进程使用r个资源。那么w必须>= n*(r-1)+1,需要的资源>=并发的进程数*(每个资源需要的进程数-1)+1

例:

若在系统中有6个互斥并发进程,每个进程需要2个资源,那么使系统不发生死锁的资源的最少数目为多少?

 m >= 6*(2-1)+1 = 7

所以,最少需要资源数为7。

例:

系统中有R类资源m个,现有n个进程互斥使用,若每个进程对R资源的最大需求为w,那么当m、n、w分别取下表中的值时,对于表中的①–⑥中情况,
____可能会发生死锁。若将这些情况得m分别加上 ____,则系统不会发生死锁。

 

1、A. ①②⑤   B. ③④⑤   C. ②④⑤   D. ②④⑥
2、A. 1、1和1   B. 1、1和2   C. 1、1和3    D. 1、2和1

1解:根据m>=n*(w-1)+1,例如:①中3>=2*(2-1)+1 符合,则①不会发生死锁。同理②、④、⑤可能发生死锁, ①、 ③、⑥不会发生死锁。所以1选C。

2解:例如②,则3*(2-1)+1-1 = 1,所以②+1不会发生死锁。④中3*(3-1)+1-5 = 2。所以选D。

例:某系统中有 3 个并发进程竞争资源 R,每个进程都需要 5 个 R,那么至少有(24) R,才能保证系统不会发生死锁。

  A.12   B.13   C.14   D.15

  解析:

  

 

posted @   洛飞  阅读(415)  评论(0编辑  收藏  举报
编辑推荐:
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
阅读排行:
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 提示词工程——AI应用必不可少的技术
· .NET周刊【3月第1期 2025-03-02】
点击右上角即可分享
微信分享提示