广西大学:《计算机操作系统》课程教学资源(PPT课件)第4章 死锁处理

第4章死锁处理 本章知识点: 4.1死锁问题概述 4.2死锁处理 43哲学家用餐问题
1 第4章 死锁处理 本章知识点: • 4.1 死锁问题概述 • 4.2 死锁处理 • 4.3 哲学家用餐问题

41死锁问题概述 死锁是由于进程间相互竞争系统资源或 通信而引起的一种阻塞现象。如果操作 系统不采取特别的措施,这种阻塞将永 远存在,最终可能导致整个系统处于瘫 痪状态。因此,死锁问题是操作系统中 需要考虑的重要问题
2 4.1 死锁问题概述 死锁是由于进程间相互竞争系统资源或 通信而引起的一种阻塞现象。如果操作 系统不采取特别的措施,这种阻塞将永 远存在,最终可能导致整个系统处于瘫 痪状态。因此,死锁问题是操作系统中 需要考虑的重要问题

4.1.1可重用资源 下面是一个使用可重用资源而发生死锁的例子。两个 进程P1和P2竞争必须互斥访问的磁盘文件D和磁带机T, 程序重复地执行以下操作: repeat repeat Request (D) Request (t) Re Request (D) Release(t) Release(d) Release (d) Release (t) forever forever
3 4.1.1 可重用资源 下面是一个使用可重用资源而发生死锁的例子。两个 进程P1和P2竞争必须互斥访问的磁盘文件D和磁带机T, 程序重复地执行以下操作: P1 P2 repeat repeat … … Request(D); Request(T); … … Request(T); Request(D); … … Release(T); Release(D); … … Release(D); Release(T); … … forever forever

