过程间数据流分析技术研究

来源 :东南大学 | 被引量 : 0次 | 上传用户:skynini83
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
数据流分析是一种程序静态分析技术,它能从程序代码中收集程序的语义信息,并通过代数的方法确定变量的定义和使用。通过数据流分析,可以不必实际运行程序就能够发现程序运行行为方面的特性,这样可以帮助人们理解程序。数据流分析被广泛用于解决编译优化、程序验证、理解、分片、调试、测试以及并行化等问题。程序静态数据流分析是程序测试所采用的一种重要手段。借助于程序静态分析工具,能更直接地暴露和定位程序中的错误。数据流分析作为一种非常重要的程序静态分析技术,能够在保证软件质量与可靠性方面起到重要的作用,而过程调用使全程数据流分析变得非常复杂和困难。目前,过程间分析的模型和算法仍然在探讨之中,还没有针对过程间分析的一个简明、统一、表现力强的过程间分析问题模型。论文旨在通过对过程间数据流分析技术的研究,探讨全程数据流分析工具的设计思想和实现方法。论文首先介绍了一些数据流分析的基础知识和一些基本的数据流分析方法;然后对已有的数据流分析方法及常见的处理过程调用的策略进行了分析比较,得出了一种基本的过程间数据流分析框架,能跨过程提取信息,同时讨论了参数在过程间的传递、上下文敏感的过程间指针分析等;最后详细讨论了数据流分析工具的设计思想和实现方法。我们利用词法分析生成工具FLEX,语法分析器生成工具BYACC和后期处理分析器构造出通用的C源代码分析器。分析器对C源代码进行词法、语法分析和后期处理,抽象出程序的语义信息存入公共信息库。公共信息库由信息表组成,通过树型结构高效地组织了程序的语义信息,为不同的维护工具提供了通用的信息组织形式。数据流分析工具调用公共信息库的对外接口,获取公共信息库的信息,根据规范检测程序可能出现的异常。
其他文献
万维网地理信息系统(WebGIS)是Internet技术应用于传统地理信息系统(GIS)的产物,GIS通过WWW功能得以扩展,正在成为一种大众化的工具。但是,随着WWW技术的蓬勃发展,WebGIS的进一步发展
数据库管理系统可能会因一些不可预知的软硬件故障影响事务的正确执行甚至破坏数据库,降低它的可靠性和可用性。数据库系统的备份与恢复部分正是要解决这些问题。本课题以“
虚拟机实时迁移是虚拟化技术的一个重要特征,对于近年来不断兴起的数据中心的负载均衡和灾难恢复有非常重大的意义。通过虚拟机的实时迁移,把虚拟机从源物理主机硬件平台迁移
对图像分割算法的研究巳有几十年的历史,借助各种理论至今已提出了上千种各种类型的分割算法。由于尚无通用有效的分割理论,因此现已提出的分割算法大都是针对具体问题的,并
实时数据库是其事务和数据都可以具有定时限制的或显式的定时限制的数据库系统。系统的正确性不仅依赖于逻辑结果,而且还依赖于逻辑结果产生的时间。在实时数据库系统中集成
根据CNNIC一月份发布的《第29次中国互联网络发展状况统计报告》显示,截至2011年12月底,中国网民规模突破5亿,达到5.13亿,全年新增网民5580万。互联网普及率较上年底提升4个百分
随着信息技术的飞速发展,人们需要能够准确、快速和便捷地获得大量数据并能从中迅速提取出有用的信息.近年来,随着微电子技术飞速发展,嵌入式计算机正在深入应用到工业、农业
随着黑客入侵事件的日益猖獗,人们发现只从防御的角度构造安全系统是不够的。入侵检测技术对计算机和网络资源的恶意使用行为进行识别和响应,不仅检测外部入侵行为,同时也监
Web Services是计算机IT技术的第三次革命.Web services技术在现有的各种异构平台上,构筑了一个通用的,与平台无关语言无关的技术层,不同平台上的应用依靠这个技术层来实施相
数据仓库技术是数据库技术的一个研究方向,能够有效的管理传统数据库产生的历史数据,并向各种决策支持应用如联机分析处理、数据挖掘等提供有力数据支持,适应了企业用户对数