【摘 要】
:
代码缺陷是程序员在编程时遗留在代码中的错误实现,其能导致软件系统的行为偏离软件需求或产生非预期的错误结果。大量的软件系统失效或不能提供正常服务都归结于软件系统中
论文部分内容阅读
代码缺陷是程序员在编程时遗留在代码中的错误实现,其能导致软件系统的行为偏离软件需求或产生非预期的错误结果。大量的软件系统失效或不能提供正常服务都归结于软件系统中存在的缺陷,及时发现并排除代码缺陷是软件质量保障的重要环节和手段。其中与软件系统中对象状态相关的缺陷十分普遍,因此一直是代码缺陷检测的关注点。静态分析和动态测试是常用的缺陷检测方法。由于静态分析方法自动化程度高、容易部署,得到学术界和工业界广泛使用。但简单的静态分析结果误报率较高,因而通常需要高精度分析算法提高准确性。现如今软件系统规模日益增大,利用静态分析方法检测状态相关的缺陷需要跟踪对象所有控制流、数据流信息,因此面临着精准度和可扩展性的巨大挑战。现在的研究工作大多仅进行了低精度的静态分析,而高精度静态分析算法通常需要大量的计算资源,难以在资源受限的环境下实现。本文针对大规模软件系统中与状态相关的缺陷的检测问题,研究提高大规模软件系统静态分析方法的精准性和可扩展性的有效方法。论文主要研究工作包括:(1)提出了高精度、高可扩展的上下文敏感以及路径敏感的静态分析方法。本方法提出基于过程间控制流执行树(ICFET)的路径约束编码/解码算法,从而极大降低了对超大规模路径约束的存储、访问等开销,实现了高效、高可扩展的分析支持。然后在此基础上,进行基于约束指导的图可达性计算。(2)提出了基于图可达计算的大规模软件系统中状态相关缺陷静态检测方法。该方法首先利用有穷状态自动机FSM对状态相关缺陷进行建模;然后基于FSM及程序控制流图生成程序状态扩展图;在此基础上,设计检测算法将缺陷检测问题转化为基于约束的图可达计算,从而利用上述高精度、高可扩展性分析方法计算可达边,然后判断每条可达边终点所在的状态是否为FSM中定义的错误状态来实现缺陷检测。(3)基于上述方法实现了一个大规模软件系统中状态相关缺陷静态工具Grapple,并进行了实验评估。在静态分析框架Soot、SMT求解器Z3和大规模系统静态分析工具Graspan的基础上,实现了原型工具Grapple。本文对四个广泛部署的大规模软件系统进行了四种状态相关缺陷的实验评估,实验结果表明Grapple可以对大规模软件系统进行高精度和可扩展的静态分析,并能够有效检测状态相关缺陷。
其他文献
本文聚焦数据安全、信息泄露等现实问题,立足个人信息保护,以网络服务提供商为研究视角,解读欧盟被遗忘权判例,最终为中国个人信息保护提供借鉴与参考。围绕被遗忘权判例的核
董事会是决定企业决策、企业治理水平的重要机构。如何改善董事会的结构特征提高董事会决策质量、公司治理水平,进而提升企业绩效,一直是学者研究关注的重点。伴随经济的快速发展、社会风气和观念的变化,更多的女性走入职场,并突破职场天花板,成为企业的高层。女性参与董事会治理作为一个重要研究领域,逐渐成为国内外理论界和实业界备受关注的课题。目前国内外关于女性董事与企业绩效关系的研究多聚焦于女性董事参与度对企业绩
随着我国移动互联网技术的不断发展,移动设备在人们日常学习生活中变得越来越重要。由于Android操作系统具有开源性和易移植性等优点,目前国内市场上接近80%的智能设备是使用
上个世纪七十年代,CCD图像传感器凭借其低成本和低噪声成为主流的图像传感器,随着半导体工艺和技术的提高,CMOS图像传感器因其高集成度、低功耗和高灵敏度等优势开始逐渐取代
2018年10月发生的重庆公交坠江事故引起热议,不少法律相关人士提出此事件为承运人违反保护义务所致。而所谓的承运人保护义务制度,正是一个我国明文规定但缺乏具体适用标准、
目前我国的机动车数量正在持续上升,采集车牌的场景也越来越复杂。因此,提升车牌识别技术的普适性至关重要。研究在复杂条件下的车牌识别技术依然有很大的市场价值。具体工作
行人检测是计算机视觉的热点和难点之一,广泛应用于智能视频监控、无人车及辅助驾驶等应用中。近几年,深度学习飞速发展,带动了计算机视觉领域的发展和进步,行人检测技术也得
霍尔德tilt-稳定局部极小值点是优化中的一个重要概念,己被广泛研究.作为其推广,用一般的正数P代替1,文献[1]引进并研究了 tilt稳定P-阶极小值点,并通过真下半连续函数f之次微分映射(?)f的P-阶度量正则性刻画了f的tilt稳定P-阶极小值点.本文给出了(?)f的p-阶度量正则性与f的tilt稳定p-阶极小值点所涉及模及半径之间的确切定量关系.
随着我国资本市场国际化程度不断加深,需要更大的开放力度和更深的勇气,我国也一直在进行相应的探索。我国学者对存托凭证这一金融工具进行理论探讨已持续多年,亟待立法层面
三周期极小曲面(triply periodic minimal surfaces)是一种十分简洁且有数学表达式的复杂结构,它周期性(沿X,Y,Z轴都呈现周期性的变化)地构造了三维空间上的一种光滑全连通的