Software safety: why, what, and how
ACM Computing Surveys (CSUR)
Evaluation of safety-critical software
Communications of the ACM
Software safety in embedded computer systems
Communications of the ACM
Java annotation-aware just-in-time (AJIT) complilation system
JAVA '99 Proceedings of the ACM 1999 conference on Java Grande
Inside Java 2 platform security architecture, API design, and implementation
Inside Java 2 platform security architecture, API design, and implementation
Scheduling Algorithms for Multiprogramming in a Hard-Real-Time Environment
Journal of the ACM (JACM)
The Ravenscar profile for high-integrity Java programs?
IRTAW '00 Proceedings of the 10th international workshop on Real-time Ada workshop
Software engineering (6th ed.)
Software engineering (6th ed.)
Formalizing the safety of Java, the Java virtual machine, and Java card
ACM Computing Surveys (CSUR)
High-Integrity System Specification and Design
High-Integrity System Specification and Design
The Real-Time Specification for Java
The Real-Time Specification for Java
Real-Time Systems and Programming Languages: ADA 95, Real-Time Java, and Real-Time POSIX
Real-Time Systems and Programming Languages: ADA 95, Real-Time Java, and Real-Time POSIX
The Java Language Specification
The Java Language Specification
The Ravenscar Tasking Profile for High Integrity Real-Time Programs
Ada-Europe '98 Proceedings of the 1998 Ada-Europe International Conference on Reliable Software Technologies
ASE '00 Proceedings of the 15th IEEE international conference on Automated software engineering
Asynchronous Transfer of Control in the Real-Time Specification for Java
ISORC '02 Proceedings of the Fifth IEEE International Symposium on Object-Oriented Real-Time Distributed Computing
Addressing Dynamic Dispatching Issues in WCET Analysis for Object-Oriented Hard Real-Time Systems
ISORC '02 Proceedings of the Fifth IEEE International Symposium on Object-Oriented Real-Time Distributed Computing
A Profile for High-Integrity Real-Time Java Programs
ISORC '01 Proceedings of the Fourth International Symposium on Object-Oriented Real-Time Distributed Computing
Portable worst-case execution time analysis using Java byte code
Euromicro-RTS'00 Proceedings of the 12th Euromicro conference on Real-time systems
Assessment of the Java programming language for use in high integrity systems
ACM SIGPLAN Notices
Is Java augmented with the RTSJ a better real-time systems implementation technology than Ada 95?
IRTAW '03 Proceedings of the 12th international workshop on Real-time Ada
Requirements for a real-time .NET framework
ACM SIGPLAN Notices
A Ravenscar-Java profile implementation
JTRES '06 Proceedings of the 4th international workshop on Java technologies for real-time and embedded systems
Safety critical applications and hard real-time profile for Java: a case study in avionics
JTRES '06 Proceedings of the 4th international workshop on Java technologies for real-time and embedded systems
Reflexes: abstractions for highly responsive systems
Proceedings of the 3rd international conference on Virtual execution environments
Scoped types and aspects for real-time Java memory management
Real-Time Systems
Real-time Java from an automated code generation perspective
JTRES '07 Proceedings of the 5th international workshop on Java technologies for real-time and embedded systems
A design pattern for using non-developmental items in real-time Java
JTRES '07 Proceedings of the 5th international workshop on Java technologies for real-time and embedded systems
ERLANG '07 Proceedings of the 2007 SIGPLAN workshop on ERLANG Workshop
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
A predictable Java profile: rationale and implementations
Proceedings of the 7th International Workshop on Java Technologies for Real-Time and Embedded Systems
Mission modes for safety critical Java
SEUS'07 Proceedings of the 5th IFIP WG 10.2 international conference on Software technologies for embedded and ubiquitous systems
Proceedings of the 13th International Workshop on Software & Compilers for Embedded Systems
Schedulability analysis for Java finalizers
Proceedings of the 8th International Workshop on Java Technologies for Real-Time and Embedded Systems
Harmonizing alternative approaches to safety-critical development with Java
Proceedings of the 9th International Workshop on Java Technologies for Real-Time and Embedded Systems
Programming languages for real-time systems
Embedded Systems Design
Scoped types and aspects for real-time java
ECOOP'06 Proceedings of the 20th European conference on Object-Oriented Programming
About 15 years of real-time Java
Proceedings of the 10th International Workshop on Java Technologies for Real-time and Embedded Systems
Safety-critical Java on a Java processor
Proceedings of the 10th International Workshop on Java Technologies for Real-time and Embedded Systems
Tutorial overview: understanding dynamic memory management in safety critical java
Proceedings of the 2012 ACM conference on High integrity language technology
Towards harnessing theories through tool support for hard real-time Java programming
Innovations in Systems and Software Engineering
Hi-index | 0.00 |
For many, Java is the antithesis of a high integrity programming language. Its combination of object-oriented programming features, its automatic garbage collection, and its poor support for real-time multi-threading are all seen as particular impediments. The Real-Time Specification for Java has introduced many new features that help in the real-time domain. However, the expressive power of these features means that very complex programming models can be created, necessitating complexity in the supporting real-time virtual machine. Consequently, Java, with the real-time extensions as they stand, seems too complex for confident use in high integrity systems. This paper presents a Java profile for the development of software-intensive high integrity real-time systems. This restricted programming model removes language features with high overheads and complex semantics, on which it is hard to perform timing and functional analyses. The profile fits within the J2ME framework and is consistent with well-known guidelines for high integrity software development, such as those defined by the U.S. Nuclear Regulatory Commission.