操作系统原理 ch4 死锁.ppt
上传人:qw****27 上传时间:2024-09-12 格式:PPT 页数:69 大小:272KB 金币:15 举报 版权申诉
预览加载中,请您耐心等待几秒...

操作系统原理 ch4 死锁.ppt

操作系统原理ch4死锁.ppt

预览

免费试读已结束,剩余 59 页请下载文档后查看

15 金币

下载此文档

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

第四章死锁死锁的概念死锁举例死锁的定义死锁的起因判断参与死锁的进程最少是两个(两个以上进程才会出现死锁)参与死锁的进程至少有两个已经占有资源参与死锁的所有进程都在等待资源参与死锁的进程是当前系统中所有进程的子集注:如果死锁发生,会浪费大量系统资源,甚至导致系统崩溃产生死锁的必要条件处理死锁的基本方法死锁的预防和避免死锁的预防破坏部分分配条件破坏不可剥夺条件破坏环路条件系统的安全状态安全状态安全状态举例由安全状态向不安全状态的转换系统进入不安全状态利用银行家算法避免死锁例银行家算法描述(3)假设系统分配了资源,则有:Available:=Available-Request[i];Allocation[i]:=Allocation[i]+Request[i];Need[i]:=Need[i]-Request[i](4)执行安全性算法,若系统新状态是安全的,则分配完成,若系统新状态是不安全的,则恢复原状态,进程等待安全性算法安全性算法步骤(3)Work:=Work+Allocation[i];Finish[i]:=true;转(2)(4)若对所有i,Finish[i]=true,则系统处于安全状态,否则处于不安全状态T0时刻的安全性检查例1:T0时刻P1请求资源执行安全性算法例2:P4请求资源例3:P0请求资源进行安全性检查练习:有三类资源A(17)、B(5)、C(20)。有5个进程P1—P5。T0时刻系统状态如下:问(1)、T0时刻是否为安全状态,给出安全序列。(2)、T0时刻,P2:Request(0,3,4),能否分配,为什么?(3)、在(2)的基础上P4:Request(2,0,1),能否分配,为什么?(4)、在(3)的基础上P1:Request(0,2,0),能否分配,为什么?解:(1)T0时刻得出安全系列(2)P2:Request(0,3,4)(3)P4:Request(2,0,1)(4)P1:Request(0,2,0)死锁检测:允许死锁发生,操作系统不断监视系统进展情况,判断死锁是否发生一旦死锁发生则采取专门的措施,解除死锁并以最小的代价恢复操作系统运行检测时机:当进程等待时检测死锁(其缺点是系统的开销大)定时检测系统资源利用率下降时检测死锁死锁的解除资源分配图例死锁定理资源分配图化简有环有死锁有环无死锁有安全系列如下例:习题1问题:此状态是否为安全状态,如果是,则找出安全序列在此基础上P2申请(1,0,2)能否分配?为什么?P5申请(3,3,0)能否分配?为什么?P1申请(0,2,0)能否分配?为什么?习题2解