您的位置: 首页 > 中文期刊论文 > 详情页

多线程程序数据竞争检测与证据生成方法

作   者:
张晓东郑庆华刘烃俞乐晨刘沛杨子江
作者机构:
西安理工大学计算机科学与工程学院西安交通大学智能网络与网络安全教育部重点实验室
关键词:
多线程程序测试证据生成数据竞争约束求解
期刊名称:
计算机工程与科学
基金项目:
面向国家电子税务系统的可信软件试验环境与示范应用
可信网络交易软件系统试验环境与示范应用
大规模网络化系统的优化、安全与信息服务
基于物理-信息关联分析的智能电网安全检测方法
i s s n:
1007-130X
年卷期:
2014 年 36 卷 11 期
页   码:
2047-2053
摘   要:
数据竞争是多线程程序最为常见的问题之一。由于线程交织导致状态空间爆炸,多线程程序数据竞争引起的错误检测难度大、成本高、精度低;此外,即使检测到数据竞争,由于线程调度难以控制、执行过程难以复现,错误难以复现和定位。提出了一种多线程程序数据竞争检测与证据生成方法,基于程序语义分析和执行过程监测,构建程序的执行路径约束模型和数据竞争条件,将多线程程序数据竞争检测问题转化为约束求解问题,降低检测难度,提高检测精度;利用SMT求解器计算可能的数据竞争,并生成触发该数据竞争的程序执行序列,协助程序员定位和验证错误。实验中对10个程序进行了测试,相比现有数据竞争检测工具threadsanitizer和helgrind,本方法检测出的数据竞争多出287.5%和264.7%,且没有误报,而其他方法平均误报率为10.5%和9.8%。
相关作者
载入中,请稍后...
相关机构
    载入中,请稍后...
应用推荐

意 见 箱

匿名:登录

个人用户登录

找回密码

第三方账号登录

忘记密码

个人用户注册

必须为有效邮箱
6~16位数字与字母组合
6~16位数字与字母组合
请输入正确的手机号码

信息补充