Abstract
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.
- Andreae, C., Coady, Y., Gibbs, C., Noble, J., Vitek, J., and Zhao, T. 2007. Scoped types and aspects for real-time Java memory management. Real-Time Syst. 37, 1, 1--44. Google Scholar
Digital Library
- Al-Jaroodi, J. and Mohamed, N. 2005. Object-reuse for more predictable real-time Java behavior. In Proceedings of the 8th IEEE international Symposium on Object-Oriented Real-Time Distributed Computing (ISORC). IEEE, Los Alamitos, CA, 398--401. Google Scholar
Digital Library
- Anderson, J. S. and Jensen, E. D. 2006. Distributed real-time specification for Java: A status report (digest). In Proceedings of the 4th international Workshop on Java Technologies for Real-Time and Embedded Systems (JTRES'06). ACM, New York, 3--9. Google Scholar
Digital Library
- Bacon, D. F., Cheng, P., and Rajan, V. T. 2003. Controlling fragmentation and space consumption in the metronome, a real-time garbage collector for Java. SIGPLAN Not. 38, 7, 81--92. Google Scholar
Digital Library
- Basanta-Val, P., Estévez-Ayres, I., García-Valls, M., and Almeida, L. 2009a. A synchronous scheduling service on top of a unicast distributed real-time Java. IEEE Trans. Paral. Distrib. Syst.Google Scholar
- Basanta-Val, P., García-Valls, M., and Estévez-Ayres, I. 2009b. Simple asynchronous remote invocations for distributed real-time Java. IEEE Trans. Industrial Informatics, 265--272.Google Scholar
- Basanta-Val, P., Almeida, L., García-Valls, M., and Estévez-Ayres, I. 2008. Simplifying the dualized threading model of RTSJ. 2008. In Proceedings of the 11th IEEE Symposium on Object Oriented Real-Time Distributed Computing (ISORC). IEEE, Los Alamitos, CA, 265--272. Google Scholar
Digital Library
- Basanta-Val, P., Almeida, L., García-Valls, M., and Estévez-Ayres, I. 2007. Towards a synchronous scheduling service on top of a unicast distributed real-time Java. In Proceedings of the 13th IEEE Real Time and Embedded Technology and Applications Symposium (RTAS). IEEE, Los Alamitos, CA, 123--132. Google Scholar
Digital Library
- Basanta-Val, P., García-Valls, M., Estévez-Ayres, I., and Delgado-Kloos, C. 2006. Extended portal: Violating the assignment rule and enforcing the single parent rule. In Proceedings of the 4th international Workshop on Java Technologies for Real-Time and Embedded Systems (JTRES'06). ACM, New York, 30--37. Google Scholar
Digital Library
- Basanta-Val, P., García-Valls, M., and Estévez-Ayres, I. 2005a. Towards the integration of scoped memory in distributed real-time Java. In Proceedings of the 8th IEEE international Symposium on Object-Oriented Real-Time Distributed Computing (ISORC). IEEE, Los Alamitos, CA, 382--389. Google Scholar
Digital Library
- Basanta-Val, P., García-Valls, M., and Estévez-Ayres, I. 2005b. AGC memory: A new realtime Java region type for automatic floating garbage recycling. SIGBED Rev. 2, 3, 7--12. Google Scholar
Digital Library
- Basanta-Val, P., García-Valls, M., and Estévez-Ayres, I. 2004. No heap remote objects: Leaving out garbage collection at the server side. In Proceedings of the 2nd International Workshop on Java Technologies for Real-Time and Embedded Systems (JTRES'04).Google Scholar
- Bollella, G., Canham, T., Carson, V., Champlin, V., Dvorak, D., Giovannoni, B., Indictor, M., Meyer, K., Murray, A., and Reinholtz, K. 2003. Programming with non-heap memory in the real time specification for Java. In Proceedings of the Companion of the 18th Annual ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA'03). ACM, New York, 361--369. Google Scholar
Digital Library
- Bollella, G. and Gosling, J. 2000. The real-time specification for Java. Computer 33, 6, 47--54. Google Scholar
Digital Library
- Borg, A. and Wellings, A. 2003. A real-time RMI framework for the RTSJ, In Proceedings of the 15th Euromicro Conference on Real-Time Systems (ECRTS'03). 238-248.Google Scholar
- Bruno, E. and Bollella, G. 2009. Real-Time Java#8482; Programming with Java RTS. Prentice-Hall, Englewood Cliffs, NJ. Google Scholar
Digital Library
- Corsaro, A. 2004. Techniques and patterns for safe and efficient real-time middleware. PhD dissertation, UMI Order AAI3162124, Washington University. Google Scholar
Digital Library
- Estévez-Ayres, I., Almeida, L., García-Valls, M., and Basanta-Val, P. 2007. An architecture to support dynamic service composition in distributed real-time systems. In Proceedings of the 10th IEEE International Symposium on Object and Component-Oriented Real-Time Distributed Computing (ISORC). IEEE, Los Alamitos, CA, 249--256. Google Scholar
Digital Library
- Estévez-Ayres, I., Almeida, L., García-Valls, M., and Basanta-Val, P. 2008. Solutions for supporting composition of service-based real-time applications. In Proceedings of the 11th IEEE Symposium on Object Oriented Real-Time Distributed Computing (ISORC). IEEE, Los Alamitos, CA, 42--49. Google Scholar
Digital Library
- Estévez-Ayres, I., Basanta-Val, P., García-Valls, M., Arias-Fisteus, J., and Almeida, L. 2009. QoS-aware real-time composition algorithms for service-based applications. IEEE Trans. Indust. Informatics.Google Scholar
Cross Ref
- Fay-Wolfe, V., Dipippo, L. C., Copper, G., Johnston, R., Kortmann, P., and Thuraisingham, B. 2000. Real-time CORBA. IEEE Trans. Paral. Distrib. Syst. 11, 10, 1073--1089. Google Scholar
Digital Library
- García-Valls, M., Basanta-Val, P., and Estévez-Ayres, I. 2009a. Concurrency programming models in mobile real-time platforms. In Proceedings of the International Conference on Advanced Information Networking and Applications Workshops. 538--543. Google Scholar
Digital Library
- García-Valls, M., Alonso-Muñoz, and Alejandro, Puente Alfaro, J. A. 2009b. Dynamic adaptation mechanisms in multimedia embedded systems. In Proceedings of the IEEE International Conference on Industrial Informatics. IEEE, Los Alamitos, CA, 188--193.Google Scholar
- García-Valls, M., Alonso-Muñoz, and Alejandro, Puente Alfaro, J. A. 2009c. Mode change protocols for predictable contract-based resource management in embedded multimedia systems. In Proceedings of the IEEE International Conference on Embedded Software and Systems. IEEE, Los Alamitos, CA, 221--230. Google Scholar
Digital Library
- Higuera-Toledano, M. T. 2006. Hardware support for detecting illegal references in a multi-application real-time Java environment. Trans. Embed. Comput. Syst. 5, 4, 753--772. Google Scholar
Digital Library
- Hilderink, G. H., Bakkers, A. W., and Broenink, J. F. 2000. A distributed real-time Java system based on CSP. In Proceedings of the 3rd IEEE international Symposium on Object-Oriented Real-Time Distributed Computing (ISORC). IEEE, Los Alamitos, CA, 400--408. Google Scholar
Digital Library
- JSR-282. 2009. JSR 282: RTSJ version 1.1. http://jcp.org/en/jsr/detail?id=282.Google Scholar
- Pizlo, F., Fox, J., Holmes, D., and Vitek, J. 2004. Real-time Java scoped memory: design patterns and semantics. In Proceedings of the IEEE International Symposium on Object-Oriented Real-Time Distributed Computing. IEEE, Los Alamitos, CA.Google Scholar
- Plšek, A., Loiret, F., Merle, P., and Seinturier, L. 2008. A component framework for Java-based real-time embedded systems. In Proceedings of the 9th ACM/IFIP/USENIX International Conference on Middleware. V. Issarny and R. Schantz Eds., Springer Verlag, Berlin, 124--143. Google Scholar
Digital Library
- Raman, K., Zhang, Y., Panahi, M., Colmenares, J. A., and Klefstad, R. 2005. Patterns and tools for achieving predictability and performance with real-time Java. In Proceedings of the 11th IEEE International Conference on Embedded and Real-Time Computing Systems and Applications (RTCSA). IEEE, Los Alamitos, CA, 247--253. Google Scholar
Digital Library
- Siebert, F. 2008. Limits of parallel marking garbage collection. In Proceedings of the 7th International Symposium on Memory Management (ISMM'08). ACM, New York, 21--29. Google Scholar
Digital Library
- Silva, E. T., Jr., Freitas, E. P., Wagner, F. R., Carvalho, F. C., and Pereira, C. E. 2006. Java framework for distributed real-time embedded systems. In Proceedings of the 9th IEEE international Symposium on Object and Component-Oriented Real-Time Distributed Computing (ISORC). IEEE, Los Alamitos, CA, 85--92. Google Scholar
Digital Library
- SUN. 2004. The RMI specification. http://java.sun.com/j2se/1.4.2/docs/guide/rmi/spec/rmiTOC.html.Google Scholar
- Tejera, D., Alonso, A., and De Miguel, M. A. 2007. RMI-HRT: Remote method invocation—Hard real time. In Proceedings of the 5th International Workshop on Java Technologies for Real-Time and Embedded Systems (JTRES'07). Vol. 319, ACM, New York, 113--120. Google Scholar
Digital Library
- TIMESYS. 2008. JTIME virtual machine. http://www.timesys.com.Google Scholar
- Wollrath, A., Riggs, R., and Waldo, J. 1996. A distributed object model for the Java system. In Proceedings of the 2nd Conference on USENIX Conference on Object-Oriented Technologies (COOTS). Vol. 2, USENIX Association, Berkeley CA, 17--17. Google Scholar
Digital Library
Index Terms
No-Heap remote objects for distributed real-time Java
Recommendations
Resource management policies for real-time Java remote invocations
A way to deal with the increasing cost of next generation real-time applications is to extend middleware and high-level general-purpose programming languages, e.g. Java, with real-time support that reduces development, deployment, and maintenance costs. ...
Enhancing OSGi with real-time Java support
OSGi was designed with embedded systems in mind, its current support is insufficient for coping with one main characteristic of many embedded systems: real-time performance. This article analyzes different key issues in providing OSGi with real-time ...
A simple distributed garbage collector for distributed real-time Java
The use of real-time distribution middleware programmed with high-level languages like Java is becoming of increasing interest in next generation applications. Technology like Java's Remote Method Invocation (RMI) paves the way towards these new ...






Comments