DocumentCode
3454554
Title
Programming deterministic reactive systems with Synchronous Java
Author
Motika, Christian ; von Hanxleden, Reinhard ; Heinold, Mirko
Author_Institution
Dept. of Comput. Sci., Christian Albrechts Univ. zu Kiel, Kiel, Germany
fYear
2013
fDate
19-21 June 2013
Firstpage
1
Lastpage
8
Abstract
A key issue in the development of reliable embedded software is the proper handling of reactive control-flow, which typically involves concurrency. Java and its thread concept have only limited provisions for implementing deterministic concurrency. Thus, as has been observed in the past, it is challenging to develop concurrent Java programs without any deadlocks or race conditions. To alleviate this situation, the Synchronous Java (SJ) approach presented here adopts the key concepts that have been established in the world of synchronous programming for handling reactive control-flow. Thus SJ not only provides deterministic concurrency, but also different variants of deterministic preemption. Furthermore SJ allows concurrent threads to communicate with Esterel-style signals. As a case study for an embedded system usage, we also report on how the SJ concepts have been ported to the ARM-based Lego Mindstorms NXT system.
Keywords
Java; concurrency control; embedded systems; object-oriented programming; ARM-based Lego Mindstorms NXT system; Esterel-style signals; Synchronous Java; concurrent Java programs; deterministic concurrency; deterministic preemption; deterministic reactive systems programming; embedded software development; embedded system usage; reactive control-flow handling; synchronous programming; Concurrent computing; Instruction sets; Java; Monitoring; Real-time systems; Switches; Synchronization;
fLanguage
English
Publisher
ieee
Conference_Titel
Object/Component/Service-Oriented Real-Time Distributed Computing (ISORC), 2013 IEEE 16th International Symposium on
Conference_Location
Paderborn
Type
conf
DOI
10.1109/ISORC.2013.6913222
Filename
6913222
Link To Document