skip to main content
research-article

Addressing the challenges of DBT for the ARM architecture

Published: 19 June 2009 Publication History

Abstract

Dynamic binary translation (DBT) can provide security, virtualization, resource management and other desirable services to embedded systems. Although DBT has many benefits, its run-time performance overhead can be relatively high. The run-time overhead is important in embedded systems due to their slow processor clock speeds, simple microarchitectures, and small caches. This paper addresses how to implement efficient DBT for ARM-based embedded systems, taking into account instruction set and cache/TLB nuances. We develop several techniques that reduce DBT overhead for the ARM. Our techniques focus on cache and TLB behavior. We tested the techniques on an ARM-based embedded device and found that DBT overhead was reduced by 54% in comparison to a general-purpose DBT configuration that is known to perform well, thus further enabling DBT for a wide range of purposes.

References

[1]
Keith Adams and Ole Agesen. A comparison of software and hardware techniques for x86 virtualization,Int'l Conf. on Architectural Support for Programming Languages and Operating Systems. 2006.
[2]
Jose Baiocchi and Bruce Childers and Jack Davidson and Jason Hiser. Reducing Pressure in Bounded DBT Code Caches. Int'l Conf. on Compilers, Architecture, and Synthesis for Embedded Systems. 2008.
[3]
Jose Baiocchi, Bruce Childers, Jack Davidson, Jason Hiser and Jonathan Misurda. Fragment cache management for dynamic binary translators in embedded systems with scratchpad. Int'l Conf. on Compilers, Architecture, and Synthesis for Embedded Systems. 2007.
[4]
Vasanth Bala and Evelyn Duesterwald and Sanjeev Banerjia. Dynamo: a transparent dynamic optimization system. Int'l Conf. on Programming language design and implementation. 2000.
[5]
Giuseppe Desoli, Nikolay Mateev, Evelyn Duesterwald, Paolo Faraboschi, and Joseph Fisher. DELI: a new run-time control point. Int'l. Symp. on Microarchitecture. 2002. 1072--4451}
[6]
Apala Guha and Kim Hazelwood and Mary Lou Soffa. Reducing exit stub memory consumption in code caches. Int'l. Conf. on High-Performance Embedded Architectures and Compilers. 2007.
[7]
Suhas Gupta and Pranay Pratap and Huzur Saran and S. Arun-Kumar. Dynamic code instrumentation to detect and recover from return address corruption. Intl'l Workshop on Dynamic Systems Analysis. 2006.
[8]
Matthew R. Guthaus, Jeffrey S. Ringenberg, Dan Ernst, Todd M. Austin, Trevor Mudge and Richard B. Brown. MiBench: A free, commercially representative embedded benchmark suite. Workshop on Workload Characterization. 2001.
[9]
Kim Hazelwood and Artur Klauser. A dynamic binary instrumentation engine for the ARM architecture. Int'l. Conf. on Compilers, Architecture and Synthesis for Embedded Systems. 2006.
[10]
Jason Hiser, Daniel Williams, Wei Hu, Jack Davidson, Jason Mars and Bruce Childers. Evaluating Indirect Branch Handling Mechanisms in Software Dynamic Translation Systems. Int'l. Symp. on Code Generation and Optimization. 2007.
[11]
Wei Hu, Jason Hiser, Daniel Williams, Adrian Filipi, Jack Davidson, David Evans, John Knight, Anh Nguyen-Tuong and Jonathan Rowanhill. Secure and practical defense against code-injection attacks using software dynamic translation. Int'l. Conf. on Virtual Execution Environments. 2006.
[12]
Vladimir Kiriansky, Derek Bruening, Saman Amarasinghe. Secure execution via program shepherding. USENIX Security Symp. 2002.
[13]
Maebe, J., Ronsse, Michiel, De Bosschere, K. DIOTA: Dynamic Instrumentation, Optimization and Transformation of Applications. Compendium of Workshops and Tutorials Held in conjunction with PACT'02. 2002.
[14]
Arkaitz Ruiz-Alvarez and Kim Hazelwood. Evaluating the Impact of Dynamic Binary Translation Systems on Hardware Cache Performance. IEEE Int'l. Symp. on Workload Characterization. 2008.
[15]
Kevin Scott, Naveen Kumar, Bruce Childers, Jack Davidson and Mary Lou Soffa. Overhead reduction techniques for software dynamic translation. Int'l. Parallel and Distributed Processing Symp. 2004.
[16]
Kevin Scott, Naveen Kumar, Silva Velusamy, Bruce Childers, Jack Davidson and Mary Lou Soffa. Retargetable and reconfigurable software dynamic translation. Int'l. Symp. on Code Generation and Optimization. 2003.
[17]
Stacey Shogan and Bruce Childers. Compact binaries with code compression in a software dynamic translator. Int'l Conf. on Design, Automation and Test in Europe. 2004.
[18]
J. Smith and R. Nair. Virtual Machines: Versatile Platforms for Systems and Processes. Morgan Kaufmann Publishers Inc. 2005.
[19]
Swaroop Sridhar, Jonathan Shapiro, Eric Northup and Prashanth Bungale. HDTrans: an open source, low-level dynamic instrumentation system. Int'l Conf. on Virtual Execution Environments. 2006.
[20]
Qiang Wu, Margaret Martonosi, Douglas W. Clark, Vijay Janapa Reddi, Dan Connors, Youfeng Wu, Jin Lee and David Brooks. Dynamic-Compiler-Driven Control for Microprocessor Energy and Performance. IEEE Micro. 2006. 26.(1)
[21]
Qiang Wu, V.J. Reddi, Youfeng Wu, Jin Lee, Dan Connors, David Brooks, Margaret Martonosi and Douglas Clark. A dynamic compilation framework for controlling microprocessor energy and performance. Int'l. Symp. on Microarchitecture. 2005.
[22]
Shukang Zhou, Bruce Childers and Mary Lou Soffa. Planning for code buffer management in distributed virtual execution environments. Int'l Conf. on Virtual Execution Environments. 2005.

Cited By

View all

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM SIGPLAN Notices
ACM SIGPLAN Notices  Volume 44, Issue 7
LCTES '09
July 2009
176 pages
ISSN:0362-1340
EISSN:1558-1160
DOI:10.1145/1543136
Issue’s Table of Contents
  • cover image ACM Conferences
    LCTES '09: Proceedings of the 2009 ACM SIGPLAN/SIGBED conference on Languages, compilers, and tools for embedded systems
    June 2009
    188 pages
    ISBN:9781605583563
    DOI:10.1145/1542452
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 19 June 2009
Published in SIGPLAN Volume 44, Issue 7

Check for updates

Author Tags

  1. arm
  2. dynamic binary translation
  3. virtualization

Qualifiers

  • Research-article

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)12
  • Downloads (Last 6 weeks)2
Reflects downloads up to 15 Jan 2025

Other Metrics

Citations

Cited By

View all

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media