NASA Logo

NTRS

NTRS - NASA Technical Reports Server

Back to Results
Model Checking Real Time Java Using Java PathFinderThe Real Time Specification for Java (RTSJ) is an augmentation of Java for real time applications of various degrees of hardness. The central features of RTSJ are real time threads; user defined schedulers; asynchronous events, handlers, and control transfers; a priority inheritance based default scheduler; non-heap memory areas such as immortal and scoped, and non-heap real time threads whose execution is not impeded by garbage collection. The Robust Software Systems group at NASA Ames Research Center has JAVA PATHFINDER (JPF) under development, a Java model checker. JPF at its core is a state exploring JVM which can examine alternative paths in a Java program (e.g., via backtracking) by trying all nondeterministic choices, including thread scheduling order. This paper describes our implementation of an RTSJ profile (subset) in JPF, including requirements, design decisions, and current implementation status. Two examples are analyzed: jobs on a multiprogramming operating system, and a complex resource contention example involving autonomous vehicles crossing an intersection. The utility of JPF in finding logic and timing errors is illustrated, and the remaining challenges in supporting all of RTSJ are assessed.
Document ID
20060014983
Acquisition Source
Ames Research Center
Document Type
Other
Authors
Lindstrom, Gary
(Utah Univ. Salt Lake City, UT, United States)
Mehlitz, Peter C.
(NASA Ames Research Center Moffett Field, CA, United States)
Visser, Willem
(NASA Ames Research Center Moffett Field, CA, United States)
Date Acquired
August 23, 2013
Publication Date
May 25, 2005
Subject Category
Computer Programming And Software
Distribution Limits
Public
Copyright
Public Use Permitted.
No Preview Available