Deterministic Execution of Java's Primitive Bytecode Operations

Fridtjof Siebert and Andy Walter


23 Apr 2001
Java Virtual Machine Research & Technology Symposium '01 (JVM01), Monterey, CA



For the application of Java in realtime and safety critical domains, an analysis of the worst-case execution times of primitive Java operations is necessary. All primitive operations must either execute in constant time or have a reasonable upper bound for their execution time. The difficulties that arise for a Java virtual machine and a Java compiler in this context will be presented here. This includes the implementation of Javas class and interface model, class initialization, monitors and automatic memory management.A new Java virtual machine and compiler that solves these difficulties has been implemented and its performance has been analysed.

Download: PDF icon PDF