湖南大学操作系统作业_第1页
湖南大学操作系统作业_第2页
湖南大学操作系统作业_第3页
湖南大学操作系统作业_第4页
全文预览已结束

下载本文档

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

文档简介

操作系统第二次作业第七章Considerthedeadlocksituationthatcouldoccurinthedining-philosophersproblemwhenthephilosophersobtainthechopsticksoneatatime.Discusshowthefournecessaryconditionsfordeadlockindeedholdinthissetting.Discusshowdeadlockscouldbeavoidedbyeliminatinganyoneofthefourconditions.考虑哲学家进餐问题中可能出现死锁的情况,即当哲学家一次拿一只筷子时,讨论4个死锁必要条件的存在性,讨论如何通过避免四种情况之一来消除死锁答死锁的4个必要条件为:互斥、占有等待、非抢占、循环等待考虑互斥性,A哲学家拿了筷子C1后该C1筷子在未被释放资源前无法被其他哲学家B实现。哲学家必须先占有左手筷子C2,而C2可能为其他哲学家所占有。这个问题可以通过设置哲学家在申请更多筷子筷子,即预先静态分配。哲学家占有筷子C1时不能被B哲学家抢占。这个问题其现已拥有的筷子均可被抢占,即自己剥夺自己。考虑循环等待,出现循环等待的可能性为:每个哲学家同时只拥有左手请顺序由低到高来实现。Considerasystemconsistingoffourresourcesofthesametypethataresharedbythreeprocesses,eachofwhichneedsatmosttwothatthesystemisdeadlock-free.考虑一个由4个共享进程,每个需要2个该资源的系统,试证明这个系统不会出现死锁答:这个问题比较简单,“抽屉原理”表明,4个资源分配给3个进程,则至少有一个进程分配到2会释放已分配的24个资源分配给2个进程,不会出现死锁。Considerasystemconsistingofmresourcesofthesametype,beingsharedbynprocesses.Resourcescanberequestedandreleasedbyprocessesonlyoneatatime.Showthatthesystemisdeadlockfreeifthefollowingtwoconditionshold:a.Themaximumneedofeachprocessisbetween1andmresourcesb.Thesumofallmaximumneedsislessthanm+n考虑一个系统由m个同种资源被n个进程共享,某一资源一次只能被请求或释放,证明这个系统如满足下面2个条件则不会死锁A每个进程最大需求资源为1-m之间B最大资源需求之和<m+n答:每个进程占有资源Allocation[]并申请资源Need[],如果发生了死锁,说明m个资源全部被分配,即而由题设,而Max[i]=Allocation[i]+Need[i],这说明,即这说明nNeed[i]=0,释放资源的数目为1~m果再在某时刻出现的情况,一样可以通过这个过程推导,得到某进程不再需要申请资源,进而说明该系统不会死锁。Considerthedining-philosophersproblemwherethechopsticksareplacedatthecenterofthetableandanytwoofthemcouldbeusedbyaphilosopher.Assumethatrequestsforchopsticksaremadeoneatatime.Describeasimplerulefordeterminingwhetheraparticularrequestcouldbesatisfiedwithoutcausingdeadlockgiventhecurrentallocationofchopstickstophilosophers.考虑哲学家进餐问题,如果所有筷子放在桌子中间,且一个哲学家可以用任意两只筷子,假设一次只能请求一只筷子。描述一个简单的规则来确定在当前哲学家进餐的筷子分配情况下,是否一个特殊请求可以在不会触发死锁的情况下完成答:这个题目的描述很模糊…子的时候,判断两个条件条件有并等待)条件2:是否桌上只剩一根筷子子只能分配给申请第二根筷子的哲学家,而不能分配给申请第一根筷子的哲学家)如果以上两个条件均为是,则不给该哲学家分配筷子,否则,分配给该哲学家筷子Considerthefollowingsnapshotofasystem:AllocationABCDAnswerthefollowingquestionsusingthebanker’salgorithm:a.WhatisthecontentofthematrixNeedb.Isthesysteminasafestatec.IfarequestfromprocessP1arrivesfor(0,4,2,0),cantherequestbegrantedimmediately使用银行家算法回答下列问题ANeed矩阵的内容B这是个安全状态的系统吗CP1的某个请求需要[0420],这个需求能立即被满足吗答:(A)Need矩阵的内容,公式为Need[i]=Max[i]-Allocation[i],所以把Max矩阵和Allocation矩阵各项对应相减即可得到Need矩阵的内容。(B)安全状态判断:首先设置所有进程finish=false,从第一个finish=falseNeed矩阵全小于等于Available矩阵,则说明该进程可以得到资源分配,系统可以将资源分配给该进程并等待进程结束释放资源,同样将其Allocation加到Available矩阵上。将该进程finish设置为true。下面开始分析:P0Need矩阵全为finish设置为Allocation加到AvailableAvailable矩阵为[1532]P1进程,Need矩阵不小于Available矩阵,故不分配资源,考虑下一进程P2进程,其need矩阵全小于等于Available矩阵,将该进程finish设置为Allocation加到AvailableAvailable矩阵为[2886]下面两种策略均可:一是从头循环,第二种是继续按顺序判断,我在此处采取第二种。P3进程,其need矩阵全小于等于Available矩阵,将该进程finish设置为Allocation加到AvailableAvailable矩阵为[214118]P4进程,其need矩阵全小于等于Available矩阵,将该进程finish设置为Allocation加到AvailableAvailable矩阵为[2141212]P1进程,其need矩阵全小于等于Available矩阵,将该进程finish设置为Allocation加到AvailableAvailable矩阵为[3141212]最终所有进程的finish均为true,说明系统安全(C)资源请求算法:如果request[i]<need[i],再判断request[i]<avaiable,如果可以的话,更新矩阵的值为:Available-=request[i]allocation[i]+=request[i],need[i]-=request[i],然后再重新进行一次安全性判断,如果仍安全,说明可以立即分配,反之则不能立即分配request下面用这种方法来判断能否立即分配给request首先request[1]<need[1],且request[1]<avaiable,分配给P1资源,并修正矩阵值当前available=[1100],need[1]=[1330],allocation[1]=[1420]下面按B的方法判断当前安全性首先选need矩阵全小于等于Availablefinish设置为Allocation加到AvailableAvailable矩阵为[1112]P1need矩阵全小于等于Available矩阵,将该进程finish设置为Allocation加到Available矩阵上,此时Available矩阵为[2466]选择P3,其need矩阵全小于等于Available矩阵,将该进程finish设置为Allocation加到AvailableAvailable矩阵为[21098]选择P4,其need矩阵全小于等于Av

温馨提示

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

最新文档

评论

0/150

提交评论