Proving the Absence of RTSJ Related Runtime Errors through Data Flow Analysis

Fridtjof Siebert


13 Oct 2006
JTRES'06 - The 4th International Workshop on Java Technologies for Real-time and Embedded Systems - JTRES 2006 - Paris, France



The Real-Time Specification for Java (RTSJ) introduces region based memory management to avoid the need for garbage collection. This region based memory management, however, introduces new possible runtime errors. To ensure that an application developed with the Real-Time Specification for Java executes correctly, it has to be proven that no runtime errors occur.
The use of program-wide pointer analysis for the proof of absence of runtime error conditions such as null pointer uses or illegal casts is still not widespread. Current uses of program-wide pointer analysis focus on applying the results for optimisations in compilers, where a low accuracy of the results leads to missed opportunities for optimisation, which is often tolerable.
This papers presents the application of a program-wide data flow analysis to prove the absence of memory related runtime errors such as those introduced by the RTSJ.

Download: PDF icon PDF (136kB)