Nothing Special   »   [go: up one dir, main page]

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
  • (2024)MEA2: A Lightweight Field-Sensitive Escape Analysis with Points-to Calculation for GolangProceedings of the ACM on Programming Languages10.1145/36897598:OOPSLA2(1362-1389)Online publication date: 8-Oct-2024
  • (2017)Demystifying Soft-Error Mitigation by Control-Flow Checking -- A New Perspective on its EffectivenessACM Transactions on Embedded Computing Systems10.1145/312650316:5s(1-19)Online publication date: 27-Sep-2017
  • (2016)Using a Multi-Tasking VM for Mobile ApplicationsProceedings of the 17th International Workshop on Mobile Computing Systems and Applications10.1145/2873587.2873596(93-98)Online publication date: 23-Feb-2016
  • Show More Cited By

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

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 25 Nov 2024

Other Metrics

Citations

Cited By

View all
  • (2024)MEA2: A Lightweight Field-Sensitive Escape Analysis with Points-to Calculation for GolangProceedings of the ACM on Programming Languages10.1145/36897598:OOPSLA2(1362-1389)Online publication date: 8-Oct-2024
  • (2017)Demystifying Soft-Error Mitigation by Control-Flow Checking -- A New Perspective on its EffectivenessACM Transactions on Embedded Computing Systems10.1145/312650316:5s(1-19)Online publication date: 27-Sep-2017
  • (2016)Using a Multi-Tasking VM for Mobile ApplicationsProceedings of the 17th International Workshop on Mobile Computing Systems and Applications10.1145/2873587.2873596(93-98)Online publication date: 23-Feb-2016
  • (2015)The Fiji MultiVM ArchitectureProceedings of the 13th International Workshop on Java Technologies for Real-time and Embedded Systems10.1145/2822304.2822312(1-10)Online publication date: 7-Oct-2015
  • (2015)Safety-Critical Java on a Time-Predictable ProcessorProceedings of the 13th International Workshop on Java Technologies for Real-time and Embedded Systems10.1145/2822304.2822309(1-9)Online publication date: 7-Oct-2015
  • (2015)A secure isolation of software activities in tiny scale systems2015 IEEE International Conference on Pervasive Computing and Communication Workshops (PerCom Workshops)10.1109/PERCOMW.2015.7134037(245-247)Online publication date: Mar-2015
  • (2013)EsseOSProceedings of the 12th International Workshop on Adaptive and Reflective Middleware10.1145/2541583.2541587(1-6)Online publication date: 9-Dec-2013
  • (2013)Design of a tailor-made memory protection unit for low power microcontrollers2013 8th IEEE International Symposium on Industrial Embedded Systems (SIES)10.1109/SIES.2013.6601495(225-231)Online publication date: Jun-2013
  • (2012)Efficient middleware for user-friendly wireless sensor network integrated development environment2012 Wireless Advanced (WiAd)10.1109/WiAd.2012.6296561(22-28)Online publication date: Jun-2012
  • (2012)Java Virtual Machine Based Infrastructure for Decent Wireless Sensor Network Development EnvironmentProceedings of the 2012 9th International Conference on Ubiquitous Intelligence and Computing and 9th International Conference on Autonomic and Trusted Computing10.1109/UIC-ATC.2012.75(120-127)Online publication date: 4-Sep-2012
  • Show More Cited By

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media