The embodiment of the invention provides a method and device for evaluating the detection effect of a data competition detection tool. The method comprises running a data competition detection tool to be evaluated, detecting each test program separately, obtaining the actual data competition information output by the data competition detection tool, and matching the actual data competition information with the real data. Data competition information is compared, and the results of the test results of data competition detection tools are obtained. The embodiment of the invention obtains the evaluation result of the detection effect of the data competition detection tool by comparing the actual data competition information with the real data competition information. Because the actual data competition information output by the data competition detection tool is compared with the real data competition information as the standard, the unified standard can be used to evaluate the detection effect of different data competition detection tools. It has strong objectivity and can help the tester to select the appropriate data competition detection tool.
【技术实现步骤摘要】
数据竞争检测工具的检测效果评估方法及装置
本专利技术实施例涉及软件分析领域,更具体地,涉及一种数据竞争检测工具的检测效果评估方法及装置。
技术介绍
随着计算机硬件并行计算能力的提升,越来越多的软件采用多线程的实现方式来提高计算效率。伴随计算效率的提升,并发缺陷也可能在不经意间被引入。并发缺陷可以分为以下三类:数据竞争缺陷、原子性违反缺陷和死锁缺陷。其中,数据竞争缺陷是指同一程序内的不同线程以非正确同步的方式在共享的内存位置上执行两个写操作或者一写一读的操作。数据竞争缺陷可能导致变量值不一致,进而导致程序崩溃,严重的可能造成财产损失。相关技术中,存在多种数据竞争检测工具,由于各种数据竞争检测工具采用不同的数据竞争检测算法,导致各种数据竞争检测工具的检测效果并不相同。为了对检测效果进行评估,通常由用户针对数据竞争检测工具进行人工评估,具有很强的主观性。
技术实现思路
为了解决上述问题,本专利技术实施例提供一种克服上述问题或者至少部分地解决上述问题的数据竞争检测工具的检测效果评估方法及装置。根据本专利技术实施例的第一方面,提供一种数据竞争检测工具的检测效果评估方法,该方法包括:运行待评估的数据竞争检测工具,分别对各测试程序进行检测,获得数据竞争检测工具输出的实际数据竞争信息;将实际数据竞争信息与真实数据竞争信息进行比较,获得数据竞争检测工具的检测效果评估结果;真实数据竞争信息由测试程序中包含的真实数据竞争获得。本专利技术实施例提供的方法,通过运行待评估的数据竞争检测工具,分别对各测试程序进行检测,获得数据竞争检测工具输出的实际数据竞争信息;将实际数据竞争信息与真实数 ...
【技术保护点】
1.一种数据竞争检测工具的检测效果评估方法,其特征在于,包括:运行待评估的数据竞争检测工具,分别对各测试程序进行检测,获得所述数据竞争检测工具输出的实际数据竞争信息;将所述实际数据竞争信息与真实数据竞争信息进行比较,获得所述数据竞争检测工具的检测效果评估结果;所述真实数据竞争信息由所述测试程序中包含的真实数据竞争获得。
【技术特征摘要】
1.一种数据竞争检测工具的检测效果评估方法,其特征在于,包括:运行待评估的数据竞争检测工具,分别对各测试程序进行检测,获得所述数据竞争检测工具输出的实际数据竞争信息;将所述实际数据竞争信息与真实数据竞争信息进行比较,获得所述数据竞争检测工具的检测效果评估结果;所述真实数据竞争信息由所述测试程序中包含的真实数据竞争获得。2.根据权利要求1所述的方法,其特征在于,所述将所述实际数据竞争信息与真实数据竞争信息进行比较之前,还包括:对所述测试程序进行数据竞争检测,基于检测到的所述测试程序中包含的真实数据竞争获得对应的所述真实数据竞争信息,并删除所述测试程序中不包含所述真实数据竞争的所述测试程序;对所述测试程序及所述真实数据竞争信息进行统一化组织,获得数据集;所述数据集包括采用设定存储格式存储的所述测试程序以及用于存储所述真实数据竞争信息的基线文件。3.根据权利要求2所述的方法,其特征在于,所述对所述测试程序进行数据竞争检测之前,还包括:收集所述测试程序,删除所述测试程序中重复的所述测试程序以及不能正常运行的所述测试程序。4.根据权利要求1所述的方法,其特征在于,所述运行待评估的数据竞争检测工具,分别对各测试程序进行检测,包括:根据所述数据竞争检测工具的检测命令及所述测试程序的输入参数要求,获取与所述测试程序对应的测试脚本;分别运行与各所述测试程序对应的所述测试脚本,对各所述测试程序进行检测。5.根据权利要求2所述的方法,其特征在于,所述获得所述数据竞争检测工具输出的实际数据竞争信息,包括:采用正则表达式提取所述数据竞争检测工具输出的日志文件中的所述实际数据竞争信息,所述正则表达式由所述数据竞争检测工具输出所述日志文件的方式确定;或者,对所述数据竞争检测工具输出的日志文件进行格式化处理后,采用所述基线文件存储所述真实数据竞争信息的方式输出所述实际数据竞争信息。6.根据权利要求1或2所述的方法,其特征在于,所述将所述实际数据竞争信息与真实数据竞争信息进...
【专利技术属性】
技术研发人员:姜宇,高健,杨鑫,顾明,孙家广,
申请(专利权)人:清华大学,
类型:发明
国别省市:北京,11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。