【摘 要】
:
计算机技术的快速进步,使人离不开计算机,各式各样的软件层出不穷,软件规模也与日俱增,仅以测试的方法排查漏洞已经不能满足需要。为了减少软件中的漏洞,保证软件程序的正确
论文部分内容阅读
计算机技术的快速进步,使人离不开计算机,各式各样的软件层出不穷,软件规模也与日俱增,仅以测试的方法排查漏洞已经不能满足需要。为了减少软件中的漏洞,保证软件程序的正确性和可靠性,很多研究人员对基于源代码的软件模型检测方法进行了深入的研究并取得了很好的成绩。基于反例驱动的抽象细化算法,是近年来被广泛使用的检测算法。它通过Craig插值来计算谓词,并用谓词对程序进行抽象。该算法不但缓解了状态空间爆炸问题,还能保持检测结果的精确性。但是,对于程序中的循环结构的检测,还是会由于状态数太多,而导致检测效率低。为了缓解此问题,本文提出一个新的算法,该算法在基于反例驱动的抽象细化算法的基础上,采用静态分析与动态执行相互结合的方法对C语言程序验证,并改善了对程序中循环的检测,提高检测效率。本算法将循环分成两个类别,一类为简单循环,对于这部分的处理使用静态分析,在建立模型的过程中,对简单循环部分的模型进行改良,替换原来的模型,减少在对循环检测时的展开,从而节约大量空间以及展开过程中耗费的时间。另一部分为复杂循环,对于这部分的处理使用动态执行的方法,在进入复杂循环的临界点上提取程序信息,将循环体代码与其上下文两部分结合形成完整的执行代码,并将其编译执行,执行之后输出的有效信息抽象成模型的状态,继续参与后续的验证。本文将提出的算法编码实现,并做了大量实验,得到了不错的结果。
其他文献
随着我国社会主义市场经济日趋成熟以及受到医疗事业单位人事制度改革的影响,国内医疗行业竞争加剧,医患矛盾、医疗纠纷等社会问题愈发激化,造成目前临床医护人员的流动性逐
随着天然气加注行业的发展,传统靠打电话联系、依靠纸质派工单和手动记录维修结果的方式已经越来越不适应加气机售后服务的需要。在互联网和信息技术高速发展的今天,业务人员
由于人工智能产生机制的特殊性,打破了人们关于作品创作的传统认知,使得人工智能“创作”行为的法律属性成为极具争议性的问题,进而使得人工智能“创作”时未经许可获取使用他人数据的行为存在侵犯著作权人合法权益的风险。结合人工智能的特殊性及新技术的发展情形,对人工智能的“创作”行为进行剖析:数据采集阶段,人工智能未经许可非法获取使用他人数据的行为侵犯著作权人的复制权;数据分析阶段,人工智能的深度学习及数据分
在体验经济时代,设计更加注重人的情感活动,人们对产品的需求不再只停留在单纯的物质和功能需求,逐渐的转入深层次的心理和情感体验上的需求。把个性化、优越性等用户情感融
随着我国软件行业和互联网行业的高速发展,人们对软件安全性的要求越来越高。然而软件开发人员往往缺乏信息安全意识,因此在开发过程中会不自觉地引入很多的安全漏洞。对于大
本文以重庆灰岩隧道作为研究对象,首先对重庆地区大量隧道排水管道结晶现状进行调查,并现场采集结晶试样和水样,开展室内测试分析;其次,根据分析结果及相关理论对隧道排水管
局部二值模式是一种有效的纹理描述符。然而,传统局部二值模式算子仅仅使用均匀模式,而忽略了所有非均匀模式。随着邻域半径增大和采样点增多,非均匀模式的比例越来越高,丢弃
近年来,随着云计算技术的不断发展和应用,作为云计算组成的云存储服务已经成为企业和个人存储和管理数据的重要方式。然而,由于云存储服务的不可靠性,可能会发生数据隐私泄露
人工蜂群算法是一种新型的群智能算法,它模拟的是工蜂采蜜过程中各种蜜蜂分工合作以开采最佳蜜源的原理。该算法将采蜜蜂群分为引领蜂、跟随蜂和侦查蜂三类,通过三种蜜蜂轮流