基于增量式技术的程序静态分析器的研究

来源 :浙江工业大学 | 被引量 : 0次 | 上传用户:seacloudnemo
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
软件维护是软件投入使用后,对软件进行适应性、修正性、完善性、预防性维护的阶段,是整个生命周期中最漫长,时间成本最高的阶段。据报告,在整个软件维护过程中,程序理解的时间开销占了47%-62%。因此,提高程序理解的效率有利于控制软件维护成本,具有重大的现实意义。利用辅助工具进行程序理解,是提高程序理解效率,降低软件维护成本的关键一步。但是,由于程序理解任务的差异性,目标系统的差异性以及运行平台的差异性等,诸多工具只针对某些具体任务进行理解或者只能在某个平台上运行。为了提高程序理解工具的适应性、跨平台性,本文对程序静态分析器进行了研究,主要工作如下:(1)新的概念模型构造。根据C/C++源程序文件的特点,描述了实体、属性以及实体关系的含义,并以此为基础构造了程序分析器的概念模型,确定了信息抽取的范围。(2)信息抽取与错误处理研究。研究了Lex和Yacc的词法分析和错误处理机制,提出了分析器的一种信息抽取与错误恢复机制,较好地解决了信息抽取方式以及抽取过程中的错误处理问题。(3)增量式技术运用。软件维护过程中,往往需要修改部分源程序文件,为避免重新分析,将增量式技术运用到语法分析、语义分析以及数据流分析过程中,提高了分析效率,实现信息库的快速更新。(4)移植研究。借助Cygwin的类Linux环境,对Linux代码进行了Widows移植研究。
其他文献
本论文研究的对象是网络管理系统的Web自动化测试设计与实现。论文在分析国内外自动化测试研究发展现状的基础上,对自动化测试实现的理论基础、基本原理和关键技术进行了深入
数据备份系统最常用的用途是恢复用户偶然错误删除的文件和恢复由于磁盘损坏而丢失的数据。传统的数据备份系统需要整个系统停止运行才能进行,在备份期间,无法进行正常的数据访
在电力学科中,静态安全分析技术是保证电网稳定运行的一项关键技术,由于包含非常庞大的计算量,所以通常需要借助于高性能计算机帮助计算。而在经典的计算机架构下计算机的计算能力难以保证其业务的实时性。随着GPU技术的不断发展,NVIDIA公司推出的CUDA架构让GPU在通用计算领域越来越普及,由于GPU在硬件上的特点,拥有良好并行计算能力,能很好应对需要大规模计算量的场景。在静态安全分析系统中引入GPU来
随着计算机和网络的迅速发展,人们对身份认证技术提出了更高的要求,基于生物特征识别的智能身份认证方法也逐渐受到广泛的关注。在众多的生物识别技术中,指纹识别技术是发展最早
数字水准仪是集光学、电子、编码技术、图像处理、计算机技术于一体的当代先进的水准测量仪器。它凭借其速度快、精度高、操作简单等优点很快得到了广大用户的认可,并被应用于
随着计算机图形学与计算机网络技术的发展,越来越多的应用需要通过互联网、数字电视网络、甚至是无线网络,来访问那些存放在异地的三维几何图形数据。这使得本已经十分有限的网
随着信息系统与软件产品规模的急剧扩大,软件体系结构逐渐成为软件工程领域的热点及关键技术,日益受到国内外学术界和工业界的关注。软件体系结构关注系统的全局组织形式,是
层次型无线传感器网络是大量节点按簇结构呈层次性组织的一类传感器网络。提供安全的网内处理和被动参与功能以减少通信量是层次型无线传感器网络安全中的重点。由于传感器网
动态预测是实际工程领域和科学研究中普遍存在的问题。在应用中,很多系统都可以看作是一类复杂的非线性时变问题,一些问题由于缺乏先验理论和知识,以及内部变换和环境因素相
随着电子技术和通信技术的发展,一方面使路由器的性能越来越高,它不仅仅是进行简单的转发数据,而且还可以提供服务分类(CoS)功能;另一方面,SDH/SONET能够为节点之间的互联提