Abstract
The Real-Time Specification for Java (RTSJ) [13] is becoming a popular choice in the world of real-time and embedded programming. However, RTSJ introduces many non-intuitive rules and restrictions which prevent its wide adoption. Moreover, current state-of-the-art frameworks usually fail to alleviate the development process into higher layers of the software development life-cycle. In this paper we extend our philosophy that RTSJ concepts need to be considered at early stages of software development, postulated in our prior work [2], in a framework that provides continuum between the design and implementation process. A component model designed specially for RTSJ serves here as a cornerstone. As the first contribution of this work, we propose a development process where RTSJ concepts are manipulated independently of functional aspects. Second, we mitigate complexities of RTSJ-development by automatically generating execution infrastructure where real-time concerns are transparently managed. We thus allow developers to create systems for variously constrained real-time and embedded environments. Performed benchmarks show that the overhead of the framework is minimal in comparison to manually written object-oriented applications, while providing more extensive functionality. Finally, the framework is designed with the stress on dynamic adaptability of target systems, a property we envisage as a fundamental in an upcoming era of massively developed real-time systems.
This work has been partially funded by the ANR/RNTL Flex-eWare project and by the Interuniversity Attraction Poles Programme Belgian State, Belgian Science Policy.
Chapter PDF
References
Corsaro, A., Santoro, C.: The Analysis and Evaluation of Design Patterns for Distributed Real-Time Java Software. In: 16th IEEE International Conference on Emerging Technologies and Factory Automation (2005)
Plšek, A., Merle, P., Seinturier, L.: A Real-Time Java Component Model. In: Proceedings of the 11thInternational Symposium on Object/Component/Service-oriented Real-Time Distributed Computing (ISORC 2008), Orlando, Florida, USA, May 2008, pp. 281–288. IEEE Computer Society, Los Alamitos (2008)
Wellings, A.: Concurrent and Real-Time Programming in Java. John Wiley and Sons, Chichester (2004)
Andreae, C., Coady, Y., Gibbs, C., Noble, J., Vitek, J., Zhao, T.: Scoped Types and Aspects for Real-time Java Memory Management. Real-Time Syst. 37(1), 1–44 (2007)
Benowitz, E.G., Niessner, A.F.: A Patterns Catalog for RTSJ Software Designs. In: Meersman, R., Tari, Z. (eds.) OTM-WS 2003. LNCS, vol. 2889, pp. 497–507. Springer, Heidelberg (2003)
Bordin, M., Vardanega, T.: Real-time Java from an Automated Code Generation Perspective. In: JTRES 2007: Proceedings of the 5th international workshop on Java technologies for real-time and embedded systems, pp. 63–72. ACM, New York (2007)
Bures, T., Hnetynka, P., Plasil, F.: SOFA 2.0: Balancing Advanced Features in a Hierarchical Component Model. In: SERA 2006: Proc. of the 4th International Conference on Software Engineering Research, Management and Applications, USA, pp. 40–48. IEEE Computer Society, Los Alamitos (2006)
Gough, C., Hall, A., Masters, H., Stevens, A.: Real-Time Java: Writing and Deploying RT-Java Applications (2007), http://www.ibm.com/developerworks/java/library/j-rtj5/
Clarke, M., Blair, G.S., Coulson, G., Parlavantzas, N.: An Efficient Component Model for the Construction of Adaptive Middleware. In: Guerraoui, R. (ed.) Middleware 2001. LNCS, vol. 2218, p. 160. Springer, Heidelberg (2001)
Dvorak, D., Bollella, G., Canham, T., Carson, V., Champlin, V., Giovannoni, B., Indictor, M., Meyer, K., Murray, A., Reinholtz, K.: Project Golden Gate: Towards Real-Time Java in Space Missions. In: ISORC, pp. 15–22 (2004)
Bruneton, E., Coupaye, T., Leclercq, M., Quéma, V., Stefani, J.B.: The Fractal Component Model and its Support in Java. Software: Practice and Experience 36, 1257–1284 (2006)
Etienne, J., Cordry, J., Bouzefrane, S.: Applying the CBSE Paradigm in the Real-Time Specification for Java. In: JTRES 2006: Proceedings of the 4th international workshop on Java technologies for real-time and embedded systems, USA, pp. 218–226. ACM, New York (2006)
Bollela, G., Gosling, J., Brosgol, B., Dibble, P., Furr, S., Turnbull, M.: The Real-Time Specification for Java. Addison-Wesley, Reading (2000)
Hu, J., Gorappa, S., Colmenares, J.A., Klefstad, R.: Compadres: A Lightweight Component Middleware Framework for Composing Distributed, Real-Time, Embedded Systems with Real-Time Java. In: Proc. ACM/IFIP/USENIX 8th Int’l Middleware Conference (Middleware 2007), vol. 4834, pp. 41–59 (2007)
Prochazka, M., Fowell, S., Planche, L.: DisCo Space-Oriented Middleware: Architecture of a Distributed Runtime Environment for Complex Spacecraft On-Board Applications. In: 4th European Congress on Embedded Real-Time Software (ERTS 2008), Toulouse, France (2008)
Pawlak, R., Noguera, C., Petitprez, N.: Spoon: Program Analysis and Transformation in Java. Technical report rr-5901, INRIA (2006)
Pizlo, F., Fox, J.M., Holmes, D., Vitek, J.: Real-Time Java Scoped Memory: Design Patterns and Semantics. In: Seventh IEEE International Symposium on Object-Oriented Real-Time Distributed Computing (ISORC 2004), pp. 101–110 (2004)
Seinturier, L., Pessemier, N., Duchien, L., Coupaye, T.: A Component Model Engineered with Components and Aspects. In: Gorton, I., Heineman, G.T., Crnković, I., Schmidt, H.W., Stafford, J.A., Szyperski, C., Wallnau, K. (eds.) CBSE 2006. LNCS, vol. 4063, pp. 139–153. Springer, Heidelberg (2006)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2008 IFIP International Federation for Information Processing
About this paper
Cite this paper
Plšek, A., Loiret, F., Merle, P., Seinturier, L. (2008). A Component Framework for Java-Based Real-Time Embedded Systems. In: Issarny, V., Schantz, R. (eds) Middleware 2008. Middleware 2008. Lecture Notes in Computer Science, vol 5346. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-89856-6_7
Download citation
DOI: https://doi.org/10.1007/978-3-540-89856-6_7
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-89855-9
Online ISBN: 978-3-540-89856-6
eBook Packages: Computer ScienceComputer Science (R0)