[发明专利]一种死锁检测方法及装置在审
申请号: | 201310732689.2 | 申请日: | 2013-12-26 |
公开(公告)号: | CN103761182A | 公开(公告)日: | 2014-04-30 |
发明(设计)人: | 陈凯 | 申请(专利权)人: | 上海华为技术有限公司 |
主分类号: | G06F11/36 | 分类号: | G06F11/36;G06F9/46 |
代理公司: | 深圳市深佳知识产权代理事务所(普通合伙) 44285 | 代理人: | 胡丽萍 |
地址: | 200121 *** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 死锁 检测 方法 装置 | ||
1.一种死锁检测装置,其特征在于,包括:
储存单元,用于储存应用程序的资源锁的使用信息,所述使用信息中包括资源锁的占用信息和/或等待信息,及所述资源锁的时间信息;
信息获取单元,用于如果所述储存单元中储存的资源锁是互斥锁,且所述资源锁的操作时间大于或等于预置时间,则获取所述资源锁的占用信息和/或等待信息;所述资源锁的操作时间是根据所述资源锁的时间信息得到的;
锁判断单元,用于根据所述信息获取单元获取的占用信息和/或等待信息判断所述资源锁是否为死锁;
死锁信息输出单元,用于根据所述锁判断单元的判断结果,输出所述资源锁为死锁的信息。
2.如权利要求1所述的装置,其特征在于,还包括:
信息记录单元,用于当应用程序的线程/进程操作所述资源锁时,将操作的所述资源锁的使用信息记录到所述储存单元中。
3.如权利要求2所述的装置,其特征在于,所述信息记录单元,具体包括:
等待记录单元,用于如果应用程序的线程/进程申请所述资源锁对应资源时,将等待所述资源锁的线程/进程的信息和等待时间记录到所述储存单元中;
占用记录单元,用于如果申请所述资源锁对应资源成功时,删除所述储存单元中等待所述资源锁的线程/进程的信息和等待时间,并将占用所述资源锁的线程/进程的信息和占用时间记录到所述储存单元中;
释放记录单元,用于如果释放所述资源锁对应资源时,删除所述储存单元中占用所述资源锁的线程/进程的信息和占用时间。
4.如权利要求2所述的装置,其特征在于,还包括:
调用单元,用于调用系统通用库中的锁操作函数,对所述资源锁对应资源进行操作。
5.如权利要求1至4任一项所述的装置,其特征在于,所述锁判断单元具体包括如下至少一个判断单元:第一判断单元、第二判断单元、第三判断单元和第四判断单元,其中:
第一判断单元,用于如果第一线程/进程占用第二线程/进程所等待的资源锁,且所述第二线程/进程占用所述第一线程/进程占用的资源锁,则确定第一线程/进程和第二线程/进程占用的资源锁为死锁;
第二判断单元,用于如果所述第一线程/进程占用执行某项操作的部分资源锁,所述第二线程/进程占用执行所述某项操作的另一部分资源锁,则确定所述部分资源锁和所述另一部分资源锁为死锁;
第三判断单元,用于如果第一线程/进程等待第二线程/进程所占用的资源锁,第二线程/进程等待第三线程/进程所占用的资源锁,第三线程/进程等待第一线程/进程所占用的资源锁,则确定所述第一线程/进程、第二线程/进程和第三线程/进程所占用的资源锁为死锁;
第四判断单元,用于如果第一线程/进程占用某一资源锁的时间超过预置的占用时间,则确定所述第一线程/进程的占用的资源锁为死锁。
6.如权利要求1至4任一项所述的装置,其特征在于,还包括:
释放单元,用于如果所述死锁对应的线程/进程退出时,释放所述死锁对应的资源。
7.一种死锁检测方法,其特征在于,包括:
如果死锁检测装置中储存的资源锁是互斥锁,且所述资源锁的操作时间大于或等于预置时间,则获取所述资源锁的占用信息和/或等待信息;
根据所述获取的占用信息和/或等待信息判断所述资源锁是否为死锁;
当判断所述资源锁为死锁时,输出所述资源锁为死锁的信息。
8.如权利要求7所述的方法,其特征在于,所述获取所述资源锁的占用信息和/或等待信息之前,还包括:
当应用程序的线程/进程操作所述资源锁时,记录操作的所述资源锁的使用信息,所述使用信息中包括占用信息和/或等待信息,及资源锁的时间信息;
所述资源锁的操作时间是根据所述资源锁的时间信息确定的。
9.如权利要求8所述的方法,其特征在于,所述记录操作的所述资源锁的使用信息,具体包括:
如果应用程序的线程/进程申请所述资源锁对应资源时,记录等待所述资源锁的线程/进程的信息和等待时间;
如果申请所述资源锁对应资源成功时,删除等待所述资源锁的线程/进程的信息和等待时间,并记录占用所述资源锁的线程/进程的信息和占用时间;
如果所述释放所述资源锁对应资源时,删除占用所述资源锁的线程/进程的信息和占用时间。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海华为技术有限公司,未经上海华为技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310732689.2/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种松茸的保鲜方法
- 下一篇:一种基于液相分散的二维MoS2纳米片的制备方法