|
ABSTRACT
A Java profile suitable for development of high integrity embedded systems is presented. It is based on event handlers which are grouped in missions and equipped with respectively private handler memory and shared mission memory. This is a result of our previous work on developing a Java profile, and is directly inspired by interactions with the Open Group on their on-going work on a safety critical Java profile (JSR-302). The main contribution is an arrangement of the class hierarchy such that the proposal is a generalization of Real-Time Specification for Java (RTSJ). A further contribution is to integrate the mission concept as a handler, such that mission memory becomes a handler private memory and such that mission initialization and finalization are scheduled activities. Two implementations are presented: one directly on an open source JVM using Xenomai and another, based on delegation, on an RTSJ platform.
REFERENCES
Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.
| |
1
|
M. Abadi, C. Flanagan, and S. N. Freund. Types for safe locking: Static race detection for java. ACM Trans. Program. Lang. Syst., 28(2):207--255, 2006.
|
| |
2
|
M. Alrahmawy and A. Wellings. Design patterns for supporting rtsj component models. In Proc. of the 7th international workshop on Java technologies for real-time and embedded systems (JTRES'09). ACM Press, 2009.
|
| |
3
|
T. Amnell, E. Fersman, L. Mokrushin, P. Pettersson, and W. Yi. TIMES: A tool for schedulability analysis and code generation of real-time systems. In K. G. Larsen and P. Niebert, editors, Proceedings of FORMATS 2003, volume 2791 of Lecture Notes in Computer Science, pages 60--72. Springer-Verlag, 2004.
|
| |
4
|
Aonix. Aonix research and development - safety critical java specification initiative. http://research.aonix.com/jsc/index.html, 6 2009.
|
| |
5
|
T. P. Baker and A. Shaw. The cyclic executive model and ada. The Journal of Real-Time Systems, 1:7--25, 1989.
|
| |
6
|
G. Barthe, D. Pichardie, and T. Rezk. A Certified Lightweight Non-interference Java Bytecode Verifier. In Proc. of 16th European Symposium on Programming (ESOP'07), volume 4421 of Lecture Notes in Computer Science, pages 125--140. Springer-Verlag, 2007.
|
| |
7
|
T. Bøgholm, H. Kragh-Hansen, P. Olsen, B. Thomsen, and K. G. Larsen. Model-based schedulability analysis of safety critical hard real-time java programs. In Proc. of the 6th international workshop on Java technologies for real-time and embedded systems (JTRES'08), pages 106--114. ACM Press, 2008.
|
| |
8
|
G. Bollella, J. Gosling, B. Brosgol, P. Dibble, S. Furr, and M. Turnbull. The Real-Time Specification for Java. Java Series. Addison-Wesley, 2000.
|
| |
9
|
T. Budd. Understanding Object-Oriented Programming with Java. Addison-Wesley Longman Publishing Co., Inc., Boston, MA, USA, 1998.
|
| |
10
|
A. Burns and A. Wellings. Real-Time Systems and Programming Languages. Addison-Wesley, 4 edition, 2009.
|
| |
11
|
D. Cachera, T. Jensen, D. Pichardie, and G. Schneider. Certified Memory Usage Analysis. In Proc. of 13th International Symposium on Formal Methods (FM'05), number 3582 in Lecture Notes in Computer Science, pages 91--106. Springer-Verlag, 2005.
|
| |
12
|
C. Ferdinand, F. Martin, C. Cullmann, M. Schlickling, I. Stein, S. Thesing, and R. Heckmann. New developments in WCET analysis. In T. Reps, M. Sagiv, and J. Bauer, editors, Program Analysis and Compilation. Theory and Practice. Essays Dedicated to Reinhard Wilhelm on the Occasion of His 60th Birthday, volume 4444 of LNCS, pages 12--52. Springer Verlag, 2007.
|
| |
13
|
C. Flanagan and S. N. Freund. Type-based race detection for java. In PLDI '00: Proceedings of the ACM SIGPLAN 2000 conference on Programming language design and implementation, pages 219--232. ACM, 2000.
|
| |
14
|
S. Genaim and F. Spoto. Information flow analysis for java bytecode. In Proc. of the International Conference on Verification, Model Checking and Abstract Interpretation, VMCAI'05, volume 3385 of Lecture Notes in Computer Science, Paris, France, Jan. 2005. Springer Verlag.
|
| |
15
|
P. Gerum. The xenomai project. implementing a rtos emulation framework on gnu/linux. In Third Real-Time Linux Workshop, 2001.
|
| |
16
|
P. Giambiagi and G. Schneider. Memory consumption analysis of Java smart card. In In Proc. of Conferencia Latinoamericana de Informatica (Latin American Computing Conference), CLEI'05, Santiago de Cali, Columbia, Oct. 2005.
|
| |
17
|
T. O. Group. Jsr 302: Safety critical java technology. http://jcp.org/en/jsr/detail?id=302, 2006.
|
| |
18
|
R. R. Hansen. A Hardest Attacker for Leaking References. In D. Schmidt, editor, Proc. of European Symposium on Programming, ESOP'04, volume 2986 of Lecture Notes in Computer Science, pages 310--324, Barcelona, Spain, Mar./Apr. 2004. Springer Verlag.
|
| |
19
|
R. R. Hansen and C. W. Probst. Non-interference and Erasure Policies for JavaCard Bytecode. In Workshop on Issues in the Theory of Security, WITS'06, pages 174--189, Vienna, Austria, Mar. 2006.
|
| |
20
|
T. Henties, J. J. Hunt, D. Locke, K. Nilsen, M. Schoeberl, and J. Vitek. Java for safety-critical applications. 2nd International Workshop on the Certification of Safety-Critical Software Controlled Systems (SafeCert 2009), Mar. 2009.
|
| |
21
|
L. Hubert, T. Jensen, and D. Pichardie. Semantic foundations and inference of non-null annotations. In Proc. of the 10th International Conference on Formal Methods for Open Object-based Distributed Systems (FMOODS'08), volume 5051 of Lecture Notes in Computer Science, pages 132--149. Springer-Verlag, 2008.
|
| |
22
|
L. Hubert and D. Pichardie. Soundly handling static fields: Issues, semantics and analysis. Proc. of the 4th International Workshop on Bytecode Semantics, Verification, Analysis and 'Transformation (BYTECODE'09), ENTCS, 2009. To appear.
|
| |
23
|
Jam VM. Jam VM 1.5.3. http://jamvm.sourceforge.net/, 4 2009.
|
| |
24
|
S. Korsholm, M. Schoeberl, and A. P. Ravn. Interrupt handlers in Java. In 11th IEEE International Symposium on Oriented Real-Time Distributed Computing (ISORC), pages 453--457. IEEE Computer Sciety Press, 2008.
|
| |
25
|
J. Kwon, A. Wellings, and S. King. Ravenscar-java: a high integrity profile for real-time java. In JGI '02: Proceedings of the 2002 joint ACM-ISCOPE conference on Java Grande, pages 131--140, New York, NY, USA, 2002. ACM.
|
| |
26
|
T. Lindholm and F. Yellin. The Java Virtual Machine Specification. Prentice Hall, 2 edition, 1999.
|
| |
27
|
P. Puschner and A. Wellings. A profile for high-integrity real-time java programs. pages 15--22. IEEE Computer Society, 2001.
|
| |
28
|
J. Real and A. Crespo. Mode change protocols for real-time systems: A survey and a new proposal. Real-Time Systems, 26(2):161--197, 2004.
|
| |
29
|
M. Schoeberl, H. Søndergaard, B. Thomsen, and A. P. Ravn. A profile for safety critical Java. In 11th IEEE International Symposium on Oriented Real-Time Distributed Computing (ISORC), pages 94--101. IEEE Computer Sciety Press, 2007.
|
| |
30
|
M. Schoeberl, C. Thalinger, S. Korsholm, and A. P. Ravn. Hardware objects for Java. In 11th IEEE International Symposium on Oriented Real-Time Distributed Computing (ISORC), pages 445--452. IEEE Computer Sciety Press, 2008.
|
| |
31
|
H. Søndergaard, A. P. Ravn, B. Thomsen, and M. Scoeberl. A practical approach to mode change in real-time systems. Technical Report 08-001, Department of Computer Science, Aalborg University, 2008.
|
| |
32
|
H. Søndergaard, B. Thomsen, and A. P. Ravn. A ravenscar-java profile implementation. In JTRES '06: Proceedings of the 4th international workshop on Java technologies for real-time and embedded systems, pages 38--47, New York, NY, USA, 2006. ACM.
|
| |
33
|
S. Thesing, J. Souyris, R. Heckmann, F. Randimbivololona, M. Langenbach, R. Wilhelm, and C. Ferdinand. An abstract interpretation-based timing validation of hard real-time avionics. In Proceedings of the International Performance and Dependability Symposium (IPDS), pages 625--632. IEEE Computer Society Press, June 2003.
|
| |
34
|
Timesys. Rtsj reference implementation (ri) and technology compatibility kit (tck). http://www.timesys.com/java/, 2009.
|
| |
35
|
UPPAAL. Uppaal. http://www.uppaal.com/, 2009.
|
| |
36
|
A. J. Wellings and M. S. Kim. Processing group parameters in the real-time specification for java. In JTRES '08: Proceedings of the 6th international workshop on Java technologies for real-time and embedded systems, pages 3--9, New York, NY, USA, 2008. ACM.
|
| |
37
|
R. Wilhelm. Determining bounds on execution times. In R. Zurawski, editor, Handbook on Embedded Systems, pages 14--1, 14--23. CRC Press, 2005.
|
| |
38
|
R. Wilhelm, J. Engblom, A. Ermedahl, N. Holsti, S. Thesing, D. Whalley, G. Bernat, C. Ferdinand, R. Heckmann, F. Mueller, I. Puaut, P. Puschner, J. Staschulat, and P. Stenstrøm. The determination of worst-case execution times---overview of the methods and survey of tools. ACM Transactions on Embedded Computing Systems (TECS), 7(3), 2008.
|
| |
39
|
Xenomai. Xenomai native skin API reference manual, 2006.
|
|