Title: Understanding the runtime behavior of complex systems: A quest for efficient and modular program analysis tools
Dynamic program analysis tools based on code instrumentation serve many important software engineering tasks such as profiling, debugging, testing, program comprehension, and reverse engineering. Unfortunately, constructing new analysis tools is unduly difficult, because existing frameworks offer little or no support to the programmer beyond the incidental task of instrumentation.
We observe that existing dynamic analysis tools re-address recurring requirements in their essential task: of maintaining state which captures some property of the analyzed program. In this talk I present a general architecture for dynamic program analysis tools which treats the maintenance of analysis state in a modular fashion, consisting of mappers decomposing input events spatially, and updaters aggregating them over time. This architecture captures the requirements of a wide variety of existing analysis tools.
Walter Binder is an Associate Professor in the Faculty of Informatics, University of Lugano, Switzerland. He holds an MSc., a PhD., and a Venia Docendi from the Vienna University of Technology, Austria. His main research interests are in the area of program transformations, virtual execution environments, aspect-oriented programming, profiling, resource management, and service-oriented computing.