4.1.2消耗型资源 下面是使用消耗型瓷源而发生死锁的例子: P Receive(p2, M): Receive(P1,Q); Send( Po, n Send (P, r 如果 Receive阻塞就会发生死锁
4 4.1.2 消耗型资源 下面是使用消耗型资源而发生死锁的例子: P1 P2 … … Receive(P2 ,M); Receive(P1 ,Q); … … Send(P2 ,N); Send(P1 ,R); 如果Receive阻塞就会发生死锁

413产生死锁的条件 系统产生死锁有四个必要条件: 互斥 占用并等待 非强占 循环等待
5 4.1.3 产生死锁的条件 系统产生死锁有四个必要条件: • 互斥。 • 占用并等待 • 非强占 • 循环等待

4.2死锁处理 为了使系统不发生死锁,必须设法破坏 产生死锁的四个必要条件之一,或者允许 死锁产生,但当死锁发生时能检测出死 锁,并有能力实现恢复
6 4.2 死锁处理 为了使系统不发生死锁,必须设法破坏 产生死锁的四个必要条件之一,或者允许 死锁产生,但当死锁发生时能检测出死 锁,并有能力实现恢复

4.2.1死锁预防 死锁预防是设法至少破坏产生死锁的必 要条件之一(除互斥条件之外),从而 消除产生死锁的任何可能性,严格地防 止死锁的出现。但方法过于保守,对资 源限制严格,使资源利用率和进程执行 效率大大降低,它是以降低处理速度作 为代价的
7 4.2.1 死锁预防 死锁预防是设法至少破坏产生死锁的必 要条件之一(除互斥条件之外),从而 消除产生死锁的任何可能性,严格地防 止死锁的出现。但方法过于保守,对资 源限制严格,使资源利用率和进程执行 效率大大降低,它是以降低处理速度作 为代价的

42.1死锁预防 1.互斥 可用第3章介绍的解决互斥问题的思想和 技术来解决有关由于互斥条件不满足而 产生的死锁问题
8 4.2.1 死锁预防 1. 互斥 可用第3章介绍的解决互斥问题的思想和 技术来解决有关由于互斥条件不满足而 产生的死锁问题

421死锁预防 2.破坏“占用并等待”条件 采用资源的静态预分配策略,一次申请所有的资 原 优点: 简单安全,易于实施; 在进程的活动较单一时性能好: 无须抢占。 缺点: ●资源利用率低; 启动进程慢,效率低; 有“饥饿”现象存在
9 4.2.1 死锁预防 2. 破坏“占用并等待”条件 采用资源的静态预分配策略,一次申请所有的资 源。 优点: •简单安全,易于实施; •在进程的活动较单一时性能好; •无须抢占。 缺点: •资源利用率低; • 启动进程慢,效率低; • 有“饥饿”现象存在

42.1死锁预防 3.破坏“非抢占”条件 方法1:若拥有某种资源的进程在申请其他资源时遭到 拒绝,则它必须释放其占用的资源,以后若有必要可 再次申请上述资源。方法2:当一进程申请的资源正被 其他进程占用时,可通过操作系统抢占该资源,此方 法在两个进程优先级相同时,不能防止死锁。 优点: 对状态容易保留和恢复的资源较为方便 缺点: ·实现困难,恢复现场代价高: ·导致过多的不必要抢占 易导致循环重启
10 4.2.1 死锁预防 3. 破坏“非抢占”条件 方法1:若拥有某种资源的进程在申请其他资源时遭到 拒绝,则它必须释放其占用的资源,以后若有必要可 再次申请上述资源。方法2:当一进程申请的资源正被 其他进程占用时,可通过操作系统抢占该资源,此方 法在两个进程优先级相同时,不能防止死锁。 优点: •对状态容易保留和恢复的资源较为方便。 缺点: •实现困难,恢复现场代价高; • 导致过多的不必要抢占; • 易导致循环重启
按次数下载不扣除下载券;
注册用户24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
- 广西大学:《计算机操作系统》课程教学资源(PPT课件)第3章 并发控制——互斥与同步.ppt
- 广西大学:《计算机操作系统》课程教学资源(PPT课件)第2章 进程描述与控制.ppt
- 广西大学:《计算机操作系统》课程教学资源(PPT课件)第1章 操作系统概论.ppt
- 广西大学:《计算机操作系统》课程教学资源(PPT课件)内容简介(董明刚).ppt
- 广西大学:《计算机操作系统》课程教学资源(PPT课件)第8章 文件管理.ppt
- 广西大学:《计算机操作系统》课程教学资源(PPT课件)第7章 I/O设备管理.ppt
- 清华大学:《文献检索》Ei_web.doc
- 清华大学:《文献检索》Sci_web_work.doc
- 清华大学:《文献检索》课程教学资源(PPT课件)5、学术资源的利用(孙平).ppt
- 清华大学:《文献检索》课程教学资源(PPT课件)4、计算机检索方法(SCI_Web).ppt
- 清华大学:《文献检索》课程教学资源(PPT课件)3、计算机检索方法(Ei_Web).ppt
- 清华大学:《文献检索》课程教学资源(PPT课件)2、计算机信息检索.ppt
- 清华大学:《文献检索》课程教学资源(PPT课件)1、检索基础知识.ppt
- 清华大学:《文献检索》Practice1_work.doc
- 《计算机网络管理与安全技术》课程教学资源(PPT课件)第6章 网络安全技术(李艇).ppt
- 《计算机网络管理与安全技术》课程教学资源(PPT课件)第5章 网络安全基础(李艇).ppt
- 《计算机网络管理与安全技术》课程教学资源(PPT课件)第4章 网络管理系统(李艇).ppt
- 《计算机网络管理与安全技术》课程教学资源(PPT课件)第3章 SNMP通信模型与RMON规范(李艇).ppt
- 《计算机网络管理与安全技术》课程教学资源(PPT课件)第2章 管理信息结构与管理信息库(李艇).ppt
- 《计算机网络管理与安全技术》课程教学资源(PPT课件)第1章 网络管理概述(李艇).ppt
- 广西大学:《计算机操作系统》课程教学资源(PPT课件)第5章 内存管理.ppt
- Windows 数据恢复原理与方法 - 提示信息.doc
- Windows 数据恢复原理与方法.ppt
- 浙江大学:《数据库系统管理与维护》课程教学资源(PPT课件讲稿)第三章 SQL语言基础.ppt
- 浙江大学:《数据库系统管理与维护》课程教学资源(PPT课件讲稿)第十二章 管理存储过程.ppt
- 浙江大学:《数据库系统管理与维护》课程教学资源(PPT课件讲稿)第十三章 SQL Server数据转换.ppt
- 浙江大学:《数据库系统管理与维护》课程教学资源(PPT课件讲稿)第十一章 管理触发器.ppt
- 浙江大学:《数据库系统管理与维护》课程教学资源(PPT课件讲稿)第十章 管理索引(耿建玲).ppt
- 浙江大学:《数据库系统管理与维护》课程教学资源(PPT课件讲稿)第四章 T-SQL程序设计基础.ppt
- 浙江大学:《数据库系统管理与维护》课程教学资源(PPT课件讲稿)第五章 管理事务和管理数据库.ppt
- 浙江大学:《数据库系统管理与维护》课程教学资源(PPT课件讲稿)第一章 SQL Server关系数据库概述.ppt
- 浙江大学:《数据库系统管理与维护》课程教学资源(PPT课件讲稿)第八章 SQL Server权限管理.ppt
- 浙江大学:《数据库系统管理与维护》课程教学资源(PPT课件讲稿)第二章 数据库基础(耿建玲).ppt
- 浙江大学:《数据库系统管理与维护》课程教学资源(PPT课件讲稿)第九章 数据库备份与恢复.ppt
- 浙江大学:《数据库系统管理与维护》课程教学资源(PPT课件讲稿)第六章 管理数据库表.ppt
- 浙江大学:《数据库系统管理与维护》课程教学资源(PPT课件讲稿)第七章 管理视图.ppt
- 《java认证》课程简介.doc
- 《java认证》第五章 对象和类.doc
- 《java认证》第六章 高级语言特征.doc
- 《java认证》第七章 异常.doc