《操作系统死锁》PPT课件

《操作系统死锁》PPT课件

ID:36876027

大小:1021.10 KB

页数:70页

时间:2019-05-10

《操作系统死锁》PPT课件_第1页
《操作系统死锁》PPT课件_第2页
《操作系统死锁》PPT课件_第3页
《操作系统死锁》PPT课件_第4页
《操作系统死锁》PPT课件_第5页
资源描述:

《《操作系统死锁》PPT课件》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第四章死锁死锁的概念死锁的预防和避免死锁的检测和解除1死锁的概念死锁举例产生死锁的原因产生死锁的必要条件处理死锁的基本方法2死锁举例(1)两个小孩在一起玩耍,一个在玩皮球,另一个玩自动步枪如果这两个小孩都要对方手中的玩具,而又不肯先放掉自己拿着的玩具,这时就发生了僵持局面。3死锁举例(2)设系统有一台打印机和一台扫描仪,进程P1、P2并发执行,在某时刻T,进程P1和P2分别占用了打印机和扫描仪。在时刻T1(T1>T),P1又要申请扫描仪,但由于扫描仪被P2占用,P1只有等待。在时刻T2(T2>T),P2又申请打印机,但由于打印机被P1占用,P2只有等待。如此两进程均不

2、能执行完成。称这种现象为死锁。4在生产者-消费者问题中将生产者进程的两个P操作颠倒时会发生死锁。将消费者进程的两个P操作颠倒时也会发生死锁。死锁举例(3)5死锁的定义一组进程中,两个或多个进程都无限期地等待永远不会发生的条件,我们称此系统处于死锁状态。死锁(Deadlock)饥饿(Starvation)6死锁的起因根本原因:系统能够提供的资源个数比要求该资源的进程所需的资源个数少。7判断1、参与死锁的所有进程都占有资源错误:有可能有的进程在等待其他进程释放资源2、参与死锁的所有进程均正在等待资源错误:有可能一个占有资源3、参与死锁的所有进程中至少有两个进程占有资源错误

3、4、参与死锁的进程至少有两个正确8关于死锁的一些结论参与死锁的进程最少是两个(两个以上进程才会出现死锁)参与死锁的进程至少有两个已经占有资源参与死锁的所有进程都在等待资源参与死锁的进程是当前系统中所有进程的子集注:如果死锁发生,会浪费大量系统资源,甚至导致系统崩溃9产生死锁的必要条件四个必要条件(重点)互斥条件:涉及的资源是非共享的。不剥夺条件:不能强行剥夺进程拥有的资源。部分分配条件:进程在等待一新资源时继续占有已分配的资源。环路条件:存在一种进程的循环链,链中的每一个进程已获得的资源同时被链中的下一个进程所请求。10处理死锁的基本方法1、预防死锁:通过设置某些限制

4、条件,去破坏死锁四个必要条件中的一个或多个,来防止死锁。较易实现,广泛使用,但由于所施加的限制往往太严格,可能导致系统资源利用率和系统吞吐量的降低。11处理死锁的基本方法(续)2、避免死锁:不事先采取限制去破坏产生死锁的条件,而是在资源的动态分配过程中,用某种方法去防止系统进入不安全状态,从而避免死锁的发生。实现较难,只需要较弱的限制条件,可获得较高的资源利用率和系统吞吐量。12处理死锁的基本方法(续)3、检测死锁:事先并不采取任何限制,也不检查系统是否进入不安全区,允许死锁发生,但可通过检测机构及时检测出死锁的发生,并精确确定与死锁有关的进程和资源,然后采取适当措施

5、,将系统中已发生的死锁清除掉13处理死锁的基本方法(续)4、解除死锁:与检测死锁相配套,用于将进程从死锁状态解脱出来。常用的方法是撤消或挂起一些进程。以回收一些资源,再将它们分配给处于阻塞状态的进程,使之转为就绪状态。实现难度大,但可获得较好的资源利用率和系统吞吐量。14死锁的预防和避免死锁的预防系统的安全状态利用银行家算法避免死锁15死锁的预防在系统设计时确定资源分配算法,保证不发生死锁具体的做法是破坏产生死锁的四个必要条件之一16破坏部分分配条件系统要求所有进程要一次性地申请在整个运行过程中所需的全部资源。若系统有足够资源则完全分配。17优点:简单、易于实现且安全

6、。缺点:一个用户在作业运行之前可能提不出他的作业将要使用的全部设备。用户作业必须等待,直到所有资源满足才能运行。实际上某些资源可能要到运行后期才会用到。一个作业运行期间,对某些设备的使用时间很短,甚至不会用到。如:当用户作业出错时才需要打印机输出错误信息,但采用静态分配法必须把打印机分配给该作业,并长期占用。采用该方法对系统来说是非常浪费的。破坏部分分配条件—方法分析18破坏不可剥夺条件一个已拥有资源的进程,若它再提出新资源要求而不能立即得到满足时,它必须释放已经拥有的所有资源。以后需要时再重新申请。实现复杂、要付出很大的代价。19破坏环路条件系统中的所有资源都有一个

7、确定的唯一号码,所有分配请求必须以序号上升的次序进行。例如:系统中有下列设备:输入机(1),打印机(2),穿孔机(3),磁带机(4),磁盘(5)。有一进程要先后使用输入机、磁盘、打印机,则它申请设备时要按输入机、打印机、磁盘的顺序申请。20破坏环路条件—方法分析优点:同前两法相比,其资源利用率和系统吞吐量有较明显的改善。缺点:进程实际需要资源的顺序不一定与资源的编号一致,因此仍会造成资源浪费。21系统的安全状态死锁避免定义:在系统运行过程中,对进程发出的每一个系统能够满足的资源申请进行动态检查,并根据检查结果决定是否分配资源,若分配后系统可能发生死锁

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。