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 2010 Publication 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.
[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.
[3]
G. Bollella, B. Brosgol, J. Gosling, P. Dibble, S. Furr, and M. Turnbull. The Real-Time Specification for Java. 1st edition, Jan. 2000.
[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.
[5]
M. Golm, M. Felser, C. Wawersich, and J. Kleinöder. The JX operating system. In 2002 USENIX ATC, pages 45--58, June 2002.
[6]
T. Harbaum. NanoVM - Java for the AVR, July 2006. http://www.harbaum.org/till/nanovm.
[7]
Java Native Interface Specification 1.1. Sun Microsystems, Aug. 2005. URL: http://tinyurl.com/2wxzf9.
[8]
JSR 121: Application Isolation API Specification. Sun Microsystems JCP, June 2006.
[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.
[10]
J2ME building blocks for mobile devices --- white paper on KVM and the connected, limited device configuration (CLDC), May 2000.
[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.
[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.
[13]
OSEK/VDX Group. OSEK implementation language specification 2.5. Technical report, OSEK/VDX Group, 2004.
[14]
OSEK/VDX Group. Operating system specification 2.2.3. Technical report, OSEK/VDX Group, Feb. 2005.
[15]
G. Phipps. Comparing observed bug and productivity rates for Java and C++. Softw. Pract. Exper., 29(4):345--358, 1999.
[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.
[17]
E. Quinn and C. Christiansen. Java Pays -- Positively. IDC Bulletin W16212, May 1998.
[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.
[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.
[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.
[21]
Sun Microsystems. Virtual machine specification, Java Card platform version 2.2.2, Mar. 2006.
[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.
[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.
[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.

Cited By

View all

Recommendations

Comments

Information & Contributors

Information

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
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 for this article.

Check for updates

Author Tags

  1. AUTOSAR
  2. Java
  3. KESO
  4. OSEK/VDX
  5. embedded systems
  6. memory protection
  7. spatial isolation

Qualifiers

  • Research-article

Conference

JTRES '10

Acceptance Rates

Overall Acceptance Rate 50 of 70 submissions, 71%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)2
  • Downloads (Last 6 weeks)0
Reflects downloads up to 29 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

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media