Abstract
The Distributed Real-Time Specification for Java (DRTSJ) is under development within Sun's Java Community Process (JCP) as Java Specification Request 50 (JSR-50), lead by the MITRE Corporation. We present the engineering considerations and design decisions settled by the Expert Group, the current and proposed form of the Reference Implementation, and a summary of open issues. In particular, we present an approach to integrating the distributable threads programming model with the Real-Time Specification for Java and discuss the ramifications for composing distributed, real-time systems in Java. The Expert Group plans to release an initial Early Draft Review (EDR) for previewing the distributable threads abstraction in the coming months, which we describe in detail. Along with that EDR, we will make available a demonstration application from Virginia Tech, and a DRTSJ-compatible RTSJ VM from Apogee.
References (39)
- REFERENCES
- J. Anderson and B. Ravindran. AWINN task 2.2 final demonstration: A coastal air defense scenario. [Presentation to USN Office of Naval Research, August 2006], August 2006.
- Advanced Wireless Integrated Navy Network (AWINN) homepage. http://awinn.ece.vt.edu.
- G. Bollella, B. Brosgol, P. Dibble, S. Furr, J. Gosling, D. Hardin, M. Turnbull, R. Belliardi, D. Holmes, and A. Wellings. The real-time specification for Java (version 1.0.2). Specification JSR-1, Java Community Process, 2006. Available: http://www.rtsj.org/specjavadoc/book index.html.
- R. K. Clark, E. D. Jensen, and F. D. Reynolds. An architectural overview of the Alpha real-time distributed kernel. In Proceedings of the USENIX Workshop on Microkernels and Other Kernel Architectures, April 1992.
- E. Curley. Integrity assurances for distributable real-time threads in dynamic networks. Master's thesis, Virginia Polytechnic and State University, September 2006. [Anticipated].
- E. Curley, J. Anderson, B. Ravindran, and E. D. Jensen. Recovering from distributable thread failures with assured timeliness in real-time distributed systems. In Proceedings of the 2006 SRDS, October 2006. [To Appear] Available: http://www.real-time.ece.vt.edu/srds06.pdf.
- P. Dibble and A. Wellings. The real-time specification for Java: Current status and future work. In Proceedings of the Seventh IEEE International Symposium on Object-Oriented Real-Time Distributed Computing, pages 71-77, May 2004.
- DRTSJ public web site. http://drtsj.org.
- J. Goldberg, I. Greenberg, R. K. Clark, E. D. Jensen, K. Kim, and D. M. Wells. Adaptive fault-resistant systems (chapter 5: Adaptive distributed thread integrity). Technical Report csl-95-02, Computer Science Laboratory, SRI International, Menlo Park, CA., January 1995. http://www.csl.sri.com/papers/sri-csl-95-02/.
- B. Haumacher, T. Moschny, J. Reuter, and W. F. Tichy. Transparent distributed threads for Java. In Proc. 5th International Workshop on Java for Parallel and Distributed Computing in conjunction with the International Parallel and Distributed Processing Symposium (IPDPS 2003), 2003.
- E. D. Jensen. Rationale for the direction of the distributed real-time specification for Java panel position paper. In Proceedings of the Fifth IEEE International Symposium on Object-Oriented Real-Time Distributed Computing, 2002, pages 258-259, 2002.
- E. D. Jensen and J. D. Northcutt. Alpha: A non-proprietary operating system for large, complex, distributed real-time systems. In IEEE Workshop on Experimental Distributed Systems, pages 35-41, 1990.
- JSR-1 Expert Group. JSR-1 proposal: Real-time specification for Java. http://jcp.org/en/jsr/detail?id=1.
- JSR-282 Expert Group. JSR-282 proposal: Real-time specification for Java version 1.1. http://jcp.org/en/jsr/detail?id=1.
- JSR-50 Expert Group and E. D. Jensen. JSR-50 proposal. http://jcp.org/en/jsr/detail?id=1.
- B. W. Lampson. Hints for computer system design. In SOSP '83: Proceedings of the ninth ACM symposium on Operating systems principles, pages 33-48, New York, NY, USA, 1983. ACM Press. Available: http:// research.microsoft.com/ ∼ lampson/33-Hints/WebPage.html.
- P. Li, B. Ravindran, H. Cho, and E. D. Jensen. Scheduling distributable real-time threads in Tempus middleware. In IEEE Conference on Parallel and Distributed Systems, pages 187 -194, July 2004.
- P. Li, B. Ravindran, et al. A formally verified application-level framework for real-time scheduling on POSIX real-time operating systems. IEEE Trans. Software Engineering, 30(9):613 -629, Sept. 2004.
- J. D. Northcutt. Mechanisms for Reliable Distributed Real-Time Operating Systems -The Alpha Kernel. Academic Press, 1987.
- Object Management Group. Dynamic scheduling real-time CORBA 2.0 (joint revised submission), 2001. orbos/2001-04-01 ed.
- Object Management Group. Extensible transport framework specification -final adopted specification, 2004. ptc/04-03-03 ed.
- Object Management Group. Data distribution service for real-time systems, v1.1, 2005. formal/2005-12-04.
- OMG. Real-time CORBA 2.0: Dynamic scheduling specification. Technical report, Object Management Group, September 2001. OMG Final Adopted Specification, http://www.omg.org/docs/ptc/01-08-34.pdf.
- Open Group Research Institute's Real-Time Group. MK7.3a Release Notes. The Open Group Research Institute, Cambridge, Massachusetts, October 1998. Available: http://www.real-time.org/docs/RelNotes7.Book.pdf.
- Virginia Tech real-time laboratory publications site. http://www.real-time.ece.vt.edu/papers.html.
- RTSJ public web site. http://rtsj.org.
- U. Saif and D. J. Greaves. Communication primitives for ubiquitous systems or RPC considered harmful. In 21st International Conference on Distributed Computing Systems Workshops (ICDCSW '01), 2001.
- J. H. Saltzer, D. P. Reed, and D. D. Clark. End-to-end arguments in system design. ACM Trans. Comput. Syst., 2(4):277-288, 1984.
- Sun Microsystems. Java TM message service specification final release 1.1, April 2002. Available: http://java.sun.com/products/jms/.
- Sun Microsystems. Java TM object serialization specification. Technical report, Sun Microsystems, 4150 Network Circle, Santa Clara, CA, November 2002. [Revision 1.4.4] Available: http://java.sun.com/j2se/1.4/pdf/serial-spec.pdf.
- Sun Microsystems. Java TM remote method invocation specification. Technical report, Sun Microsystems, 4150 Network Circle, Santa Clara, CA, November 2002. [Revision 1.9, Java TM 2 SDK SE, v.1.4.2] Available: http://java.sun.com/j2se/1.4/pdf/rmi-spec-1.4.2.pdf.
- Sun Microsystems. Java TM RMI over IIOP technology documentation home page. Technical report, Sun Microsystems, 4150 Network Circle, Santa Clara, CA, November 2002. [From J2SDK 1.4.2 Release Notes] Available: http: //java.sun.com/j2se/1.4.2/docs/guide/rmi-iiop/index.html.
- Sun Microsystems. Jcp2: Process document, v2.6, March 2004. Available: http://jcp.org/en/procedures/jcp2.
- E. Tilevich and Y. Smaragdakis. Portable and efficient distributed threads for Java. In Conf. Proc. Middleware'04 conference, October 2004.
- J. Waldo, G. Wyant, A. Wollrath, and S. Kendall. A note on distributed computing. Note SMLI TR-94-29, Sun Microsystems Laboratories, Inc., 2550 Garcia Avenue, Mountain View, VA 94043, November 1994.
- A. Wellings, R. K. Clark, E. D. Jensen, and D. Wells. A framework for integrating the Real-Time Specification for Java and Java's remote method invocation. In Proc. of the 5th IEEE International Symposium on Object Oriented Real-Time Distributed Computing, April 2002. Available: http://www.real-time.org/docs/isorc02 v41.pdf.
- D. Weyns, E. Truyen, and P. Verbaeten. Distributed threads in Java. In Proceedings of the International Symposium on Distributed and Parallel Computing, ISDPC 2002, 2002.
- A. Zerzelidis and A. J. Wellings. Getting more flexible scheduling in the rtsj. In Proceedings 9th IEEE ISORC, pages 3-10. IEEE Computer Society TC on Distributed Processing, IEEE Computer Society, April 2006.