一种基于程序分析的跨过程错误处理代码识别方法技术

技术编号:42184269 阅读:17 留言:0更新日期:2024-07-30 18:36
本发明专利技术公开了一种基于程序分析的跨过程错误处理代码识别和收集方法。方法是:构建由代码预处理模块、错误处理分支定位模块、错误关键变量判定模块、错误传播路径追踪模块构成的跨过程错误处理代码识别和收集系统;代码预处理模块对代码进行处理得到标准代码文件A、A的程序分析文件B和变量使用和赋值关系表C,对B分析得到函数范围表D;错误处理分支定位模块寻找A中错误处理分支和错误处理语句,得到错误处理分支集合S和错误处理语句列表R;错误关键变量判定模块利用S和C获得错误关键变量集合T;错误传播路径追踪模块利用T、A、C、D、S、R找错误传播路径L,得到错误处理代码。采用本发明专利技术能有效地跨过程识别和收集错误处理代码。

【技术实现步骤摘要】

本专利技术涉及大型软件中的缺陷检测领域,具体涉及一种基于程序分析的跨过程错误处理代码识别方法


技术介绍

1、随着时间的发展,软件由最初的科学与工程计算工具发展成了如今多种多样的应用,人类越来越依赖各种软件,自然而然地,软件的安全问题也越发被重视。错误处理(error handling,eh)作为软件正常运行的保障,是软件的重要组成部分,也是衡量软件质量的一个重要指标。软件在运行过程中出现错误时,需要进行错误处理及时地将软件恢复正常运行或是停止软件运行,防止造成严重的损失,保障生产生活有序进行。但是当软件的错误处理代码出现问题时(error handling bug,eh bug),软件无法对在运行过程中出现的错误(如数组越界、空指针引用等)进行处理,这可能会导致软件崩溃等严重后果。

2、对软件中的eh bug进行检测已成为一个重要的研究课题,但目前仍然存在错误处理代码识别不完整不准确的问题。当软件的代码规模较小时,尚能利用人工来检测eh bug,但随着软件的代码行数不断增加,传统的人工检测的方式变得不可行。当前的大量工作利用软件内已有的错误处本文档来自技高网...

【技术保护点】

1.一种基于程序分析的跨过程错误处理代码识别方法,其特征在于包括以下步骤:

2.如权利要求1所述的一种基于程序分析的跨过程错误处理代码识别方法,其特征在于2.2步、2.4步所述程序分析工具为SrcMLV1.0.0。

3.如权利要求1所述的一种基于程序分析的跨过程错误处理代码识别方法,其特征在于2.3步所述代码预处理模块对M进行格式化得到标准代码文件A的方法是:

4.如权利要求3所述的一种基于程序分析的跨过程错误处理代码识别方法,其特征在于2.3.4步所述文本编辑器为Visual Studio Code V1.87。

5.如权利要求1所述的一...

【技术特征摘要】

1.一种基于程序分析的跨过程错误处理代码识别方法,其特征在于包括以下步骤:

2.如权利要求1所述的一种基于程序分析的跨过程错误处理代码识别方法,其特征在于2.2步、2.4步所述程序分析工具为srcmlv1.0.0。

3.如权利要求1所述的一种基于程序分析的跨过程错误处理代码识别方法,其特征在于2.3步所述代码预处理模块对m进行格式化得到标准代码文件a的方法是:

4.如权利要求3所述的一种基于程序分析的跨过程错误处理代码识别方法,其特征在于2.3.4步所述文本编辑器为visual studio code v1.87。

【专利技术属性】
技术研发人员:李姗姗陈欣郑思刘浩然马俊李小玲贾周阳傅滢白林枭
申请(专利权)人:中国人民解放军国防科技大学
类型:发明
国别省市:

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

1