- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
死锁、系统安全课件
9.1 死锁概述 9.1 死锁概述 一组进程中,每个进程都无限等待被该组进程中另一进程所占有的资源,因而永远无法得到的资源,这种现象称为进程死锁,这一组进程就称为死锁进程。 9.1.2 资源分配图 9.1.3 产生死锁的必要条件 9.1.3 产生死锁的必要条件 9.2 死锁的预防、避免、检测与恢复 9.2.1 死锁预防 9.2 死锁的预防、避免、检测与恢复 9.2.1 死锁预防 9.2.3 死锁检测与恢复 9.2.3 死锁检测与恢复 9.3 系统的安全与保护 9.3.3 具体的安全防护措施 1. 每种类型一个资源的死锁检测 所谓“死锁检测”,即系统允许产生死锁,操作系统周期性地在进程和资源之间检测是否出现了循环等待的情形。每当检测到这种情形时,就认为可能会出现死锁,于是采取措施对系统进行恢复。 . 每种类型的资源只有一个可用单元供分配时,能够通过绘制当前的资源分配图,来检测在某些进程间是否已经构成了循环等待。 比如系统有A~G共7个进程,6个类型的单体资源r?~?w。当前资源所属关系为:进程A已得到资源r,需要资源s;进程B不占有任何资源,需要资源t;进程C不占有任何资源,需要资源s;进程D已得到资源u和s,需要资源t;进程E已得到资源t,需要资源v;进程F已得到资源w,需要资源s;进程G已得到资源v,需要资源u。 . r A s C D F w u G t B E v (a) D u G t E v (b) 也可通过建立“资源分配”表和“进程等待”表,来检测系统对资源的分配是否构成环路。 . A B t s (d) C v 资源 占用的进程 进程 等待的资源 r A s C t B u B v A A t 资源分配表 进程等待表 进程 等待的资源 A t B C s v 进程等待表 (a) (b) (c) . 假定系统有3个进程A~C,有同类型的资源5个r?~v。在某一时刻,资源的分配情况如图(a)所示。这些分配都能够立即满足,不会出现进程等待资源的情形。 . 这时A提出申请t。由于t已分出去,让A等待会形成环路死锁吗?为此,通过t去查资源分配表,看谁占用了资源t。从“资源分配”表知t分配给了B,而B现在并不等待任何资源,因此,让A等待t不会构成环路。于是把它填入“进程等待”表中,如图(b)所示。 . 随后,B提出对s的请求。反复查看“资源分配”表和“进程等待”表,没有出现循环等待,因此又把B等待s的情况记录在“进程等待”表中,如图(c)所示。 . C提出申请资源v。形成环路,出现死锁,并可知这个死锁涉及到进程A、B、C,以及资源s、t、v。如图(d)所示。 向量R(Resource) 向量R=(R1,R2,…,Rm),表示系统中有m种资源类型,R1是类型1的资源量,R2是类型2的资源量,等等。即R是系统中现有的各类资源数。 2. 每种类型多个资源的死锁检测 在每种类型有多个资源时的死锁检测,涉及如下的向量和矩阵: . (1) (2) 向量V(Available) 向量A=(A1,A2,…,Am)表示系统中m类资源当前可用的数量,A1是类型1的可分配量,A2是类型2的可分配量,等等。 (3) 矩阵A(Allocation) 该矩阵的元素Aij(1≤i≤n,1≤j≤m),表示进程i当前已拥有的资源j的数目。因此这是“已分配资源矩阵”。 (4) 矩阵Q(Request) 该矩阵的元素Qij(1≤i≤n,1≤j≤m),表示进程i当前还需要的资源j的数目。因此这是“还需要资源矩阵”。 . 设置一个临时向量W,初始时等于向量V。死锁检测算法的步骤如下: (1) 在矩阵Q里,找一个没被标记的进程Pi,它在Q里对应的第i行小于等于向量W。这里定义:向量X和向量Y有关系X≤Y,当且仅当Xi≤Yi(1≤j≤m)。 (2) 若存在这样的行,那为Pi做上标记,表示它完成;再把矩阵A中第i行与向量W相加(即对1≤j≤m,令Wi=Wi+Aij),表示把进程Pi的资源收回,以供其他进程使用。 系统有3个进程和4种资源,当前向量R和V以及矩阵A和Q分别如图所示。试用每种类型多个资源的死锁检测算法,判断系统是否死锁。 每当有资源申请时就检测,这样能够尽早地发现死锁的存在。 CPU将在检测上花费大量的时间。 (3)
您可能关注的文档
最近下载
- 压力检测及仪表.ppt
- DGTJ08-202-2020钻孔灌注桩施工规程 上海市.pptx VIP
- 光伏发电站场内及并网安全技术白皮书.pdf
- API SPEC 4F 钻井和修井井架、底座规范1995.doc VIP
- 2023年09月浙江温州市平阳县部分事业单位面向高校毕业生退役士兵公开招聘6人笔试历年难易错点考题荟萃附带答案详解_1.docx VIP
- 《中华人民共和国安全生产法》培训解读课件.pptx VIP
- 《中华人民共和国安全生产法》解读与培训.pptx VIP
- 电子商务专业课程体系构建与实践教学方案.docx VIP
- 《中华人民共和国矿山安全法实施条例》深度解读课件.pptx VIP
- 【温州】2024年浙江温州平阳县部分事业单位面向高校毕业生退役士兵招聘工作人员6人笔试历年典型考题及考点剖析附带答案详解.docx VIP
文档评论(0)