Skip to main content

Towards a High Integrity Real-Time Java Virtual Machine

  • Conference paper
On The Move to Meaningful Internet Systems 2003: OTM 2003 Workshops (OTM 2003)

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

Abstract

This paper defines a run-time architecture for a Java Virtual Machine (JVM) that supports the Ravenscar-Java profile (RJVM). This architecture introduces an early class loading and verifying model that can facilitate the predictable efficient execution of Java applications, detect program errors at the initialization phase and prevent errors occurring during the mission phase. A pre-emptive fixed priority scheduler is provided which supports the immediate ceiling priority protocol to facilitate efficient resource usage. An economical predictable memory management model based on heap, immortal and linear time scoped memory (LTM) is presented. The integration of our proposed runtime architecture and the KVM is discussed.

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 84.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 109.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. Bollela, G., Brosgol, B., Dibble, P., Furr, S., Gosling, J., Hardin, D., Turnbull, M.: The Real-time Specification for Java. Addison-Wesley, Reading (2000)

    Google Scholar 

  2. Bollella, G., Reinholtz, K.: Scoped Memory. In: IEEE International Symposium on Object- Oriented Real-Time Distributed Computing (2002)

    Google Scholar 

  3. Puschner, P., Wellings, A.J.: A Profile for High-integrity Real-time Java Programs. In: IEEE International Symposium on Object-Oriented Real-Time Distributed Computing (2001)

    Google Scholar 

  4. Kwon, J., Wellings, A.J., King, S.: Ravenscar-Java: A High Integrity Profile for Real- Time Java. In: Proceeding of the Joint ACM Java Grande – ISCOPE 2002 Conference (2002)

    Google Scholar 

  5. Kwon, J., Welling, A.J., King, S.: Predictable Memory Utilization in the Ravenscar- Java Profile. In: IEEE International Symposium on Object-Oriented Real-Time Distributed Computing (2003)

    Google Scholar 

  6. Bernat, G., Burns, A., Wellings, A.J.: Portable Worst-Case Execution Time Analysis Using Java Byte Code. In: Proceedings of the 12th EuroMicro Conference on Real-Time Systems, Stockholm (June 2000)

    Google Scholar 

  7. Sun Microsystem®, Java TM 2 Platform, Micro Edition (J2ME TM) Technology for creating Mobile Devices, white paper, http://java.sun.com/products/cldc/ (accessed March 2003)

  8. Sun Microsystems, Connected, Limited Device Configuration, Specification Version 1.0a, http://java.sun.com/products/cldc/ (accessed March 2003)

  9. Lindholm, T., Yellin, F.: The Java Virtual Machine Specification(2e). Addison-Wesley, Reading (1999)

    Google Scholar 

  10. Yellin, F.: Inside the The K Virtual Machine (KVM). Presentation slice, http://java.sun.com/javaone/javaone2001/pdfs/1113.pdf (accessed April 2003)

  11. Venners, B.: Inside the Java Virtual Machine. McGraw-Hill, New York (1999)

    Google Scholar 

  12. Jones, R., Lins, R.: Garbage Collection-Algorithms for Automatic Dynamic Memory Management. John Wiley & Sons, Chichester (1996)

    MATH  Google Scholar 

  13. Burns, A., Wellings, A.J.: Real-time Systems and Programming Languages: Ada 1995, Real-Time Java and Real-time POSIX. Addison Wesley Longmain, Reading (2001)

    Google Scholar 

  14. Sha, L., et al.: Priority Inheritance Protocols: An Approach to Real-time Synchronization. In: IEEE Transactions on Computers, September 1990, vol. 39(9), pp. 1175–1185 (1990)

    Google Scholar 

  15. Leroy, X.: Java Bytecode Verification: An Overview. In: Berry, G., Comon, H., Finkel, A. (eds.) CAV 2001. LNCS, vol. 2102, pp. 265–285. Springer, Heidelberg (2001)

    Chapter  Google Scholar 

  16. Wilkinson, T.J., Associates: Kaffe: A Free Virtual Machine to Run Java Code, Technical report, http://www.kaffe.org

  17. Boehm, H., et al.: Tree Benchmark for Memory Management, http://www.hpl.hp.com/personal/hans_Boehm/gc/gc_bench.html (accessed April 2003)

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2003 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Cai, H., Wellings, A.J. (2003). Towards a High Integrity Real-Time Java Virtual Machine. In: Meersman, R., Tari, Z. (eds) On The Move to Meaningful Internet Systems 2003: OTM 2003 Workshops. OTM 2003. Lecture Notes in Computer Science, vol 2889. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-39962-9_41

Download citation

  • DOI: https://doi.org/10.1007/978-3-540-39962-9_41

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-20494-7

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

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics