RT-OSGi: Integrating the OSGi Framework with the Real-Time Specification for Java
The OSGi Framework, has proven ideal in developing dynamically reconfigurable Java applications based on the principles of Component-Based Software Engineering (CBSE) and Service-Oriented Architecture (SOA). One domain where OSGi has yet to make an impact is real-time systems. This is partly due to the fact that the OSGi Framework is based on standard Java, which is not suitable for developing such systems. Other reasons include the absence of various features such as temporal isolation, admission control, and a reconfigurable garbage collector (along with the associated analysis to determine the pace of garbage collection). Also, a number of features of the OSGi Framework increase the difficulty in determining the worst case execution time (WCET) of threads. This makes real-time analysis more difficult. This chapter discusses the problems associated with extending the OSGi Framework and integrating it with the Real-Time Specification for Java (RTSJ). The focus is on the design of a real-time version of the OSGi Framework (RT-OSGi) which is capable of deploying dynamically reconfigurable real-time Java applications.
This work is supported by the UK EPSRC and IBM through case award 0700092X.
- 8.L. Almeida and P. Pedreiras. Scheduling within temporal partitions: response-time analysis and server design. In Proceedings of the 4th ACM international conference on Embedded software, EMSOFT’04, pages 95–103, New York, NY, USA, 2004. ACM.Google Scholar
- 9.J.C.R. Americo. A study of the impact of real-time constraints on Java/OSGi applications. Available at http://hdl.handle.net/10183/26347, 2010.
- 23.D.F. Bacon, P. Cheng, and V.T. Rajan. A real-time garbage collector with low overhead and consistent utilization. In POPL’03: Proceedings of the 30th ACM SIGPLAN-SIGACT symposium on Principles of programming languages, pages 285–298, New York, NY, USA, 2003. ACM Press.Google Scholar
- 56.E. Bini and S.K. Baruah. Efficient computation of response time bounds under fixed-priority scheduling. In 15th International Conference on Real-Time and Network Systems, pages 95–104, 2007.Google Scholar
- 84.B.M. Brosgol, R.J. Hassan II, and S Robbins. Asynchronous transfer of control in the real-time specification for Java. Ada Lett., XXII:95–112, April 2002.Google Scholar
- 94.H. Cai and A.J. Wellings. Temporal isolation in Ravenscar-Java. The Eighth IEEE International Symposium On Object-Oriented Real-Time Distributed Computing, pages 364–371, May 2005.Google Scholar
- 119.R.I. Davis and A. Burns. Hierarchical fixed priority scheduling. In Proceedings of the 26th IEEE Real-Time Systems Symposium, pages 389–398. IEEE Computer Society, 5–8 Dec 2005.Google Scholar
- 120.R.I. Davis and A. Burns. An investigation into server parameter selection for hierarchical fixed priority pre-emptive systems. In Proccedings of Real-Time and Network Systems, RTNS, 2008.Google Scholar
- 122.R.I. Davis, A. Zabos, and A. Burns. Efficient exact schedulability tests for fixed priority real-time systems. IEEE Transactions on Computers, Apr (Preprint) 2008.Google Scholar
- 144.O. Marchi dos Santos and A. J. Wellings. Cost monitoring and enforcement in the Real-Time Specification for Java - a formal evaluation. In Proceedings of the 26th Real-Time Systems Symposium, pages 177–186. IEEE Computer Society Press, 2005.Google Scholar
- 150.T. Erl. Service-Oriented Architecture: Concepts, Technology, and Design. Prentice Hall, 2005.Google Scholar
- 180.N. Gui, V. De Flori, H. Sun, and C. Blondia. A framework for adaptive real-time applications: the declarative real-time OSGi component model. In Proceedings of the 7th workshop on Reflective and adaptive middleware, ARM’08, pages 35–40, New York, NY, USA, 2008. ACM.Google Scholar
- 191.R. Henriksson. Scheduling Garbage Collection in Embedded Systems. PhD thesis, Lund Institute of Technology, July 1998.Google Scholar
- 243.A. Kung, J.J. Hunt, L. Gauthier, and M. Richard-Foy. Issues in building an ANRTS platform. In Proceedings of the 4th international workshop on Java technologies for real-time and embedded systems, JTRES’06, pages 144–151, New York, NY, USA, 2006. ACM.Google Scholar
- 248.J.P. Lehoczky, L. Sha, and J.K. Strosnider. Enhanced aperiodic responsiveness in hard real-time environments. In Proceedings of the Real-Time Systems Symposium, pages 110–123, San jose, California, December 1987. IEEE Computer Society.Google Scholar
- 253.J.W.S.W. Liu. Real-Time Systems. Prentice Hall PTR, Upper Saddle River, NJ, USA, 1st edition, 2000.Google Scholar
- 274.T. Miettinen, D. Pakkala, and M. Hongisto. A method for the resource monitoring of osgi-based software components. In Software Engineering and Advanced Applications, 2008. SEAA’08. 34th Euromicro Conference, pages 100–107, September 2008.Google Scholar
- 288.OSGi Alliance. About the OSGi service platform. Available from: www.osgi.org/wiki/uploads/Links/OSGiTechnicalWhitePaper.pdf, cited February 2011.
- 289.OSGi Alliance. OSGi service platform core specification, release 4. Available at http://www.osgi.org/Specifications/HomePage, cited February 2011.
- 297.F. Pizlo, J. M. Fox, D. Holmes, and J. Vitek. Real-time Java scoped memory: Design patterns and semantics. In Proceedings of the 7th IEEE International Symposium on Object-Oriented Real-Time Distributed Computing (ISORC 2004), pages 101–110, 2004.Google Scholar
- 323.T. Richardson. Developing Dynamically Reconfigurable Real-Time Systems with Real-Time OSGi (RT-OSGi). PhD thesis, University of York, 2011.Google Scholar
- 324.T. Richardson and A. Wellings. An admission control protocol for real-time OSGi. In The 13th IEEE International Symposium on Object/component/service-oriented Real-time distributed computing, 2010.Google Scholar
- 326.T. Richardson and A.J. Wellings. On the road to real-time osgi: Extending osgi with an admission control protocol. International Journal of Computer Systems Science and Engineering (IJCSSE), to appear.Google Scholar
- 338.S. Saewong, R. Ragunathan, J.P. Lehoczky, and M.H. Klein. Analysis of hierar hical fixed-priority scheduling. Euromicro Conference on Real-Time Systems, 0:173, 2002.Google Scholar
- 373.F. Siebert. Realtime garbage collection in the JamaicaVM 3.0. In JTRES, pages 94–103, 2007.Google Scholar
- 399.Sun MicroSystems. The real-time Java platform- a technical white paper. Available at http://labs.oracle.com/projects/mackinac/, cited February 2011.
- 400.Sun MicroSystems. Sun Java real-time system 2.2 technical documentation. Available from: http://download.oracle.com/javase/realtime/rts_productdoc_2.2.html, Last accessed: February 2011.
- 427.A.J. Wellings, G. Bollella, P. Dibble, and D. Holmes. Cost enforcement and deadline monitoring in the Real-Time Specification for Java. In Proceedings of the 7th IEEE International Symposium on Object-Oriented Real-Time Distributed Computing ISORC-2004, pages 78–85. Computer Society, IEEE, IEEE, May 2004.Google Scholar
- 428.A.J. Wellings, Y. Chang, and T. Richardson. Enhancing the platform independence of the Real-Time Specification for Java. In Proceedings of the 7th International Workshop on Java Technologies for Real-Time and Embedded Systems, ACM International Conference Proceeding Series, pages 61–69, New York, NY, USA, 2009. ACM.Google Scholar
- 435.R. Wilhelm, J. Engblom, A. Ermedahl, N. Holsti, S. Thesing, D. Whalley, G. Bernat, C. Ferdinand, R. Heckmann, T. Mitra, F. Mueller, I. Puaut, P. Puschner, J. Staschulat, and P. Stenström. The worst-case execution-time problem – overview of methods and survey of tools. ACM Trans. Embed. Comput. Syst., 7:36:1–36:53, May 2008.Google Scholar
- 447.A. Zabos and A. Burns. Towards bandwidth optimal temporal partitioning. Available at http://www.cs.york.ac.uk/ftpdir/reports/2009/YCS/442/YCS-2009-442.pdf, 2009.