基于预测分析的并发程序错误检测技术研究

来源 :上海交通大学 | 被引量 : 1次 | 上传用户:lblb0628wto
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
并发程序能够极大提高程序执行效率,因而备受关注并已在实际应用中得到推广。但是并发程序容易引入数据竞争、原子性违反和顺序违反等错误,可能会造成人员或财产损失。因此如何有效发现并发程序错误就成为至关重要的问题。并发程序错误检测技术应运而生并持续发展。本文在分析当前并发程序错误检测的主流技术和主要技术指标的基础上,从可扩展性、效率、有效性以及检测结果的可理解性四个方面,对基于预测分析的并发程序错误检测技术作进一步研究,主要工作和贡献如下:?针对程序执行轨迹中的冗余事件和残余事件,提出两阶段轨迹过滤技术。该技术首先扫描待测轨迹,计算每个线程的当前并发上下文信息并联合部分事件对应代码的所在位置,构造二维等价计算模型收集完全等价事件标准和等价线程标准,以移除本地冗余事件和全局冗余事件;然后利用冗余事件已移除的轨迹和冗余线程中的消息标识,自动识别并移除锁残余事件和通信残余事件。实验表明,两阶段轨迹过滤技术可有效缩减待测轨迹的规模,从而提高检测技术的可扩展性。?针对顺序违反错误,提出区间限定的双向预测方法。该方法首先双向扫描正常轨迹,收集两类期望的数据流信息并计算约束信息,构造基于期望的双向预测模型;接着用保守策略识别双向预测模型中的潜在顺序违法事件序列区间,以在此区间内双向预测潜在顺序违反事件是否可行;然后生成与预测结果对应的调度以检测顺序违反错误。实验表明,采用区间限定的双向预测方法的检测技术可快速有效的发现顺序违反错误。?针对空指针解引用异常问题,提出约束指导的预测分析与主动随机测试技术相结合的检测技术。该技术首先扫描待测轨迹,计算其约束信息、记录线程连续执行区间信息并收集共享数据流信息,构造基于约束指导的预测模型;接着约束指导地重排从预测模型获取的数据流生成导致空指针解引用错误的关键场景;然后针对预测出的关键场景,主动控制线程调度以检测导致空指针解引用的恶性竞争。实验表明,约束指导的预测分析与主动随机测试技术相结合可有效地检测出这一类恶性竞争。?针对轨迹中的上下文频繁切换问题,提出渐进地轨迹简化技术。该技术首先扫描待测轨迹,构造双层轨迹简化模型,其顶层模型收集轨迹中的依赖信息,底层矩阵标识上下文切换信息。接着在不改变依赖关系的前提下,渐进地合并底层矩阵中同一线程的相邻执行区间;然后根据区间合并后的矩阵重组执行轨迹。实验表明,渐进地轨迹简化技术可显著缩减轨迹中的上下文切换数量,从而提高程序员理解该错误轨迹的效率。
其他文献
时光如水,岁月如歌。《现代零部件》即将走过悠悠十载春秋,在2013年迎来创刊十周年。十年来,《现代零部件》在广大作者和读者的支持与帮助下,脚踏实地,一步一个脚印,取得了令人欣喜
目的:系统评价瘢痕疙瘩切除术后放疗分割剂量治疗瘢痕疙瘩的有效性。方法:使用计算机检索自数据库建库至2017年5月已发表的,关于术后放射治疗瘢痕疙瘩临床疗效对照研究的国内
集万千关注于一身的2014北京车展在4月20日拉开了为期10天展览的帷幕,众多新车、豪车和概念车集中亮相,整车馆内人头攒动,场面火爆;零部件展区却是观众寥寥,门可罗雀.
目的探讨活性氧簇(ROS)信号通路调控核苷酸结合寡聚化结构域样受体(nucleotide binding and oligomerization domain-like receptor,NLRP3)炎症小体的表达在自身免疫性葡萄膜
又是一年车展时,聚汇全球汽车工业新品的2014年北京国际汽车展览会将于4月在北京拉开帷幕.距离本届车展还有一个多月的时间,各大车企已经摩拳擦掌,准备大展身手,各位看官也早
启动重大敏感案件快速反应机制、实行案件联合挂牌督办、依法提前介入引导侦查取证、从严从快批捕犯罪嫌疑人……记者日前采访了解到,在查办涉山东庞红卫等非法经营疫苗系列案
报纸