Higher Abstractions for Dynamic Analysis

作者: Orla Greevy , Michele Lanza , Marcus Denker

DOI: 10.7892/BORIS.19404

关键词: Computer scienceSmalltalkSoftware engineeringProgramming languageAbstraction layerRuntime verificationJavaSoftware systemDynamic compilationRuntime systemVirtual machine

摘要: The developers of tools for dynamic analysis are faced with choosing from the many approaches to gathering runtime data. Typically, involves instrumenting program under investigation record its behavior. Current byte-code based systems like Java and Smalltalk rely often on inserting into analysis. However, detailed knowledge target programming language or virtual machine is required implement tools. Obtaining exploiting this build better cumbersome distracts tool builder actual goal, which behavior a system. In paper, we argue that need adopt higher level view software system when considering task abstracting information. We focus objectoriented languages. want be able deal as collection reified first-class entities. propose achieve by introducing layer abstraction, i.e., behavioral middle layer. This has advantage collecting information not concerned low details specific machine. positive eect such twofold: one hand it provides us standard API all use, other allows developer abstract implementation technique.

参考文章(29)
Luiz Eduardo Buzato, Alexandre Oliva, The design and implementation of Guaraná usenix conference on object oriented technologies and systems. pp. 15- 15 ,(1999)
Abdelwahab Hamou-Lhadj, The Concept of Trace Summarization ,(2005)
Stephane Ducasse, Marcus Denker, Christoph Hofer, Design and Implementation of a Backward-In-Time Debugger NODe/GSEM. pp. 17- 32 ,(2006) , 10.7892/BORIS.19416
John Brant, Brian Foote, Ralph E. Johnson, Donald Roberts, Wrappers to the Rescue european conference on object oriented programming. pp. 396- 417 ,(1998) , 10.1007/BFB0054101
Gregor Kiczales, Jim Des Rivieres, Daniel G Bobrow, The Art of the Metaobject Protocol ,(1991)
O. Greevy, S. Ducasse, Correlating features and code using a compact two-sided trace analysis approach conference on software maintenance and reengineering. pp. 314- 323 ,(2005) , 10.1109/CSMR.2005.21
David Röthlisberger, Marcus Denker, Éric Tanter, Unanticipated partial behavioral reflection ISC'06 Proceedings of the 14th international conference on Advances in smalltalk. pp. 47- 65 ,(2006) , 10.1007/978-3-540-71836-9_3
Barry Redmond, Vinny Cahill, Supporting Unanticipated Dynamic Adaptation of Application Behaviour european conference on object oriented programming. pp. 205- 230 ,(2002) , 10.1007/3-540-47993-7_9
Muga Nishizawa, Shigeru Chiba, An easy-to-use toolkit for efficient Java bytecode translators generative programming and component engineering. pp. 364- 376 ,(2003) , 10.5555/954186.954208
Gregor Kiczales, Erik Hilsdale, Jim Hugunin, Mik Kersten, Jeffrey Palm, William G. Griswold, An Overview of AspectJ ECOOP 2001 — Object-Oriented Programming. pp. 327- 354 ,(2001) , 10.1007/3-540-45337-7_18