Premium
HVM TP : A time predictable and portable java virtual machine for hard real‐time embedded systems
Author(s) -
Luckow Kasper Søe,
Thomsen Bent,
Korsholm Stephan Erbs
Publication year - 2016
Publication title -
concurrency and computation: practice and experience
Language(s) - English
Resource type - Journals
SCImago Journal Rank - 0.309
H-Index - 67
eISSN - 1532-0634
pISSN - 1532-0626
DOI - 10.1002/cpe.3828
Subject(s) - computer science , java , programming language , bytecode , operating system , java bytecode , embedded java , static timing analysis , set (abstract data type) , strictfp , context (archaeology) , virtual machine , real time java , automaton , embedded system , java annotation , theoretical computer science , paleontology , biology
Summary We present HVM TP , a time predictable and portable Java virtual machine (JVM) implementation with applications in resource‐constrained, hard real‐time embedded systems, which implements all levels of the safety critical Java (SCJ) specification. Time predictability is achieved by a combination of time‐predictable algorithms, exploiting the programming model of the SCJ profile and harnessing static knowledge of the hosted SCJ system. This paper presents HVM TP in terms of its design and capabilities and demonstrates how a complete timing model of the JVM represented as a network of timed automata can be obtained using the tool T ETA SARTS JVM . The timing model readily integrates with the rest of the T ETA SARTS tool set for temporal verification of SCJ systems. We will also show how a complete timing scheme in terms of safe worst‐case execution times and best‐case execution times of the Java bytecodes can be derived from the model. Furthermore, we take a first look at how to support the new Java 8 language feature of Lambda expressions in a SCJ context – we look in particular at how the invokedynamic bytecode can be implemented in a time‐predictable way and integrated in HVM TP . Copyright © 2016 John Wiley & Sons, Ltd.