基于单变量访问序模式的中断数据访问冲突检测方法及装置制造方法及图纸

技术编号:24168311 阅读:31 留言:0更新日期:2020-05-16 02:08
本发明专利技术实施例提供了一种基于单变量访问序模式的中断数据访问冲突检测方法及装置。所述方法包括:获取多个源文件;对每个所述源文件的函数进行可达访问分析,生成每个所述源文件的可达访问图;使用所述多个源文件的函数调用关系和各所述源文件的函数摘要,更新各所述可达访问图;遍历各更新后的可达访问图,匹配单变量访问序模式,得到中断数据访问冲突检测结果。本发明专利技术实施例对单文件进行独立分析,避免了跨文件的分析时在不同文件交替分析,减小了内存占用的峰值,可适用于大规模程序。

The method and device of interrupt data access conflict detection based on single variable access sequence pattern

【技术实现步骤摘要】
基于单变量访问序模式的中断数据访问冲突检测方法及装置
本专利技术涉及计算机软件测试与验证
,特别是一种基于单变量访问序模式的中断数据访问冲突检测方法及装置。
技术介绍
中断驱动的嵌入式软件已广泛应用于航天、医疗、IoT等领域,这些领域对安全性的要求高,软件失效或故障都可能产生灾难性后果。中断数据访问冲突是中断驱动的嵌入式程序的一种并发缺陷,它出现在主程序与中断,或者中断与中断之间对同一共享数据进行访问而导致非预期的异常行为时。这些异常行为可能导致关键数据被意外修改,严重时致软件失效,甚至出现灾难性后果。但中断数据访问冲突出现概率小,并且由于并发的不确定性往往难以复现,是航天、汽车、IoT等嵌入式软件中的关键可信问题之一。对中断数据访问冲突的检测方法,已有一些研究工作。专利CN102063328A公开了一种用于检测中断驱动型程序数据竞争的系统,专利CN103778062A公开了一种基于抽象解释的多中断程序数据访问冲突检测方法,InternationalSymposiumonSoftwareTestingandAnalysis(ISS本文档来自技高网...

【技术保护点】
1.一种基于单变量访问序模式的中断数据访问冲突检测方法,其特征在于,包括:/n获取多个源文件;/n对每个所述源文件的函数进行可达访问分析,生成每个所述源文件的可达访问图;/n使用所述多个源文件的函数调用关系和各所述源文件的函数摘要,更新各所述可达访问图;/n遍历各更新后的可达访问图,匹配单变量访问序模式,得到中断数据访问冲突检测结果。/n

【技术特征摘要】
1.一种基于单变量访问序模式的中断数据访问冲突检测方法,其特征在于,包括:
获取多个源文件;
对每个所述源文件的函数进行可达访问分析,生成每个所述源文件的可达访问图;
使用所述多个源文件的函数调用关系和各所述源文件的函数摘要,更新各所述可达访问图;
遍历各更新后的可达访问图,匹配单变量访问序模式,得到中断数据访问冲突检测结果。


2.根据权利要求1所述的方法,其特征在于,在所述获取多个源文件之后,还包括:
收集所述多个源文件分别对应的被调用函数的函数摘要;所述函数摘要为可达访问图的出口结点的可达访问集。


3.根据权利要求1所述的方法,其特征在于,所述对每个所述源文件的函数进行可达访问分析,生成每个所述源文件的可达访问图,包括:
配置主程序入口、中断入口和中断优先级;
分别对所述主程序入口的函数和所述中断入口的函数涉及的源文件,以及各所述源文件中的函数进行不考虑函数调用的可达访问分析,生成各所述可达访问图。


4.根据权利要求3所述的方法,其特征在于,在使用所述多个源文件的函数调用关系和各所述源文件的函数摘要,更新各所述可达访问图之后,还包括:
使用所述函数摘要更新调用函数所在的可达访问图;
在对各所述可达访问图进行更新时,记录所有函数被调用前的程序点的可达访问集;
采用所述可达访问集,作为所述被调函数的可达访问图的入口值再更新,使所有可达访问图达到稳定状态。


5.根据权利要求4所述的方法,其特征在于,所述遍历各更新后的可达访问图,匹配单变量访问序模式,得到中断数据访问冲突检测结果,包括:
通过所述中断入口和所述中断优先级,对被打断的主函数和中断函数进行匹配;
遍历主函数的可达访问图,计算出同一变量的连续两次访问,再匹配所述中断函数中的内存访问,生成数据访问冲突序。


6.一种基于单变...

【专利技术属性】
技术研发人员:陈睿余娜江云松王峥李超贾春鹏肖志恒丁戈李杨吴瑾杨帆
申请(专利权)人:北京轩宇信息技术有限公司
类型:发明
国别省市:北京;11

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

1