Automated Software Engineering
Heuristic Model Checking for Java Programs
Proceedings of the 9th International SPIN Workshop on Model Checking of Software
Evaluating Real-Time Java Features and Performance for Real-Time Embedded Systems
RTAS '02 Proceedings of the Eighth IEEE Real-Time and Embedded Technology and Applications Symposium (RTAS'02)
Concurrent and Real-Time Programming in Java
Concurrent and Real-Time Programming in Java
Taming HAL: Designing Interfaces Beyond 2001
Taming HAL: Designing Interfaces Beyond 2001
Test input generation with java PathFinder
ISSTA '04 Proceedings of the 2004 ACM SIGSOFT international symposium on Software testing and analysis
Optimal scheduling using priced timed automata
ACM SIGMETRICS Performance Evaluation Review
Generalized symbolic execution for model checking and testing
TACAS'03 Proceedings of the 9th international conference on Tools and algorithms for the construction and analysis of systems
Building your own software model checker using the bogor extensible model checking framework
CAV'05 Proceedings of the 17th international conference on Computer Aided Verification
A mapping from AADL to Java-RTSJ
JTRES '07 Proceedings of the 5th international workshop on Java technologies for real-time and embedded systems
Model-based schedulability analysis of safety critical hard real-time Java programs
JTRES '08 Proceedings of the 6th international workshop on Java technologies for real-time and embedded systems
Challenge benchmarks for verification of real-time programs
Proceedings of the 4th ACM SIGPLAN workshop on Programming languages meets program verification
A termination analyzer for Java bytecode based on path-length
ACM Transactions on Programming Languages and Systems (TOPLAS)
Exhaustive testing of safety critical Java
Proceedings of the 8th International Workshop on Java Technologies for Real-Time and Embedded Systems
SPIN'10 Proceedings of the 17th international SPIN conference on Model checking software
Survey: Linear Temporal Logic Symbolic Model Checking
Computer Science Review
Hi-index | 0.00 |
The 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.