新型多用途C++静态分析器的研究与开发

来源 :北京航空航天大学 | 被引量 : 0次 | 上传用户:zyj3221
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
静态分析是软件白盒测试、逆向工程以及再工程等CASE工具的核心基础支撑技术.长期以来,由于C++语言语法的高度复杂性,导致静态分析技术一直是C++语言的CASE工具开发的瓶颈.该文的研究内容是为解决这一问题,设计开发一个支持C++的代码扫描,静态程序结构信息逆向提取,程序度量信息提取,动态探针插装以及可以输出标准化信息数据文档的多用途C++语言静态分析器.该文围绕"新型多用途C++静态分析器研究与开发"这一课题,结合国外研究现状以及北航软件所原有版本静态分析器所存在的问题,讨论了如何利用现有先进开发工具和开发方法设计并实现了一个新的静态分析器,可以支持多种静态分析以及支持代码动态插装等多项功能,同时还可以为进一步扩充后端信息提取功能保留充分的扩展性.该文首先简要介绍了国内外相关领域的研究现状,以及北航软件所旧版静态分析器的不足之处,说明了开发一个新的静态分析器的必要性和可行性.然后在说明新版静态分析器的具体功能需求后,逐步说明设计和实现中的方案和过程.该文详细讲座了在体系结构设计方面,采用较为先进的分析器自动生成工具PCTTs,并使用管道化与面向对象设计方法后,对于增加系统的模块化程度,提高系统的可靠性和可维护性的促进作用.然后说明了在设计开发中涉及到的各类C++扩展识别、函数重载解析、名字空间识别、二义性语法识别等一些重要语言识别分析技术.该文给出了静态信息提取方案和动态插装功能的支持方案.接着重点描述了开发过程中如何解决预处理、语法分析以及静态信息提取等关键点的优化问题.还分别给出了系统在语言分析、静态信息提取和动态插装支持三个重要功能方面的实际评测结果.此外,考虑到系统的复杂性,以及在系统稳定性方面的需求,该文介绍了我们在保证和评测静态分析器的质量方面所做的工作.
其他文献
本文针对支持向量机目前存在的若干关键问题展开深入的研究,涉及支持向量机的训练、分类、模型选择和多分类器构造等方面,并将研究成果应用于人脸识别问题中。取得的创新性成果
本论文的目的是利用GIS技术和相关的无线电波传播预测模型来研究无线电波的传播现象。预测的结果以直观的方式输出,这将有助于专业人员建立和优化移动通信系统。  本论文对
数据中心运行着多种类型的应用,例如社交网络、大数据分析、企业应用。这些应用对存储系统的要求(持久性、一致性和性能等)各有不同。随着存储技术的发展,存储层次结构的深度不断
数据挖掘,又称数据库中的知识发现,作为一门新兴的研究领域,主要目的是从数据集合中发现隐含的、事先未知的、对决策有潜在价值的用户感兴趣的知识,数据挖掘是当前数据库领域中最
分布式系统由于具备高吞吐信息服务和海量数据处理能力,在科学计算和金融等领域需求迅猛增长。但随着机器的更新换代及为了满足应用的不同计算需求,分布式集群面临两大挑战,即下
随着互联网的飞速发展,网络中的Web应用也呈现出急剧增长趋势。随着Web应用资源需求的不断增加,各类增值服务迫切要求为其提供基于利润收益的有竞争力的区分服务,而不应该再
随着信息技术和管理理论的发展以及计算机和网络的广泛应用,工作流技术正在成为计算机应用领域的一个新的研究热点。工作流技术起源于办公自动化,后来广泛的应用于图像处理、文
近年来,随着各类信息化设备的普及,设备所产生的数据总规模呈指数级增长。大数据技术为海量数据提供了存储、处理、应用以及可视化等各类功能,赋予用户从各种类型数据中挖掘有价
P2P网络实质上是一个用于分布式对象存储、搜索和共享的覆盖网络。随着P2P应用的日益广泛,例如分布式计算、协同作业和分布式存储,开发这些应用程序需要可靠、有序的组播消息
该文在现有的元数据标准和实现系统的基础上,先对元数据的内容从不同角度进行了研究,接着分析了如何基于XML技术来管理元数据,然后描述了一个基于XML的地理信息元数据系统的