[发明专利]一种操作系统死锁静态检测方法及相关设备在审
申请号: | 202111357499.8 | 申请日: | 2021-11-16 |
公开(公告)号: | CN116136800A | 公开(公告)日: | 2023-05-19 |
发明(设计)人: | 白家驹;李拓;王岳兴;李杨;贾宁 | 申请(专利权)人: | 华为技术有限公司;清华大学 |
主分类号: | G06F9/52 | 分类号: | G06F9/52 |
代理公司: | 广州三环专利商标代理有限公司 44202 | 代理人: | 熊永强;李稷芳 |
地址: | 518129 广东*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 操作系统 死锁 静态 检测 方法 相关 设备 | ||
1.一种操作系统死锁静态检测方法,其特征在于,所述方法包括:
对操作系统内核的函数进行基于变量间的别名关系的锁集分析,得到锁集序列集合;
对所述锁集序列集合进行回环检测,得到至少一个潜在死锁缺陷;
对所述至少一个潜在死锁缺陷中的每个潜在死锁缺陷的代码路径进行可达性检测和/或并发性检测,以得到所述操作系统内核的死锁缺陷检测结果。
2.根据权利要求1所述的方法,其特征在于,所述死锁缺陷检测结果包括死锁缺陷集合,所述对所述至少一个潜在死锁缺陷中的每个潜在死锁缺陷的代码路径进行可达性检测,以得到所述操作系统内核的死锁缺陷检测结果,包括:
对于所述至少一个潜在死锁缺陷中的任一个潜在死锁缺陷A,基于所述别名关系对所述潜在死锁缺陷A的代码路径中的每条代码路径进行可达性检测,得到所述每条代码路径的可达性检测结果;
当所述潜在死锁缺陷A的每条代码路径的可达性检测结果均表示该代码路径具备可达性时,将所述潜在死锁缺陷A放入所述死锁缺陷集合。
3.根据权利要求1所述的方法,其特征在于,所述死锁缺陷检测结果包括死锁缺陷集合,当所述至少一个潜在死锁缺陷中的任一个潜在死锁缺陷A的代码路径的数量大于或等于2条时,所述对所述至少一个潜在死锁缺陷中的每个潜在死锁缺陷的代码路径进行并发性检测,以得到所述操作系统内核的死锁缺陷检测结果,包括:
对所述潜在死锁缺陷A的代码路径中的两两代码路径进行并发性检测,得到并发性检测结果;
当所述并发性检测结果表示所述潜在死锁缺陷A的代码路径中的两两代码路径均具有并发性时,将所述潜在死锁缺陷A放入所述死锁缺陷集合。
4.根据权利要求1所述的方法,其特征在于,所述死锁缺陷检测结果包括死锁缺陷集合,当所述至少一个潜在死锁缺陷中的任一个潜在死锁缺陷A的代码路径的数量大于或等于2条时,所述对所述至少一个潜在死锁缺陷中的每个潜在死锁缺陷的代码路径进行可达性检测和并发性检测,以得到所述操作系统内核的死锁缺陷检测结果,包括:
基于所述别名关系对所述潜在死锁缺陷A的代码路径中的每条代码路径进行可达性检测,得到所述每条代码路径的可达性检测结果;
对所述潜在死锁缺陷A的代码路径中的两两代码路径进行并发性检测,得到并发性检测结果;
当所述潜在死锁缺陷A的每条代码路径的可达性检测结果均表示该代码路径具备可达性,且所述并发性检测结果表示所述潜在死锁缺陷A的代码路径中的两两代码路径均具有并发性时,将所述潜在死锁缺陷A放入所述死锁缺陷集合。
5.根据权利要求1-4任一项所述的方法,其特征在于,所述对操作系统内核的函数进行基于变量间的别名关系的锁集分析,得到锁集序列集合,包括:
对所述操作系统内核的源代码进行编译,得到所述操作系统内核的中间字节码文件,并记录所述中间字节码文件中的所述函数的基本信息;
利用所述函数的基本信息对所述函数进行流敏感分析和过程间分析,得到所述函数的代码路径,所述函数的代码路径包括所述每个潜在死锁缺陷的代码路径;
对所述函数的代码路径中的变量进行别名分析,得到所述别名关系;
基于所述别名关系对所述函数的代码路径进行锁集分析,得到所述锁集序列集合。
6.根据权利要求5所述的方法,其特征在于,所述基于所述别名关系对所述函数的代码路径进行锁集分析,得到所述锁集序列集合,包括:
遍历所述函数的代码路径,将所述函数的代码路径中的加锁函数对应的锁变量加入锁集合中;
基于所述锁集合中的锁变量,得到锁获取的依赖关系,所述变量包括所述锁集合中的锁变量;
基于所述别名关系和所述依赖关系得到所述锁集序列集合。
7.根据权利要求6所述的方法,其特征在于,所述方法还包括:
将所述函数的代码路径中的解锁函数对应的锁变量从所述锁集合中删除。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华为技术有限公司;清华大学,未经华为技术有限公司;清华大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202111357499.8/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种芯片测试系统
- 下一篇:具有发光二极管的显示模组及其制作方法