Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
10.1145/2822304.2822305acmotherconferencesArticle/Chapter ViewAbstractPublication PagesjtresConference Proceedingsconference-collections
research-article

Supporting Multiprocessors in the Icecap Safety-Critical Java Run-Time Environment

Published: 07 October 2015 Publication History

Abstract

The current version of the Safety Critical Java (SCJ) specification defines three compliance levels. Level 0 targets single processor programs while Level 1 and 2 can support multiprocessor platforms. Level 1 programs must be fully partitioned but Level 2 programs can also be more globally scheduled. As of yet, there is no official Reference Implementation for SCJ. However, the icecap project has produced a Safety-Critical Java Run-time Environment based on the Hardware-near Virtual Machine (HVM). This supports SCJ at all compliance levels and provides an implementation of the safety-critical Java (javax.safetycritical) package. This is still work-in-progress and lacks certain key features. Among these is the ability to support multiprocessor platforms. In this paper, we explore two possible options to adding multiprocessor support to this environment: the "green thread" and the "native thread" approaches. The "native thread" approach is adopted and the design and implementation of a revised icecap SCJ run-time environment is discussed.

References

[1]
A. Armbruster, J. Baker, A. Cunei, C. Flack, D. Holmes, F. Pizlo, E. Pla, M. Prochazka, and J. Vitek, A Real-time Java virtual machine with applications in avionics. ACM Transactions on Embedded Computing Systems (TECS), 7(1):5:1--5:49, Dec. 2007.
[2]
A. Burns and A. Wellings, A schedulability compatible multiprocessor resource sharing protocol - MrsP, in ECRTS'13, 2013, pp. 282--291.
[3]
A. Burns and A. J. Wellings. Real-Time Systems and Programming Languages (Fourth Edition). Addison-Wesley Longman, 2009.
[4]
A. Burns, B. Dobbing, and G. Romanski. The Ravenscar tasking profile for high integrity real-time programs. In Proceedings of the 1998 Ada-Europe International Conference on Reliable Software Technologies, pages 263--275. Springer-Verlag, 1998.
[5]
A. Plsek, L. Zhao, V. H. Sahin, D. Tang, T. Kalibera, and J. Vitek, "Developing safety critical Java applications with oSCJ/L0," in Proceedings of the 8th International Workshop on Java Technologies for Real-Time and Embedded Systems, ser. JTRES '10. New York, NY, USA: ACM, 2010, pp. 95--101.
[6]
A. Wellings. Concurrent and Real-Time Programming in Java. John Wiley & Sons, 2004.
[7]
Aonix. Perc Pico User Manual. http://research.aonix.com/_jsc/pico-manual.4-19-08.pdf April 2008.
[8]
Atego, Atego PERC Pico -- Products -- Atego. http://www.atego.com/products/atego-perc-pico/, 2015.
[9]
D. Locke, B. S. Andersen, B. Brosgol, M. Fulton, T. Henties, J. J. Hunt, J. O. Nielsen, K. Nilsen, M. Schoeberl, J. Tokar, J. Vitek, and A. Wellings. Safety-critical Java specification, version 0.95. December 2012.
[10]
Pizlo F, Ziarek L, Blanton E, et al. High-level programming of embedded hard real-time devices{C}//Proceedings of the 5th European conference on Computer systems. ACM, 2010: 69--82.
[11]
F. Siebert, "Hard real-time garbage collection in the Jamaica Virtual Machine," in Sixth International Conference on Real-Time Computing Systems and Applications (RTCSA'99), Hong Kong, 1999.
[12]
H. Sondergaard, B. Thomsen, and A. P. Ravn. A Ravenscar Java profile implementation. In Proceedings of the 4th international workshop on Java technologies for real-time and embedded systems (JTRES 2006), pages 38--47, Paris, France, October 2006. ACM Press.
[13]
H. Søndergaard, S E. Korsholm, and A. P. Ravn. Safety-critical Java for low-end embedded platforms. In M. Schoberl and A. Wellings, editors, Proceedings of the 10th International Workshop on Java Technologies for Realtime and Embedded Systems, ACM, 2012.
[14]
J. Hunt and K. Nilsen. Safety-Critical Java: The mission approach. In M. T. Higuera-Toledano and A. J. Wellings, editors, Distributed, Embedded and Real-time Java Systems, pages 199--233. Springer US, 2012.
[15]
J. Kwon, A. J. Wellings, S. King, Ravenscar - Java: A High Integrity Profile for Real-time Java. Proceedings of the Joint ACM Java Grande Conference. ACM press, New York, 2002
[16]
K. S. Luckow, B. Thomsen, and S. E. Korsholm. HVMTP: A Time Predictable and Portable Java Virtual Machine for Hard Real-Time Embedded Systems. In Proceedings of the 12th International Workshop on Java Technologies for Real-time and Embedded Systems, JTRES '14, pages: 107:107--107:116, New York, NY, USA, 2014. ACM.
[17]
L. Zhao, D. Tang, and J. Vitek. A technology compatibility kit for safety critical Java. In Proceedings of the 7th International Workshop on Java Technologies for Real-Time and Embedded Systems, pages 160 --168. ACM, 2009.
[18]
M. Richard-Foy, T. Schoofs, E. Jenn, L. Gauthier, K. Nilsen. Use of PERC Pico for Safety Critical Java, Conference Proceedings: Embedded Real-Time Software and Systems, Toulouse, France, May 2010.
[19]
M. Schoeberl, H. Søndergaard, B. Thomsen, and A. P. Ravn. A profile for safety critical Java. In ISORC, pages 94--101. IEEE Computer Society, 2007.
[20]
M. Schoeberl. Mission modes for safety critical Java. In Proceedings of the 5th IFIP WG 10.2 international conference on Software technologies for embedded and ubiquitous systems, SEUS'07, pages 105--113, Berlin, Heidelberg, 2007. Springer-Verlag.
[21]
P. Puschner and A. J. Wellings. A Profile for High Integrity Real-Time Java Programs. In 4th IEEE International Symposium on Object-oriented Real-time distributed Computing (ISORC), 2001.
[22]
S. Korsholm, H. Søndergaard, and A. Ravn. A real-time java tool chain for resource constrained platforms. Concurrency and Computation: Practice & Experience, 2013:1--25, September 2013.
[23]
S. Korsholm. Java for Cost Effective Embedded Real-Time Software. PhD thesis, 2012.
[24]
S. Zhao, Implementing Level 2 of Safety-Critical Java, thesis, 2014, available from https://www.cs.york.ac.uk/library/proj_files/2014/MScComp/zs673/Final%20Project%20Report.pdf

Cited By

View all
  • (2020)Development Automation of Real-Time JavaACM Transactions on Embedded Computing Systems10.1145/339189719:5(1-26)Online publication date: 26-Sep-2020
  • (2019)From Java to real-time Java: a model-driven methodology with automated toolchain (invited paper)Proceedings of the 20th ACM SIGPLAN/SIGBED International Conference on Languages, Compilers, and Tools for Embedded Systems10.1145/3316482.3326360(123-134)Online publication date: 23-Jun-2019
  • (2017)Java Technologies for Cyber-Physical SystemsIEEE Transactions on Industrial Informatics10.1109/TII.2016.263080113:2(680-687)Online publication date: Apr-2017

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Other conferences
JTRES '15: Proceedings of the 13th International Workshop on Java Technologies for Real-time and Embedded Systems
October 2015
130 pages
ISBN:9781450336444
DOI:10.1145/2822304
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 the author(s) 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: 07 October 2015

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. Multiprocessor System
  2. SCJ
  3. Virtual Machine

Qualifiers

  • Research-article
  • Research
  • Refereed limited

Conference

JTRES '15

Acceptance Rates

Overall Acceptance Rate 50 of 70 submissions, 71%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)4
  • Downloads (Last 6 weeks)0
Reflects downloads up to 07 Mar 2025

Other Metrics

Citations

Cited By

View all
  • (2020)Development Automation of Real-Time JavaACM Transactions on Embedded Computing Systems10.1145/339189719:5(1-26)Online publication date: 26-Sep-2020
  • (2019)From Java to real-time Java: a model-driven methodology with automated toolchain (invited paper)Proceedings of the 20th ACM SIGPLAN/SIGBED International Conference on Languages, Compilers, and Tools for Embedded Systems10.1145/3316482.3326360(123-134)Online publication date: 23-Jun-2019
  • (2017)Java Technologies for Cyber-Physical SystemsIEEE Transactions on Industrial Informatics10.1109/TII.2016.263080113:2(680-687)Online publication date: Apr-2017

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