有效路径剖析技术研究

来源 :东南大学 | 被引量 : 0次 | 上传用户:yuanxb2008
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
路径剖析是动态分析的一项重要技术,通过获取和分析程序中各条路径的执行次数,在编译优化、软件调试和测试等诸多方面发挥重要作用。路径剖析采用在待剖析程序中插装探针的方式以跟踪执行,并使用对路径进行编码的方式以高效地获取剖析结果。已有的研究工作较好地解决了无环路径的剖析问题,但是欠缺处理循环的能力,或者不能剖析有环路径,或者剖析的结果不精确,或者剖析有环路径的数目有着严重的限制。由于程序中普遍存在着循环,不能精确地获取循环路径的执行情况限制了剖析结果的完整性,进而限制了剖析技术的应用。   本文针对现有技术剖析能力不足的问题,对使用单个探针变量剖析过程内路径的方法进行了改进,在一定程度上提升了对有环路径的剖析能力,可以在增加较少的空间耗费和时间耗费的基础上,精确地获取较多有环路径的剖析结果。主要工作包括:(1)在过程内全路径剖析方面,研究新的路径编码和探针插装算法;(2)在过程内选择性路径剖析方面,研究处理有环的兴趣路径并提升剖析效率;(3)在过程间剖析方面,研究如何进行方法级剖析以及如何在剖析中处理多态调用;(4)研究有环路径剖析在多个领域的应用。   论文的主要成果表现在以下几个方面:   (1)在过程内全路径剖析方面,针对获取所有路径剖析结果的问题,提出了PAP方法,改进了现有路径编码的计算方式及其实现方式,保证了所有有环路径的唯一编码,进而保证有环路径的精确剖析结果。该方法使用记录断点的方式来应对循环路径编码过程中可能出现的探针变量溢出问题,并取得了较好的效果。提出了可规约无环子图的概念,并通过在无环子图内部应用紧凑的无环剖析方法的路径编码,将成熟的无环路径剖析与PAP方法的编码相结合,达到了约减探针数目、压缩编码空间和提升探针执行效率的效果。理论和实验分析表明,与其他路径剖析方法相比,PAP在合理的耗费之内极大改善了对循环路径的剖析能力。   (2)在过程内选择性路径剖析方面,专注于剖析用户感兴趣的有环路径集合,提出了在执行中检测兴趣路径的概念,以在执行中鉴别当前路径是否为兴趣路径,并通过对非兴趣路径的“提前结束”来节约执行时间,获得更高的剖析效率;基于提前结束的思想设计了三种非兴趣路径的检测方式,分别对CFG节点的临时路径编码、可规约无环子图中的局部路径编码和非兴趣边进行实施,各种检测方式具有不同的检测耗费和检测能力;基于这些检测方式及其组合,构造了选择性剖析方法PSP的四种实用的实现方式PSP0~PSP3,可以精确的剖析带有循环的兴趣路径。通过实验比较了PSP与相关剖析方法的效率、精确度以及适用范围,检验了PSP0~PSP3在各种剖析情况下的剖析效果,并通过对这些结果的比较得出选取准则,以此指导如何应用时进行剖析方法的选择。   (3)在过程间剖析方面,在方法调用图的基础上,提出了可以描述方法间多态信息和集簇信息的调用模型PCCG,基于此模型设计了精确剖析过程间路径的方法PIP,并设计了方法集簇的方式来提升剖析效率。通过实验验证了PIP剖析有环过程间路径的能力,并通过对多种方法集簇策略进行比较得出适用的集簇策略。   (4)在调用语境编码领域,现有的调用语境编码方法使用将编码压栈的方式处理递归调用,在对深层递归调用进行编码时导致栈的深度过大,空间耗费过高和解码效率的降低。针对这个问题,结合本文的剖析方法提出了PIPCE编码方法,可以高效的处理深层递归调用的语境编码及解码。   (5)在SOA白盒测试方面,现有的白盒测试准则在计算覆盖率时,通过可达性分析将所有静态可达的实体作为覆盖目标。由于覆盖目标实际包含很多不可执行的实体,导致了即使进行了充分的测试,覆盖率依然较低的情况。本文通过研究路径剖析结果的特性,提出了更实用的SOA白盒测试策略,以指导测试进程,提高测试效率。   (6)为了有效的验证这些剖析技术的应用效果,构造了统一的路径剖析实验环境并开发了相应的支持工具JP(x)P,其中实现了本文提出的PAP、PSP、PIP和PIPCE以及多种相关文献中的算法,使用多种基准测试程序对这些方法的效率、精确性和剖析能力等多个方面进行检验,通过比较这些方法的应用效果对本文中的方法进行了实验验证,并指明了进一步探索的方向。
其他文献
目前在计算机视觉和模式识别领域内,非负矩阵分解(NMF)越来越多得被用作特征提取。NMF寻找两个小的非负矩阵,使得它们的乘积能够最好的拟合原始矩阵。而非负的这个限制导致了
无线传感器网络是由在监测区域内部署的大量多功能、低能耗、廉价的微型传感器节点组成的智能专用网络。由于具有部署灵活、扩展方便、价格低廉等优点,无线传感器网络在工业、
数字水印技术在图像、视频和文本等多媒体载体上的应用已经成熟,但在嵌入式系统、集成电路设计等领域的知识产权保护仍处于探索阶段。考虑到设计和开发一个新的FPGA芯核电路需
网络的日益普及和人们对技术的日益依赖,使得数据越来越多的以电子的形式存储在计算机中。在当今高节奏社会,无论是在大型的企业数据中,还是在网络上,如何迅速有效的找到所需
面向服务的体系架构(Service Oriented Architecture,SOA)的提出,使软件开发从传统的面向对象方式向面向服务方式转变。作为可以在组织内部的异构计算资源中被共享、组合和复
电子商务中产生越来越多的产品和交易信息,使得用户快速找到自己想要的产品变得越来越困难。同时,电子商务企业也面临着如何推荐让用户满意的产品从而提高销售量的问题。电子
基于生物感知的图像显著特征分析在二十世纪九十年代末兴起,并逐渐成为生物视觉感知领域研究的焦点。该方法结合人类心理学和生理学理论知识,基于人类视觉注意机制,模拟人眼
本文是以步态识别为应用背景,主要探讨了步态识别中的模板选择和模板上的特征提取问题。步态识别经历多年的发展,逐渐形成了基于模型和无模型两种基本稳定的框架,基于模型的
随着计算机和通信技术的迅猛发展,多媒体技术也日新月异,网络娱乐节目的内容形式从由文字和图片为主逐渐向视频过渡。网络提供给人们享受丰富多彩视频节目的同时,也给色情、
互联网的飞速发展为BBS的普及提供了条件,目前BBS己经成为一种常用的交流工具,网民可通过BBS发起新话题或回复现有的话题来表达对某个事件的看法。从一定角度来看,BBS是现实