基于进程资源图PRG的进程死锁检测算法.doc

基于进程资源图PRG的进程死锁检测算法.doc

  1. 1、本文档共7页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
基于进程资源图PRG的进程死锁检测算法

基于进程资源图PRG的进程死锁检测算法 第23卷第9期 2006年9月 计算机应用与软件 ComputerApplicationsandSoftware Vo1.23,No.9 Sep.2006 基于进程资源图PRG的进程死锁检测算法 程昌品陈强陈文伟 (广东教育学院计算机科学系广东广州510303) 摘要给出了基于进程资源图的进程非阻塞的判定定理,进而给出了基于进程资源图的死锁检测算法,该算法提供了一种公式 化的验算方法,可操作性强. 关键词进程死锁检测算法 TESTALGoIUTHMoFPRoCESSDEADLoCKBASED oNPRoCESSRESoURCEDIAGRAM ChengChangpinChenQiangChenWenwei (DepartmentofComputerScience,GuangdongInstituteofEducation,GuangzhouGuangdong510303,China) AbstractThispapergivesanonblockdecisiontheoremofprocessthatbasedonprocessresourcediagram,andgive~atestalgorithmof deadlockthatbasedontheprocessresourcediagram.Thealgorithmofferscheckingcomputationsmethodofformulation,itsoperabilityisbet? ter. KeywordsProcessDeadlockTestalgorithm 1引言 在操作系统环境下,死锁是多个进程竞争资源而形成的一 种僵持局面.我们平常说的死锁一般指进程死锁,它至少涉 及两个进程.操作系统中虽然有死锁进程出现,但系统中其他 进程仍然正常运行.如果系统中所有进程都进入死锁,即没有 一 个进程能前进的话,称为系统死锁. 产生死锁的根本原因有二:一是系统内的资源数量不足,因 为倘若资源数量无限的话,进程之间就不会发生资源竞争,当然 不会形成互不相让的僵持局面.二是进程推进的顺序不当而导 致死锁. 显然,任何一个计算机系统的资源都是有限的,资源竞争是 不可避免的.换句话说,死锁的根本原因一是固有的,进程的特 性之一就是异步性,因此无法预知各进程的推进速度,也就无法 控制进程之间的推进顺序;死锁的根本原因二也是固有的,本文 仅研究由于系统资源不足而引起的死锁及死锁检测问题.在文 献[1,2,4]中给出了一种基于进程资源图的死锁检测的文字描 述算法,但文字描述冗长,思路不够清晰直观;下面对此进行改 进,给出的基于进程资源图的死锁检测算法操作性强,检测思路 简洁明了. 2系统状态与进程资源图PRG 死锁本身是一种与时间有关的错误,研究系统的瞬间状态, 有利于锵决死锁问题;由于操作系统中与死锁有关的因素通常 只包括进程,资源及进程对于资源的操作(即请求,获得和释 放),所以操作系统的状态可描述为系统中各种资源的分配状 态.该系统状态应该是而且只能是由进程对资源的请求,获得 或释放而改变.在某一系统状态下,只要进程不是处于阻塞状 态,它就可以改变系统状态.反之,如果一个进程不能改变系统 的状态,则该进程在此状态下是阻塞的. 下面给出进程资源图的形式化 定义. R. 定义1令PRG:(Ⅳ,E),顶点Ⅳ = PUR,P={Pl,…,P},R={Rl,…, },边E=lt;P.,尺,gt;或lt;尺,Pfgt;,这 里P,P为进程名;R一,R为 图1进程资源图PRG 资源(类)名;lt;P,尺,gt;表示存在1条从顶点P到顶点尺的有 向边,意思是进程P申请尺类资源中的1个资源;lt;尺,,P.gt;表 示从顶点尺,到顶点P有1条有向边,意思是尺类中1个资源 已分配给进程P;lt;尺,Pigt;简称分配边,lt;P,尺,gt;简称请求 边;用方框代表资源,用圆代表进程,这样得到的图称为进程资 源图,如图1所示.则有: P={P】,P2I,R:{R】,R2I E:{lt;P】,R】gt;,lt;P】,R2gt;,lt;P2,R2gt;,lt;R】,P】gt;, lt;Rl,P2gt;,lt;R2,Plgt;,lt;R2,P2gt;} 若资源尺,有个单位,并用I(尺,P)l表示资源尺分配给 进程P的单位数,用l(P,)l表示进程P请求资源尺,的单位 数,则Wl=2,W2=3,l(Rl,P】)l=1,l(尺】,P2)l=1,l(R2,P】) l=1,l(R2,P2)l:1,l(P】,R1)l=1,l(Pl,R2)l=1, I(P2,R)I.0,I(P2,R2)I=1. 收稿日期:2005—09—19.本文受广东省普通高校自然科学研究项 目(

文档评论(0)

133****9031 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档