TechEd 2002 死 锁 一、死锁定义 二、死锁的示例 当两个进程以如下顺序推进: →T占有资源D; →C占有资源U; →T申请资源U,则T阻塞; →C申请资源D,则C阻塞。 这两个进程将永远等下去,形成僵局。 从图中可见:进程与资源形成了回路(进程—资源循环回路),系统进入死锁状态。 一、产生死锁的四个必要条件 二、死锁的预防 举例:系统中编号如下: 打印机 1 绘图仪 2 磁带机 3 CD—ROM 4 分配原则:已占有高号资源者不能再申请低号资源。进程可先申请得到打印机,后申请磁带机;但不可先申请得到了绘图仪,再申请打印机 总有一个被分配的资源是编号最高的,占有该资源的进程不可再申请其它已经被占有的各种资源。 资源排序原则:较为紧缺的资源排号为大。 一、单种资源的“银行家算法” 二、多种资源的“银行家算法” §3.7 死锁的避免(银行家算法) 3. 假定B进程完成,系统收回其资源(4个),资源使用情况如表e。4. 比较现在资源余数(5)与剩余未完成进程的“尚需资源”。可见,若将5个资源分配给C,就能达到C的“最大需求”,使C进程完成。假设系统分配5个资源给C,情况如表f。 7 0 3 已有量 0 7 C 0 — B 6 9 A 尚需资源 最大需求 进程 2 0 3 已有量 5 7 C 0 — B 6 9 A 尚需资源 最大需求 进程 表f. 假设完全满足C后情况资源余数:0 表e. 系统回收B全部资源资源余数:5 §3.7 死锁的避免(银行家算法) 0 0 3 已有量 0 — C 0 — B 6 9 A 尚需资源 最大需求 进程 表g.系统回收C全部资源资源余数:7 5. 假定C进程完成,系统收回其资源(7),资源使用情况如表g。6. 比较现在资源余数(7)与A的“尚需资源”(6)。可见,能满足A进程全部需要,使A进程完成。7. 结论:如接受B一个资源的请求,存在安全序列B,C,A,所导致的系统状态是安全的,没有发生死锁的可能。 0 0 0 已有量 0 — C 0 — B 0 — A 尚需资源 最大需求 进程 表h. 3进程全部完成资源余数:10 §3.7 死锁的避免(银行家算法) 举例2:系统中有某种资源,总量为10,现有3个进程,当运行到某一时刻,资源使用情况如表a。现进程A提出一个资源请求,系统采用“银行家算法”来测试死锁的可能性。 2 2 3 已有量 5 7 C 2 4 B 6 9 A 尚需资源 最大需求 进程 表a.系统某时刻状态资源余数:3 §3.7 死锁的避免(银行家算法) 2 2 4 已有量 5 7 C 2 4 B 5 9 A 尚需资源 最大需求 进程 2 4 4 已有量 5 7 C 0 4 B 5 9 A 尚需资源 最大需求 进程 表b. 资源余数:2 表c. 资源余数:0 1. 系统假定接受请求,将一个资源分配给A,资源使用情况如表b。2. 比较资源余数与各进程“尚需资源”。可见,现在系统能满足B的所有需求,使B进程完成。假设系统先满足B,分配2个资源给B,情况如表c。 §3.7 死锁的避免(银行家算法) 2 0 4 已有量 5 7 C 0 4 B 5 9 A 尚需资源 最大需求 进程 表d. 资源余数:4 3. 假定B进程完成,系统收回其资源(4个),资源使用情况如表d。 4. 比较资源余数与各进程“尚需资源”。可见,现在系统对A和C的最大需求均不能满足,因此A进程和C进程的完成都有潜在的危机。 5. 结论:如接受A进程1个资源的请求,所导致的系统状态将是不安全的,有产生死锁的可能。 §3.7 死锁的避免(银行家算法) 设置2张表: 记录已经分配给各进程的资源数; 记录各进程还需资源数。 设置3个向量: 系统资源总数E向量; 已分配资源数P向量; 系统剩余资源数A向量。 §4.3 死锁的避免(银行家算法) 执行步骤: 假设接受某一进程的资源请求,为此需修改向量P和A。 逐行检查还需资源表,是否有一个进程的行向量小于或等于剩余数向量A。如没有,则系统有死锁可能,算法终止。 如存在这种进程,则假定满足其全部分配,让进程完成,然后系统回收其全部资源,修改剩余数向量A和已分资源数向量P。 重复步骤2和步骤3,直到无法找到行向量小于等于A向量的进程。 检查是否每一个进程都能完成。如是,则该次分配假设成功,系统状态安全;反之,则系统状态不安全。 §4.3 死锁的避免(银行家算法) 举例3:现系统内有5个进程,资源情况如资源总数所示(磁带机
您可能关注的文档
- 餐饮行业的自身卫生管理和个人要求.ppt
- 餐饮行业调研报告二组.ppt
- 餐饮空间---火锅店的环境设计特点.ppt
- 餐饮类商家建筑及工程技术特殊要求.ppt
- 餐饮连锁经营策划.ppt
- 餐饮企业采购的原则、流程、方式方法.doc
- 餐饮企业成本管理之浅析.doc
- 餐饮企业的食品安全卫生操作规范及其案例分析.ppt
- 餐饮食品案件查处.ppt
- 餐饮食品原料采购管理(PPT-142页).ppt
- 中国国家标准 GB/Z 37551.300-2026海洋能 波浪能、潮流能及其他水流能转换装置 第300部分:河流能转换装置发电性能评估.pdf
- GB/T 44937.3-2025集成电路 电磁发射测量 第3部分:辐射发射测量 表面扫描法.pdf
- 中国国家标准 GB/T 44937.3-2025集成电路 电磁发射测量 第3部分:辐射发射测量 表面扫描法.pdf
- 《GB/T 44937.3-2025集成电路 电磁发射测量 第3部分:辐射发射测量 表面扫描法》.pdf
- 中国国家标准 GB/T 44937.1-2025集成电路 电磁发射测量 第1部分:通用条件和定义.pdf
- GB/T 44937.1-2025集成电路 电磁发射测量 第1部分:通用条件和定义.pdf
- 《GB/T 44937.1-2025集成电路 电磁发射测量 第1部分:通用条件和定义》.pdf
- 中国国家标准 GB/T 4937.37-2025半导体器件 机械和气候试验方法 第37部分:采用加速度计的板级跌落试验方法.pdf
- 《GB/T 4937.10-2025半导体器件 机械和气候试验方法 第10部分:机械冲击 器件和组件》.pdf
- 中国国家标准 GB/T 44937.2-2025集成电路 电磁发射测量 第2部分:辐射发射测量TEM小室和宽带TEM小室法.pdf
原创力文档

文档评论(0)