Skip to main content

A New Facility for Dynamic Control of Program Execution: DELI

  • Conference paper
  • First Online:
Embedded Software (EMSOFT 2002)

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 2491))

Included in the following conference series:

Abstract

The DELI (Dynamic Execution Layer Interface) provides fine-grain control over the execution of programs, by allowing its clients to observe and optionally manipulate every single instruction at run time. It accomplishes this by opening up an interface to the layer between the execution of application software and hardware. To avoid the 100x implicit slowdown, DELI uses a technique typical of modern emulators: it caches fragments of the executable and always runs out of that cache. Unlike previous systems, DELI exposes the caching through a common interface, so that emulators themselves can take advantage of other DELI clients. This enables mixing emulation with already existing services and native code. In this paper, we describe the basic aspects of DELI: the underlying caching and linking mechanism, the Hardware Abstraction Mechanism (HAM), the Binary-Level Translation (BLT) infrastructure, and the Application Programming Interface (API). We also cover some uses, such as ISA emulation and software patching. Finally, we present emulation results of a PocketPC system on an embedded VLIW processor, where we achieve almost-native performance, and show how to mix-and-match native and emulated code.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. V. Bala, E. Duesterwald, S. Banerjia. Dynamo: a transparent dynamic optimization system. In SIGPLAN Conf. on Programming Language Design and Implementation, pp1–12, 2000.

    Google Scholar 

  2. T. Baji, N. Kawashimo, I. Kawasaki, and K. Noguchi. SuperH and SuperH-DSP Microprocessors for the Mobile Computing Age. Hitachi Review, Volume 46 No 1. Feb 1997.

    Google Scholar 

  3. W. Chen, S. Lerner, R. Chaiken, and D. Gillies. Mojo: A dynamic optimization system. In Proc. of the 3rd Workshop on Feedback-Directed and Dynamic Optimization, Dec. 2000.

    Google Scholar 

  4. R.F. Cmelik and D. Keppel. Shade: a fast instruction set simulator for execution profiling. Tech. Report UWCSE-93-06-06, Dept. Comp.Science and Eng., Univ. Washington. 1993

    Google Scholar 

  5. D. Deaver, R. Gorton, and N. Rubin. Wiggins/Redstone: An on-line program specializer. In Hot Chips 11, Palo Alto, CA, Aug. 1999.

    Google Scholar 

  6. D. Ditzel. Transmeta’s Crusoe: Cool chips for mobile computing. In Hot Chips 12: Stanford University. Aug. 2000.

    Google Scholar 

  7. K. Ebcioglu and E. Altman. DAISY: Dynamic compilation for 100% architectural compatibility. In Proceedings of the 24th Annual International Symposium on Computer Architecture. Pages 26–37, 1997.

    Google Scholar 

  8. K. Ebcioglu, E.R. Altman, E. Hokenek. A JAVA ILP Machine Based on Fast Dynamic Compilation. IEEE MASCOTS International Workshop on Security and Efficiency Aspects of Java. Eilat, Israel, January 9–10, 1997.

    Google Scholar 

  9. P. Faraboschi, G. Brown., J. Fisher., G. Desoli, F. Homewood. Lx: A Technology Platform for Customizable VLIW Embedded Processing. Proc. 27 th International Symposium on Computer Architecture (ISCA27). Vancouver, June 2000

    Google Scholar 

  10. P. Faraboschi, F. Homewood, ST200: A VLIW Architecture for Media-Oriented Applications, Microprocessor Forum 2000, October 9–13 2000, San Jose, CA

    Google Scholar 

  11. J.A. Fisher. Walk-time techniques: Catalyst for architectural change. Computer, 30(9):40–42, September 1997.

    Google Scholar 

  12. M.R. Guthaus, J.S. Ringenberg, D. Ernst, T.M. Austin, T. Mudge and R.B. Brown. Mi-Bench: A Free, Commercially Representative Embedded Benchmark Suite. IEEE 4th Annual Workshop on Workload Characterization, December 2, 2001, Austin, TX

    Google Scholar 

  13. Klaiber. The Technology Behind Crusoe Processors. © 2000 Transmeta Corporation. Available as: http://www.transmeta.com/pdf/white_papers/paper_aklaiber_19jan00.pdf.

  14. T. Lindholm, Frank Yellin. The Java Virtual Machine Specification, Second Edition.

    Google Scholar 

  15. Microsoft Corp. NET specifications. Available at http://www.microsoft.com/net/

  16. Robinson. Why Dynamic Translation? © 2x001 Transitive Technologies. Available as: http://www.transitives.com/downloads/WhyDynamic Translation1.pdf.

  17. Srivastava H. Edwards, H. Vo. Vulcan: Binary translation in a distributed environment. Technical Report MSR-TR-2001-50, Microsoft Research, 2001.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2002 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Desoli, G., Mateev, N., Duesterwald, E., Faraboschi, P., Fisher, J. (2002). A New Facility for Dynamic Control of Program Execution: DELI. In: Sangiovanni-Vincentelli, A., Sifakis, J. (eds) Embedded Software. EMSOFT 2002. Lecture Notes in Computer Science, vol 2491. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-45828-X_23

Download citation

  • DOI: https://doi.org/10.1007/3-540-45828-X_23

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-44307-0

  • Online ISBN: 978-3-540-45828-9

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics