答案 6.ppt_第1页
答案 6.ppt_第2页
答案 6.ppt_第3页
答案 6.ppt_第4页
答案 6.ppt_第5页
已阅读5页,还剩12页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、1. 分配图化简:,第六章 死 锁,解:化简得:,有一个循环等待的圈,死锁。,2. 生产 消费问题中,两个P操作颠倒会造成死锁,那么将两个V操作颠倒是否也会造成死锁?为什么?,解:cobegin (初值 avail=i, mutex=1, full=0),P: P(avail); P(mutex); 送入缓冲 V(mutex); V(full); coend,C: P(full); P(mutex); 取缓冲 V(mutex); V(avail);, 颠倒两个P操作,则若先运行C,则在P(full)上 等待,再运行P,则在P(mutex)等待,这时, P, C 都等待而死锁;, 颠倒两个V,则

2、不会出现死锁。,3. 设两进程A,B各自按以下顺序使用P,V进行同步。,A: P(S1); P(S2); V(S2); V(S1); ,B: P(S2); P(S1); V(S1); V(S2); ,(1) 推进速度不同时可能引起的情况;,(2) 用产生死锁的4个必要条件分析上述情况产生或不产生死锁的原因。,解:(1) 当S1,S2 0时,无论进程推进速度如何,整个系统由于资源不足(无空闲的可用资源),使得P操作进程处于资源等待,而死锁。,(2) 当S1,S2 2时,不存在资源等待,不死锁。,(3) 当S1 = S2 =1时:,与推进速度有关:,(i) 先运行A: P(S1) B: P(S2)

3、 之后,无论怎么推进,以死锁(循环等待);,(ii) 若A,B前二个P操作推进速度不同,即AP(S1), P(S2)之后再执行B,则不会死锁。因为A,B进程有可能得到所有资源,而不必都占有等待(使A,B循环等待)。,4. 某系统中有六台打印机,N个进程共享打印机资源,每个进程要求两台,试问N取哪些值时,系统才不会发生死锁?,解:由题6可知,证:n个进程最多需要的资源之和小于6+n时,该系统无死锁,即2n6+n,n6。, n取值为1,2,3,4,5,另证:如下图所示:,当n=6时,最糟情况有:,每一进程已占有一个资源,还申请一个资源,此时死锁。,同理n6时系统也会出现死锁。,而n=5时,最糟情况下也会有,此时可化简为完全可化简图,不死锁。,同理1n5时也不死锁, n取值为1,2,3,4,5。,5. 用银行家算法判断下述每个状态是否安全。如果一个状态是安全的,说明所有进程是如何能够运行完毕的。如果一个状态是不安全的,说明为什么可能出现死锁。,解:,状态A是安全的,状态B是不安全的,目前又有2台可供分配,用户1, 2, 3都不能满足,不可运行。,6. 假设系统由相同类型的m个资源组成,系统有n个进程,每个进程至少请求一个资源,证明:当n个进程最多需要的资源之和小于m+n时,该系统无死锁。,解:,证明:假设当n个进程最多需要的资源之和

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论