No-Heap remote objects for distributed real-time Java

This article presents an approach to providing real-time support for Java's Remote Method Invocation (RMI) and its integration with the RTSJ memory model in order to leave out garbage collection. A new construct for remote objects, called No-heap Remote object (NhRo), is introduced. The use of a NhRo guarantees that memory required to perform a remote invocation (at the server side) does not use heap memory. Thus, the aim is to avoid garbage collection in the remote invocation process, improving predictability and memory isolation of distributed Java-based real-time applications. The article presents the bare model and the main programming patterns that are associated with the NhRo model. Sun RMI implementation has been modified to integrate the NhRo model in both static and dynamic environments.

[1]  Marisol García-Valls,et al.  Extended portal: violating the assignment rule and enforcing the single parent rule , 2006, JTRES '06.

[2]  Alejandro Alonso,et al.  Dynamic adaptation mechanisms in multimedia embedded systems , 2009, 2009 7th IEEE International Conference on Industrial Informatics.

[3]  Raymond Klefstad,et al.  Patterns and tools for achieving predictability and performance with real time Java , 2005, 11th IEEE International Conference on Embedded and Real-Time Computing Systems and Applications (RTCSA'05).

[4]  Andy J. Wellings,et al.  A real-time RMI framework for the RTSJ , 2003, 15th Euromicro Conference on Real-Time Systems, 2003. Proceedings..

[5]  Jan Vitek,et al.  Scoped types and aspects for real-time Java memory management , 2007, Real-Time Systems.

[6]  Jan Vitek,et al.  Real-time Java scoped memory: design patterns and semantics , 2004, Seventh IEEE International Symposium onObject-Oriented Real-Time Distributed Computing, 2004. Proceedings..

[7]  Pablo Basanta Val,et al.  Concurrency Programming Models in Mobile Real-Time Platforms , 2009, 2009 International Conference on Advanced Information Networking and Applications Workshops.

[8]  Douglas C. Schmidt,et al.  Techniques and patterns for safe and efficient real-time middleware , 2004 .

[9]  Roger Riggs,et al.  A distributed object model for the java TM system , 1996 .

[10]  Fridtjof Siebert Limits of parallel marking garbage collection , 2008, ISMM '08.

[11]  Alejandro Alonso,et al.  RMI-HRT: remote method invocation - hard real time , 2007, JTRES.

[12]  Carlos Eduardo Pereira,et al.  Java framework for distributed real-time embedded systems , 2006, Ninth IEEE International Symposium on Object and Component-Oriented Real-Time Distributed Computing (ISORC'06).

[13]  Marisol García-Valls,et al.  Mode Change Protocols for Predictable Contract-Based Resource Management in Embedded Multimedia Systems , 2009, 2009 International Conference on Embedded Software and Systems.

[14]  Marisol García-Valls,et al.  Simple Asynchronous Remote Invocations for Distributed Real-Time Java , 2009, IEEE Transactions on Industrial Informatics.

[15]  Marisol García-Valls,et al.  AGCMemory: a new real-time Java region type for automatic floating garbage recycling , 2005, SIGBED.

[16]  Bhavani M. Thuraisingham,et al.  Real-Time CORBA , 2000, IEEE Trans. Parallel Distributed Syst..

[17]  Roger Riggs,et al.  A Distributed Object Model for the Java System , 1996, Comput. Syst..

[18]  V. T. Rajan,et al.  Controlling fragmentation and space consumption in the metronome, a real-time garbage collector for Java , 2003, LCTES '03.

[19]  Marisol García-Valls,et al.  An Architecture to Support Dynamic Service Composition in Distributed Real-Time Systems , 2007, 10th IEEE International Symposium on Object and Component-Oriented Real-Time Distributed Computing (ISORC'07).

[20]  E. Douglas Jensen,et al.  Distributed real-time specification for Java: a status report (digest) , 2006, JTRES '06.

[21]  Marisol García-Valls,et al.  Towards the integration of scoped memory in distributed real-time Java , 2005, Eighth IEEE International Symposium on Object-Oriented Real-Time Distributed Computing (ISORC'05).

[22]  Lisa Cingiser DiPippo,et al.  Real-time CORBA , 1997, Proceedings Third IEEE Real-Time Technology and Applications Symposium.

[23]  Marisol García-Valls,et al.  Solutions for Supporting Composition of Service-Based Real-Time Applications , 2008, 2008 11th IEEE International Symposium on Object and Component-Oriented Real-Time Distributed Computing (ISORC).

[24]  Daniel L. Dvorak,et al.  Programming with non-heap memory in the real time specification for Java , 2003, OOPSLA '03.

[25]  Ales Plsek,et al.  A Component Framework for Java-Based Real-Time Embedded Systems , 2008, Middleware.

[26]  Marisol García-Valls,et al.  Concurrency Programming Models in Mobile Real-Time Platforms , 2009, AINA Workshops.

[27]  James Gosling,et al.  The Real-Time Specification for Java , 2000, Computer.

[28]  G. H. Hilderink,et al.  A distributed real-time Java system based on CSP , 1999, Proceedings Third IEEE International Symposium on Object-Oriented Real-Time Distributed Computing (ISORC 2000) (Cat. No. PR00607).

[29]  Jameela Al-Jaroodi,et al.  Object-reuse for more predictable real-time Java behavior , 2005, Eighth IEEE International Symposium on Object-Oriented Real-Time Distributed Computing (ISORC'05).

[30]  Marisol García-Valls,et al.  Simplifying the Dualized Threading Model of RTSJ , 2008, 2008 11th IEEE International Symposium on Object and Component-Oriented Real-Time Distributed Computing (ISORC).

[31]  David F. Bacon,et al.  Controlling fragmentation and space consumption in the metronome, a real-time garbage collector for Java , 2003 .

[32]  Marisol García-Valls,et al.  Towards a Synchronous Scheduling Service on Top of a Unicast Distributed Real-Time Java , 2007, 13th IEEE Real Time and Embedded Technology and Applications Symposium (RTAS'07).

[33]  Marisol García-Valls,et al.  QoS-Aware Real-Time Composition Algorithms for Service-Based Applications , 2009, IEEE Transactions on Industrial Informatics.

[34]  Marisol García-Valls,et al.  No Heap Remote Objects: Leaving Out Garbage Collection at the Server Side , 2004, OTM Workshops.

[35]  M. Teresa Higuera-Toledano Hardware support for detecting illegal references in a multiapplication real-time Java environment , 2006, TECS.