skip to main content
10.1145/1542452.1542472acmconferencesArticle/Chapter ViewAbstractPublication PagescpsweekConference Proceedingsconference-collections
research-article

Addressing the challenges of DBT for the ARM architecture

Published:19 June 2009Publication 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. Google ScholarGoogle ScholarDigital LibraryDigital Library
  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. Google ScholarGoogle ScholarDigital LibraryDigital Library
  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. Google ScholarGoogle ScholarDigital LibraryDigital Library
  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. Google ScholarGoogle ScholarDigital LibraryDigital Library
  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} Google ScholarGoogle ScholarDigital LibraryDigital Library
  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. Google ScholarGoogle ScholarDigital LibraryDigital Library
  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. Google ScholarGoogle ScholarDigital LibraryDigital Library
  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. Google ScholarGoogle ScholarDigital LibraryDigital Library
  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. Google ScholarGoogle ScholarDigital LibraryDigital Library
  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. Google ScholarGoogle ScholarDigital LibraryDigital Library
  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. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. Vladimir Kiriansky, Derek Bruening, Saman Amarasinghe. Secure execution via program shepherding. USENIX Security Symp. 2002. Google ScholarGoogle ScholarDigital LibraryDigital Library
  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.Google ScholarGoogle Scholar
  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.Google ScholarGoogle Scholar
  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.Google ScholarGoogle Scholar
  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. Google ScholarGoogle ScholarDigital LibraryDigital Library
  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. Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. J. Smith and R. Nair. Virtual Machines: Versatile Platforms for Systems and Processes. Morgan Kaufmann Publishers Inc. 2005. Google ScholarGoogle ScholarDigital LibraryDigital Library
  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. Google ScholarGoogle ScholarDigital LibraryDigital Library
  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) Google ScholarGoogle ScholarDigital LibraryDigital Library
  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. Google ScholarGoogle ScholarDigital LibraryDigital Library
  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. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Addressing the challenges of DBT for the ARM architecture

              Recommendations

              Comments

              Login options

              Check if you have access through your login credentials or your institution to get full access on this article.

              Sign in
              • Published in

                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
                • 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

                Copyright © 2009 ACM

                Publisher

                Association for Computing Machinery

                New York, NY, United States

                Publication History

                • Published: 19 June 2009

                Permissions

                Request permissions about this article.

                Request Permissions

                Check for updates

                Qualifiers

                • research-article

                Acceptance Rates

                LCTES '09 Paper Acceptance Rate18of81submissions,22%Overall Acceptance Rate116of438submissions,26%

              PDF Format

              View or Download as a PDF file.

              PDF

              eReader

              View online with eReader.

              eReader
              About Cookies On This Site

              We use cookies to ensure that we give you the best experience on our website.

              Learn more

              Got it!