skip to main content
10.1145/1850771.1850788acmotherconferencesArticle/Chapter ViewAbstractPublication PagesjtresConference Proceedingsconference-collections
research-article

KESO: an open-source multi-JVM for deeply embedded systems

Published:19 August 2010Publication History

ABSTRACT

Java still is a rather exotic language in the field of real-time and particularly embedded systems, though it could provide productivity and especially safety and dependability benefits over the dominating language C. The reasons for the lack of acceptance of Java in the embedded world are the high resource consumption caused by the Java runtime environment and lacking language features for low-level programming.

KESO is a JVM under LGPL license that was specifically designed for the domain of statically-configured deeply embedded systems. KESO provides a sensible selection of Java features useful to the majority of embedded applications and safe and convenient constructs for low-level programming in Java. A key feature of KESO is its Multi-JVM architecture, which allows the isolated cohabitation of different applications on one hardware platform.

The resource consumption of applications developed on the base of KESO is comparable to C applications, and its mechanisms for communicating among isolated components are efficient and encourage the actual utilization of spatial isolation.

References

  1. AUTOSAR. Specification of operating system (version 2.0.1). Technical report, Automotive Open System Architecture GbR, June 2006.Google ScholarGoogle Scholar
  2. J.-L. Béchennec, M. Briday, S. Faucou, and Y. Trinquet. Trampoline: An OpenSource implementation of the OSEK/VDX RTOS specification. In IEEE Conference on Emerging Technologies and Factory Automation, 2006. ETFA '06., pages 62--69, September 2006.Google ScholarGoogle ScholarCross RefCross Ref
  3. G. Bollella, B. Brosgol, J. Gosling, P. Dibble, S. Furr, and M. Turnbull. The Real-Time Specification for Java. 1st edition, Jan. 2000.Google ScholarGoogle Scholar
  4. E. M. Gagnon and L. J. Hendren. SableVM: A research framework for the efficient execution of Java bytecode. In Java Virtual Machine Research and Technology Symposium (JVM '01), pages 27--40, Apr. 2001. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. M. Golm, M. Felser, C. Wawersich, and J. Kleinöder. The JX operating system. In 2002 USENIX ATC, pages 45--58, June 2002. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. T. Harbaum. NanoVM - Java for the AVR, July 2006. http://www.harbaum.org/till/nanovm.Google ScholarGoogle Scholar
  7. Java Native Interface Specification 1.1. Sun Microsystems, Aug. 2005. URL: http://tinyurl.com/2wxzf9.Google ScholarGoogle Scholar
  8. JSR 121: Application Isolation API Specification. Sun Microsystems JCP, June 2006.Google ScholarGoogle Scholar
  9. G. Kiczales, J. Lamping, A. Mendhekar, C. Maeda, C. V. Lopes, J.-M. Loingtier, and J. Irwin. Aspect-oriented programming. In M. Aksit and S. Matsuoka, editors, 11th Eur. Conf. on OOP (ECOOP '97), volume 1241 of LNCS, pages 220--242, June 1997.Google ScholarGoogle Scholar
  10. J2ME building blocks for mobile devices --- white paper on KVM and the connected, limited device configuration (CLDC), May 2000.Google ScholarGoogle Scholar
  11. D. Lohmann, W. Hofer, W. Schröder-Preikschat, J. Streicher, and O. Spinczyk. CiAO: An aspect-oriented operating-system family for resource-constrained embedded systems. In 2009 USENIX ATC, pages 215--228, June 2009. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. D. Lohmann, J. Streicher, W. Hofer, O. Spinczyk, and W. Schröder-Preikschat. Configurable memory protection by aspects. In 4th W'shop on Progr. Lang. and OSes (PLOS '07), pages 1--5, Oct. 2007. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. OSEK/VDX Group. OSEK implementation language specification 2.5. Technical report, OSEK/VDX Group, 2004.Google ScholarGoogle Scholar
  14. OSEK/VDX Group. Operating system specification 2.2.3. Technical report, OSEK/VDX Group, Feb. 2005.Google ScholarGoogle Scholar
  15. G. Phipps. Comparing observed bug and productivity rates for Java and C++. Softw. Pract. Exper., 29(4):345--358, 1999. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. F. Pizlo, L. Ziarek, E. Blanton, P. Maj, and J. Vitek. High-level programming of embedded hard real-time devices. In ACM SIGOPS/EuroSys Eur. Conf. on Computer Systems 2010 (EuroSys '10), pages 69--82, Apr. 2010. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. E. Quinn and C. Christiansen. Java Pays -- Positively. IDC Bulletin W16212, May 1998.Google ScholarGoogle Scholar
  18. F. Siebert. Realtime garbage collection in the jamaicavm 3.0. In JTRES '07: Proceedings of the 5th international workshop on Java technologies for real-time and embedded systems, pages 94--103, 2007. Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. D. Simon, C. Cifuentes, D. Cleal, J. Daniels, and D. White. Java#8482; on the bare metal of wireless sensor devices: the Squawk Java virtual machine. In 2nd USENIX Int. Conf. on Virtual Execution Environments (VEE '06), pages 78--88, 2006. Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. M. Stilkerich and J. Bauer. JOSEK - an open source implementation of the OSEK/VDX API, February 2010. http://www4.cs.fau.de/Research/KESO/josek.Google ScholarGoogle Scholar
  21. Sun Microsystems. Virtual machine specification, Java Card platform version 2.2.2, Mar. 2006.Google ScholarGoogle Scholar
  22. B. L. Titzer, D. K. Lee, and J. Palsberg. Avrora: scalable sensor network simulation with precise timing. In IPSN '05: 4th Int. Conf. on Information Processing in Sensor Networks, page 67, 2005. Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. P. Ulbrich. The I4Copter project --- Research platform for embedded and safety-critical system software. http://www4.informatik.uni-erlangen.de/Research/I4Copter/, visited 2010-02-22.Google ScholarGoogle Scholar
  24. C. Wawersich, M. Stilkerich, and W. Schröder-Preikschat. An OSEK/VDX-based multi-JVM for automotive appliances. In Embedded System Design: Topics, Techniques and Trends, IFIP International Federation for Information Processing, pages 85--96, 2007.Google ScholarGoogle Scholar

Index Terms

  1. KESO: an open-source multi-JVM for deeply embedded systems

                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 Other conferences
                  JTRES '10: Proceedings of the 8th International Workshop on Java Technologies for Real-Time and Embedded Systems
                  August 2010
                  183 pages
                  ISBN:9781450301220
                  DOI:10.1145/1850771

                  Copyright © 2010 ACM

                  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 August 2010

                  Permissions

                  Request permissions about this article.

                  Request Permissions

                  Check for updates

                  Qualifiers

                  • research-article

                  Acceptance Rates

                  Overall Acceptance Rate50of70submissions,71%

                PDF Format

                View or Download as a PDF file.

                PDF

                eReader

                View online with eReader.

                eReader