Java Bytecode Instrumentation Made Easy: The DiSL Framework for Dynamic Program Analysis

Java Bytecode Instrumentation Made Easy: The DiSL Framework for Dynamic Program Analysis
复制标题

Java 字节码检测变得简单:用于动态程序分析的 DiSL 框架

DOI:
10.1007/978-3-642-35182-2_18
复制
发表时间:
2012
期刊:
影响因子:
--
通讯作者:
P. Tuma
P. Tuma
中科院分区:
--
文献类型:
--
作者:
L. Marek;Y. Zheng;D. Ansaloni;A. Sarimbekov;W. Binder;P. Tuma

文献摘要

参考文献

被引文献

相似文献

许多软件开发工具(例如,分析器、调试器、测试工具)和框架(例如,方面编织器)基于字节码插装技术。虽然有许多低级字节码操作库支持此类工具和框架的开发,但它们通常只提供低级抽象,并且需要Java虚拟机的详细知识。此外,它们通常缺乏使用完整字节码覆盖的加载时检测所需的基础设施,以确保每个具有字节码表示的方法都得到检测。在本文中,我们介绍了DSL,这是一种领域特定的方面语言和字节码插装框架,它协调了语言的高表达能力、高抽象水平和生成代码的效率。我们通过一个具体的案例分析来说明DSL的优势。DSL框架是开源的,已经在几个研究项目中成功使用。
Many software development tools (e.g., profilers, debuggers, testing tools) and frameworks (e.g., aspect weavers) are based on bytecode instrumentation techniques. While there are many low-level bytecode manipulation libraries that support the development of such tools and frameworks, they typically provide only low-level abstractions and require detailed knowledge of the Java Virtual Machine. In addition, they often lack the necessary infrastructure for load-time instrumentation with complete bytecode coverage to ensure that each method with a bytecode representation gets instrumented. In this paper we give an introduction to DiSL, a domain-specific aspect language and framework for bytecode instrumentation that reconciles high expressiveness of the language, high level of abstraction, and efficiency of the generated code. We illustrate the strengths of DiSL with a concrete analysis as a case study. The DiSL framework is open-source and has been successfully used in several research projects.
DOI: 10.1007/3-540-45102-1_16
发表时间: 2000-06
期刊: --
影响因子: --
作者:
S. Chiba
通讯作者: S. Chiba
通过面向方面的编程实现灵活高效的分析
DOI: --
发表时间: 2011
期刊: Concurrency and Computation
影响因子: --
作者:
Walter Binder;Danilo Ansaloni;A. Villazón;Philippe Moret
通讯作者: Philippe Moret
ECOOP 2000 — 面向对象编程
DOI: --
发表时间: 2000
期刊: Lecture Notes in Computer Science
影响因子: --
作者:
E. Bertino
通讯作者: E. Bertino
DOI: 10.1007/bfb0053381
发表时间: 1997-01-01
期刊: ECOOP'97: OBJECT-ORIENTED PROGRAMMING
影响因子: --
作者:
Kiczales, G;Lamping, J;Irwin, J
通讯作者: Irwin, J
使用 AspectJ 进行分析
DOI: --
发表时间: 2005
期刊:
影响因子: --
作者:
David J. Pearce;Matthew Webster;R. Berry;P. Kelly
通讯作者: P. Kelly