|
ABSTRACT
Dynamic binary instrumentation (DBI) is a powerful technique for analyzing the runtime behavior of software. While numerous DBI frameworks have been developed for general-purpose architectures, work on DBI frameworks for embedded architectures has been fairly limited. In this paper, we describe the design, implementation, and applications of the ARM version of Pin, a dynamic instrumentation system from Intel. In particular, we highlight the design decisions that are geared toward the space and processing limitations of embedded systems. Pin for ARM is publicly available and is shipped with dozens of sample plug-in instrumentation tools. It has been downloaded over 500 times since its release.
REFERENCES
Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.
| |
1
|
E. R. Altman, M. Gschwind, S. Sathaye, S. Kosonocky, A. Bright, J. Fritz, P. Ledak, D. Appenzeller, C. Agricola, and Z. Filan. BOA: The architecture of a binary translation processor. IBM Research Report RC 21665, Dec 2000.
|
 |
2
|
|
 |
3
|
Vasanth Bala , Evelyn Duesterwald , Sanjeev Banerjia, Dynamo: a transparent dynamic optimization system, Proceedings of the ACM SIGPLAN 2000 conference on Programming language design and implementation, p.1-12, June 18-21, 2000, Vancouver, British Columbia, Canada
|
| |
4
|
Leonid Baraz , Tevi Devor , Orna Etzion , Shalom Goldenberg , Alex Skaletsky , Yun Wang , Yigel Zemach, IA-32 Execution Layer: a two-phase dynamic translator designed to support IA-32 applications on Itanium®-based systems, Proceedings of the 36th annual IEEE/ACM International Symposium on Microarchitecture, p.191, December 03-05, 2003
|
| |
5
|
|
| |
6
|
|
| |
7
|
C. Cifuentes, B. Lewis, and D. Ung. Walkabout - a retargetable dynamic binary translation framework. Technical Report TR2002-106, Sun Microsystems Laboratories, Jan 2002.
|
 |
8
|
|
| |
9
|
Mourad Debbabi , Abdelouahed Gherbi , Lamia Ketari , Chamseddine Talhi , Nadia Tawbi , Hamdi Yahyaoui , Sami Zhioua, A dynamic compiler for embedded Java virtual machines, Proceedings of the 3rd international symposium on Principles and practice of programming in Java, June 16-18, 2004, Las Vegas, Nevada
|
| |
10
|
Mourad Debbabi , Abdelouahed Gherbi , Lamia Ketari , Chamseddine Talhi , Hamdi Yahyaoui , Sami Zhioua, a synergy between efficient interpretation and fast selective dynamic compilation for the acceleration of embedded Java virtual machines, Proceedings of the 3rd international symposium on Principles and practice of programming in Java, June 16-18, 2004, Las Vegas, Nevada
|
 |
11
|
|
| |
12
|
James C. Dehnert , Brian K. Grant , John P. Banning , Richard Johnson , Thomas Kistler , Alexander Klaiber , Jim Mattson, The Transmeta Code Morphing™ Software: using speculation, recovery, and adaptive retranslation to address real-life challenges, Proceedings of the international symposium on Code generation and optimization: feedback-directed and runtime optimization, March 23-26, 2003, San Francisco, California
|
| |
13
|
Giuseppe Desoli , Nikolay Mateev , Evelyn Duesterwald , Paolo Faraboschi , Joseph A. Fisher, DELI: a new run-time control point, Proceedings of the 35th annual ACM/IEEE international symposium on Microarchitecture, November 18-22, 2002, Istanbul, Turkey
|
 |
14
|
|
 |
15
|
|
 |
16
|
Paul Griffin , Witawas Srisa-an , J. Morris Chang, An energy efficient garbage collector for java embedded devices, Proceedings of the 2005 ACM SIGPLAN/SIGBED conference on Languages, compilers, and tools for embedded systems, June 15-17, 2005, Chicago, Illinois, USA
|
| |
17
|
A. Guha, K. Hazelwood, and M. L. Soffa. Reducing exit stub memory consumption in code caches. In High Performance Embedded Architectures and Compilers, Jan 2007.
|
| |
18
|
|
| |
19
|
|
| |
20
|
|
| |
21
|
Intel. Pin web pages. http://rogue.colorado.edu/Pin.
|
 |
22
|
|
 |
23
|
Chi-Keung Luk , Robert Cohn , Robert Muth , Harish Patil , Artur Klauser , Geoff Lowney , Steven Wallace , Vijay Janapa Reddi , Kim Hazelwood, Pin: building customized program analysis tools with dynamic instrumentation, Proceedings of the 2005 ACM SIGPLAN conference on Programming language design and implementation, June 12-15, 2005, Chicago, IL, USA
|
| |
24
|
|
| |
25
|
|
| |
26
|
N. Nethercote and J. Seward. Valgrind: A program supervision framework. Electronic Notes in Theoretical Computer Science, 89(2), 2003.
|
 |
27
|
Jeffrey Palm , Han Lee , Amer Diwan , J. Eliot B. Moss, When to use a compilation service?, Proceedings of the joint conference on Languages, compilers and tools for embedded systems: software and compilers for embedded systems, June 19-21, 2002, Berlin, Germany
|
 |
28
|
Ulrik Pagh Schultz , Kim Burgaard , Flemming Gram Christensen , Jørgen Lindskov Knudsen, Compiling java for low-end embedded systems, Proceedings of the 2003 ACM SIGPLAN conference on Language, compiler, and tool for embedded systems, June 11-13, 2003, San Diego, California, USA
|
| |
29
|
K. Scott , N. Kumar , S. Velusamy , B. Childers , J. W. Davidson , M. L. Soffa, Retargetable and reconfigurable software dynamic translation, Proceedings of the international symposium on Code generation and optimization: feedback-directed and runtime optimization, March 23-26, 2003, San Francisco, California
|
 |
30
|
Nik Shaylor , Douglas N. Simon , William R. Bush, A java virtual machine architecture for very small devices, Proceedings of the 2003 ACM SIGPLAN conference on Language, compiler, and tool for embedded systems, June 11-13, 2003, San Diego, California, USA
|
| |
31
|
Qiang Wu , Margaret Martonosi , Douglas W. Clark , V. J. Reddi , Dan Connors , Youfeng Wu , Jin Lee , David Brooks, A Dynamic Compilation Framework for Controlling Microprocessor Energy and Performance, Proceedings of the 38th annual IEEE/ACM International Symposium on Microarchitecture, p.271-282, November 12-16, 2005, Barcelona, Spain
[doi> 10.1109/MICRO.2005.7]
|
 |
32
|
|
CITED BY 3
|
|
|
|
|
Sharad Singhai , MingYung Ko , Sanjay Jinturkar , Mayan Moudgill , John Glossner, An integrated ARM and multi-core DSP simulator, Proceedings of the 2007 international conference on Compilers, architecture, and synthesis for embedded systems, September 30-October 03, 2007, Salzburg, Austria
|
|
|
|
|