用于验证并发程序原子性违反的方法、装置及电子设备制造方法及图纸

技术编号:40033564 阅读:23 留言:0更新日期:2024-01-16 18:37
本发明专利技术提供一种用于验证并发程序原子性违反的方法、装置及电子设备,其中,该方法包括:探索当前路径,生成所述当前路径对应的当前轨迹;根据所述当前轨迹,编码所述当前轨迹的等价约束,以及编码并发程序的原子性违反约束;根据所述原子性违反约束和所述当前轨迹的等价约束,使用约束求解器进行推理,验证所述当前路径是否违反原子性;其中,所述当前轨迹的等价约束包括以下一种或多种:所述当前轨迹的读写事件的数据有效性约束;所述当前轨迹的路径条件约束;所述当前轨迹的同步约束。从而可以对并发程序中各个路径的原子性是否违反都进行验证,更全面地验证并发程序中的原子性违反。

【技术实现步骤摘要】

本专利技术涉及软件安全,尤其涉及一种用于验证并发程序原子性违反的方法、装置及电子设备


技术介绍

1、目前有许多自动修复技术自动生成补丁来修复原子性违反(atomicityviolation)错误,这些技术依赖于bug报告中的信息,无法验证修复后的程序是否能验证不同的路径满足原子性地执行。

2、利用swan可以根据观察到的错误执行轨迹来验证原子性违反修复的正确性,但是swan只能在观察到的轨迹所显示的固定输入和一小部分线程调度空间下验证修复的正确性,如果程序在swan没有捕获的不同输入或不同线程调度下运行,则仍然可能发生相同的或其他的原子性违反。


技术实现思路

1、本专利技术提供一种用于验证并发程序原子性违反的方法、装置及电子设备,用以解决现有技术中只能观察错误执行轨迹中验证原子性违反的缺陷,实现更全面地验证并发程序中的原子性违反。

2、本专利技术提供一种用于验证并发程序原子性违反的方法,包括:

3、探索当前路径,生成所述当前路径对应的当前轨迹;

4、根据所述当本文档来自技高网...

【技术保护点】

1.一种用于验证并发程序原子性违反的方法,其特征在于,包括:

2.根据权利要求1所述的用于验证并发程序原子性违反的方法,其特征在于,所述方法还包括:

3.根据权利要求1所述的用于验证并发程序原子性违反的方法,其特征在于,在探索当前路径之前,所述方法还包括:

4.根据权利要求3所述的用于验证并发程序原子性违反的方法,其特征在于,在存在多个未探索的路径的情况下,所述方法还包括:

5.根据权利要求1至4任一所述的用于验证并发程序原子性违反的方法,其特征在于,所述方法还包括:

6.根据权利要求5所述的用于验证并发程序原子性违反的方法,其...

【技术特征摘要】

1.一种用于验证并发程序原子性违反的方法,其特征在于,包括:

2.根据权利要求1所述的用于验证并发程序原子性违反的方法,其特征在于,所述方法还包括:

3.根据权利要求1所述的用于验证并发程序原子性违反的方法,其特征在于,在探索当前路径之前,所述方法还包括:

4.根据权利要求3所述的用于验证并发程序原子性违反的方法,其特征在于,在存在多个未探索的路径的情况下,所述方法还包括:

5.根据权利要求1至4任一所述的用于验证并发程序原子性违反的方法,其特征在于,所述方法还包括:

6.根据权利要求5所述的用于验证并发程序原子性违反的方法,其特征在于,所述对所述并发程序中的路径...

【专利技术属性】
技术研发人员:易秋萍李壮
申请(专利权)人:北京邮电大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1