RT-OSGi: Integrating the OSGi Framework with the Real-Time Specification for Java

  • Thomas Richardson
  • Andy J. Wellings


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.


  1. 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
  2. 9.
    J.C.R. Americo. A study of the impact of real-time constraints on Java/OSGi applications. Available at, 2010.
  3. 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
  4. 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
  5. 57.
    K. Birman and T. Joseph. Exploiting virtual synchrony in distributed systems. SIGOPS Oper. Syst. Rev., 21:123–138, November 1987.CrossRefGoogle Scholar
  6. 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
  7. 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
  8. 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
  9. 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
  10. 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
  11. 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
  12. 150.
    T. Erl. Service-Oriented Architecture: Concepts, Technology, and Design. Prentice Hall, 2005.Google Scholar
  13. 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
  14. 183.
    R.S. Hall and H. Cervantes. Challenges in building service-oriented applications for osgi. Communications Magazine, IEEE, 42(5):144–149, May 2004.CrossRefGoogle Scholar
  15. 191.
    R. Henriksson. Scheduling Garbage Collection in Embedded Systems. PhD thesis, Lund Institute of Technology, July 1998.Google Scholar
  16. 232.
    M. Joseph and P.K. Pandya. Finding response times in a real-time system. Computer Journal, 29(5):390–395, 1986.MathSciNetCrossRefGoogle Scholar
  17. 236.
    T. Kim, N. Chang, N. Kim, and H. Shin. Scheduling garbage collector for embedded real-time systems. SIGPLAN Not., 34:55–64, May 1999.CrossRefGoogle Scholar
  18. 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
  19. 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
  20. 252.
    C.L. Liu and J.W. Layland. Scheduling algorithms for multiprogramming in a hard-real-time environment. J. ACM, 20(1):46–61, 1973.MathSciNetzbMATHCrossRefGoogle Scholar
  21. 253.
    J.W.S.W. Liu. Real-Time Systems. Prentice Hall PTR, Upper Saddle River, NJ, USA, 1st edition, 2000.Google Scholar
  22. 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
  23. 288.
    OSGi Alliance. About the OSGi service platform. Available from:, cited February 2011.
  24. 289.
    OSGi Alliance. OSGi service platform core specification, release 4. Available at, cited February 2011.
  25. 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
  26. 323.
    T. Richardson. Developing Dynamically Reconfigurable Real-Time Systems with Real-Time OSGi (RT-OSGi). PhD thesis, University of York, 2011.Google Scholar
  27. 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
  28. 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
  29. 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
  30. 373.
    F. Siebert. Realtime garbage collection in the JamaicaVM 3.0. In JTRES, pages 94–103, 2007.Google Scholar
  31. 382.
    B. Sprunt, L. Sha, and J.P. Lehoczky. Aperiodic task scheduling for hard-real-time systems. Real-Time Systems, 1:27–60, 1989. 10.1007/BF02341920.CrossRefGoogle Scholar
  32. 385.
    D.B. Stewart, R.A. Volpe, and P.K. Khosla. Design of dynamically reconfigurable real-time software using port-based objects. IEEE Transactions on Software Engineering, 23(12):759–776, December 1997.CrossRefGoogle Scholar
  33. 387.
    J.K. Strosnider, J.P. Lehoczky, and L. Sha. The deferrable server algorithm for enhanced aperiodic responsiveness in hard real-time environments. IEEE Transactions on Computers, 44(1):73–91, January 1995.zbMATHCrossRefGoogle Scholar
  34. 399.
    Sun MicroSystems. The real-time Java platform- a technical white paper. Available at, cited February 2011.
  35. 400.
    Sun MicroSystems. Sun Java real-time system 2.2 technical documentation. Available from:, Last accessed: February 2011.
  36. 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
  37. 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
  38. 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
  39. 447.
    A. Zabos and A. Burns. Towards bandwidth optimal temporal partitioning. Available at, 2009.

Copyright information

© Springer Science+Business Media, LLC 2012

Authors and Affiliations

  1. 1.Department of Computer ScienceUniversity of YorkYorkUK

Personalised recommendations