AspectJ程序分析及编织优化相关技术研究

来源 :东南大学 | 被引量 : 0次 | 上传用户:wjc_0758
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
AspectJ是一门新的程序设计语言,它是在Java语言的基础上扩充了AOP系统而来的。AspectJ语言的面向方面程序设计方法能够弥补传统面向对象技术在模块化软件中横切关注点方面的不足,因此它不仅是人们研究AOP语言的主要平台,在现实中也有着广泛的应用。 AspectJ语言既对程序分析领域提出了新问题,也对传统的分析提出了新的挑战。我们对AspectJ程序的面向方面调用图及其构造,以及动态通知的编织优化进行了深入的研究,并按照新的需求重新考虑了Java程序类型分析和指向分析等问题。 论文的主要研究成果包括: (1)提出了基于SAT求解的Java程序类型分析的新方法,该方法是流敏感、属性敏感以及上下文敏感的,能够在复杂度可接受的情况下构造出更加精确的程序调用图。方法的基本思想是将程序抽象为命题逻辑公式,然后利用SAT求解器求解来完成分析。我们以方法为单位进行抽象,首先将方法转换成SSA扩展形式,然后将变量和属性抽象为布尔向量,类型被编码为具体的向量,相关语句的公式通过联结符“∧”联结成方法的公式。我们通过求取方法抽象的概要进一步缩小方法公式的规模并化简推导过程。对于方法概要公式,既可以单独求解(过程内分析),也可以按照上下文不敏感或敏感的方式联结起来求解(过程间分析)。 (2)提出了基于SAT求解的Java程序指向分析的新方法,该方法同样是流敏感、属性敏感以及上下文敏感的,能够有效缓解传统方法精确分析时的状态空间爆炸问题。方法的基本思想和主要分析流程与基于SAT求解的Java程序类型分析方法相同。主要区别在于指向分析方法是一个反复迭代、逐步求精的过程,它利用已有的分析结果精化当前的方法公式,再次组成程序的公式并求解,从而获得更加精确的分析结果,如此反复直至达到稳定。 (3)提出了适合AspectJ程序分析的面向方面调用图,该调用图能够表示AspectJ语言定义的多种程序执行事件,并且能够在上下文不敏感的情况下间接表示出与节点相关的部分对象的动态类型,解决了传统上下文不敏感调用图的缺陷。我们在传统调用图的基础上增加了节点的种类,定义了节点的类型并区分静态节点类型和动态节点类型,另外还定义了边的种类。我们将基于SAT求解的Java程序类型分析方法用于上下文不敏感面向方面调用图的构造。对于基程序和方面程序中的通知,我们采用基于SAT的方法分析。对于通知在程序中的织入点,我们通过对切点做快速的解析来估计。对于静态通知,我们能够准确的估计通知的织入点,但对于动态通知,我们只能估计出所有可能的织入点。要想进一步提高动态通知织入点的估计精度,可以运用我们提出的动态通知编织优化方法。 (4)提出了基于上下文不敏感面向方面调用图的AspectJ程序动态通知编织优化方法,相比较其它优化方法,该方法考虑了具有分别与对象的动态类型和程序运行时调用栈有关的两类动态性的通知的编织优化。我们的方法在上下文不敏感面向方面凋用图上求解程序运行到可能织入点时的调用栈表达式,并利用面向方面调用图的动态类型推导能力推导调用栈表达式中节点的所有可能的类型,然后将该表达式与切点匹配,若切点包含表达式中的所有模式,则将通知调用无条件织入该节点;若切点不包含其中任一种模式,则通知调用不织入;至于其它情况,通知调用仍需条件织入。
其他文献
从Internet出现以来,电子邮件就是Internet上最重要的服务之一。如今通过电子邮件进行信息交流,已经成为人们联系沟通的重要手段,而电子邮件的安全问题也越来越得到使用者的重视
Feedbacks given by teachers is possibly a common instruction in second language writing classes, to help students make progress in writing. At one time, feedbac
生鲜食品具有易变质、流通效率低等特点,冷链可以用于保持生鲜食品的新鲜度,其与普通物流的区别不仅在于食品对卫生环境的要求极高,更重要的是易腐食品对温度与时间控制有严格的
现如今网络已经无处不在了。人们已经习惯于通过网络获取自己感兴趣的东西——包括音乐。传统的音乐检索方法通常是根据歌曲的名字或者歌手的名字来进行检索。本文则描述如何
党的十九大报告指出,随着中国日益走近世界舞台中心,要构建中国特色大国外交,形成全方位、多层次、立体化的外交布局,为我国发展营造良好外部条件。教育外交兼具教育和外交两方面的基本属性,相较于其他外交形式,其主要特点表现在“通”“柔”“惠”“久”四个方面。  一是“通”,即教育外交具有联通性。教育具有“通天下之不通”的教化功用,教育外交讲求“以文化人”和“以文育人”,比其他外交形式更具有“水滴石穿”和“
期刊
自动阅卷是以计算机技术为依托,由机器自动完成对学生答卷评阅的全新阅卷模式。本文开发了基于数字图像处理技术的自动化扫描阅卷系统,实现了试卷制作、试卷图像信息识别以及
[摘 要] 构建中国话语体系是文化强国建设的当务之急,中国走向国际舞台需要平等交流的对话资格。赢得平等对话资格,高等教育如何作为?首先,必须明确培养什么样的人才;其次,正确认识借鉴国外与自我创新;第三,客观看待对传统的批判与学习;第四,研究自己、自己研究,形成特色;第五,彻底转变教学思维,如转变应试思维、灌输教育、为老师学、消极式尊师心态;最后,合理设计教学课程,增设传统思想与文化课程、提升双语教
This paper is concerned with the problem of H-infinity filtering for discrete-time switched linear systems under arbitrary switching laws.New sufficient conditi
近年来,随着互联网和Web2.0技术的高速发展以及社会信息化不断推进,网络日趋成为信息扩散的新途径,特别是在虚拟的社区网络中人们对当今社会的热点信息展开了充分的讨论。这种具
随着信息技术的发展,以电子形式存在的文本信息已经成为人们主要的信息来源。人们迫切需要能够从Web上快速、有效地发现资源和知识的工具。近年来针对文本数据的文本挖掘已逐