APP下载

一种基于异常控制流的错误程序行为分析方法

2018-08-07江建慧吴捷程

同济大学学报(自然科学版) 2018年7期
关键词:程序故障分析

江建慧, 吴捷程, 孙 亚

(同济大学 软件学院, 上海 201804)

错误程序行为(erroneous program behavior, EPB) 分析主要是获取程序差错及其对程序行为的影响,包括差错类型、差错发生位置、差错发生时机,以及各个差错在程序中的表象.

软件故障注入技术通过人为地对软件或计算机等目标系统注入软件故障来加速其失效,从而实现目标系统的容错机制有效性验证、可靠性评估[1-2].然而,如何得到真实的软件故障或差错数据是该技术实现的前提[1-4].

具有代表性的软件差错数据获取需要分析软件的功能特性及其在某个故障/缺陷被激活后所表现出的错误行为[2-3,5],工作量很大,且分析周期很长[1,3].常见的正交缺陷分类(orthogonal defect classification, ODC)所属故障被激活后所产生的程序差错形式随程序实现的不同而不同[1],可能以返回码或共享变量的形式存在于应用程序与其使用的库函数之间[2,6],也可能以异常的形式在程序中进行传播[5-6],或以跳转指令的组合形式出现[7].

在具有异常处理机制的程序中,故障激活后所产生的差错若被异常处理机制侦测,则异常发生[8-9].若对该异常处理不当,则可引起程序失效[9].这一过程将形成“故障-差错-异常-失效”链.

通过对程序异常控制流(exception control flow,ECF)的分析可收集能够引起异常的差错信息,包括:由异常类型获取差错内容;由异常引发点获取差错被侦测时的物理位置;由异常传播路径获取差错的影响范围;由异常捕捉情况获取差错是否得到修正的信息.这些信息可指导软件故障注……

登录APP查看全文

猜你喜欢

程序故障分析
隐蔽失效适航要求符合性验证分析
故障一点通
试论我国未决羁押程序的立法完善
电力系统不平衡分析
“程序猿”的生活什么样
英国与欧盟正式启动“离婚”程序程序
电力系统及其自动化发展趋势分析
奔驰R320车ABS、ESP故障灯异常点亮
创卫暗访程序有待改进
故障一点通