[发明专利]基于Adaboost模型的并发程序数据竞争语句级检测方法有效
| 申请号: | 202010390967.0 | 申请日: | 2020-05-11 |
| 公开(公告)号: | CN111563045B | 公开(公告)日: | 2022-11-01 |
| 发明(设计)人: | 孙家泽;易刚;王曙燕 | 申请(专利权)人: | 西安邮电大学 |
| 主分类号: | G06F11/36 | 分类号: | G06F11/36 |
| 代理公司: | 暂无信息 | 代理人: | 暂无信息 |
| 地址: | 710121 陕*** | 国省代码: | 陕西;61 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 基于 adaboost 模型 并发 程序 数据 竞争 语句 检测 方法 | ||
针对软件测试领域中的并发程序数据竞争检测问题,公开基于Adaboost模型的并发程序数据竞争语句级检测方法。本方法首先对并发程序进行插桩取样,记录指令的相关内存信息,将取出的指令集进行语句级转化;然后进一步提取出数据竞争相关属性特征,基于训练样本的特征属性构建并发程序Adaboost数据竞争语句级检测模型,最后利用模型对待测并发程序进行数据竞争检测。本发明提供了一种检测精度高、开销低的数据竞争检测方法,用于优化并发程序数据竞争检测问题。
技术领域
本发明属于软件测试技术领域,具体涉及到并发程序测试中的数据竞争检测问题,提供了一种基于Adaboost模型的并发程序数据竞争语句级检测方法,主要解决了并发程序数据竞争检测存在的漏报和误报问题,提高检测的效率和精度、降低检测的开销。
背景技术
随着多核处理器的普及和众核处理器的发展,越来越多的人开始使用并发编程来提高程序的性能。并发编程具有很多优势,它不仅可以减少程序的运行时间,而且可以提高程序的吞吐量和多核处理器的利用率。虽然并发编程带了很多好处,但并发程序内部的并发性和不确定性仍然会导致一些难以避免的问题,包括死锁、数据竞争、原子性违背和顺序违背等,这些并发问题都有着难以检测、调试和修复的特点。在这些并发问题中,数据竞争是指在多线程程序中,两个或多个线程在无时序限制情况下访问同一内存位置并且至少有一个线程执行写操作。数据竞争常常是引起其他非死锁并发缺陷的根本原因,并且在所有并发缺陷中占有较大比例。
很多国内外学者对数据竞争检测的问题进行了研究。其中动态检测主要分为三种:基于发生序关系的检测方法、基于锁集的检测方法、二者结合进行检测的方法。基于发生序关系方法中具有代表性的方法是Djit+,它使用向量时钟进行数据竞争分析,FastTrack和LOFT等都是在向量时钟基础上进行的改进。Savage等提出基于锁集的检测工具Eraser,通过共享变量持有的锁集情况判断竞争。ACCULOCK是第一个采用轻量级逻辑时钟平衡检测精度与覆盖率的二者混合方法。在静态检测方面,常用的检测工具包括RacerX、LOCKSMITH和RELAY。其中RacerX利用流敏感和过程间分析检测数据竞争和死锁;LOCKSMITH首先使用标签流约束和抽象控制流图约束来进行锁集分析,然后展开共享变量分析,最后结合线性分析检测出数据竞争。RELAY由于其扩展性堪称优良,能够应用在百万级别代码量的程序上,实际使用中获得了高度认可和广泛接受。虽然很多学者在数据竞争检测方面进行了相关研究,但针对竞争检测出现的误报和漏报现象有待于进一步研究与分析。
以上方法虽然能降低一定的误检及漏检或降低测试开销,但不能同时兼顾,无法实现高精度的检测数据竞争的同时降低检测开销,为此,本发明基于数据挖掘分类模型能高效处理大量数据的特点,提出了一种基于Adaboost分类模型的方法,有助于实现精确检测并发程序数据竞争的同时减低检测开销。
本发明属于软件测试领域,具体涉及到并发程序测试中的数据竞争检测问题,提供了一种基于Adaboost模型的并发程序数据竞争语句级检测方法,主要解决在并发程序数据竞争检测当中如何在高精度检测的同时不造成过大的开销,提高软件测试精度及测试效率。
发明内容
本发明主要解决的问题:现有的检测方法存在的检测精度低和时间开销大的问题,本发明将被测程序进行动态插桩,提取出Pm,Po,Pv,Pl,Pr五个数据竞争检测相关属性,构建并发程序Adaboost数据竞争检测模型,为数据竞争检测提供一种检测精度更高且检测开销更低的检测方法。
本发明的技术方案为:一种基于Adaboost模型的并发程序检测方法,其特征包括以下步骤:
1、基于Adaboost模型的并发程序数据竞争语句级检测方法,其特征在于包括以下步骤:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于西安邮电大学,未经西安邮电大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010390967.0/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种避免磕损的智能物流分发装置
- 下一篇:一种生物质颗粒机压辊调节机构





