Recent Additions on the Application Programming Interface of the TMO Support Middleware

  • K. H. (Kane) Kim
  • Juan A. Colmenares
  • Liangchen Zheng
  • Sheng Liu
  • Qian Zhou
  • Moon-Cheol Kim
Part of the Lecture Notes in Computer Science book series (LNCS, volume 4888)

Abstract

Developing distributed real-time systems with high degrees of assurance on the system reliability is becoming increasingly important, yet remains difficult and error-prone. The Time-triggered Message-triggered Object (TMO) scheme is a high-level distributed object-oriented programming approach that has proved to be effective in developing such systems. The TMO programming scheme allows real-time application developers to explicitly specify temporal constraints in terms of global time in simple and natural forms. TMOSM is a middleware model that provides the execution support mechanisms for TMOs and TMOSL is a C++ class library that provides a convenient application programming interface (API) for developing TMO applications. The TMO scheme, TMOSM, and TMOSL have evolved during these years in order to support complex distributed real-time applications more effectively. This paper presents some recent additions on the TMOSM API that resulted from this evolution.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Audsley, N.C., Burns, A., Davis, R.I., Tindell, K.W., Wellings, A.J.: Fixed priority pre-emptive scheduling: An historical perspective. Real-Time Systems 8(2), 173–198 (1995)CrossRefGoogle Scholar
  2. 2.
    Fay-Wolfe, V., DiPippo, L.C., Cooper, G., Johnson, R., Kortmann, P., Thuraisingham, B.: Real-time CORBA. IEEE Transactions on Parallel and Distributed Systems 11(10), 1073–1089 (2000)CrossRefGoogle Scholar
  3. 3.
    Object Management Group: RealTime-CORBA Specification, v 2.0. Object Management Group. OMG Document formal/03-11-01 edn (November 2003)Google Scholar
  4. 4.
    Lim, S.S., Bae, Y., Jang, C., Rhee, B.D., Min, S., Park, C., Shin, H., Park, K., Ki, C.: An accurate worst-case timing analysis for risc processors. IEEE Transactions on Software Engineering 21(7), 593–604 (1995)CrossRefGoogle Scholar
  5. 5.
    Puschner, P., Schedl, A.: Computing maximum task execution times - a graph-based approach. Real-Time Systems 13(1), 67–91 (1997)CrossRefGoogle Scholar
  6. 6.
    Li, Y.T.S., Malik, S.: Performance analysis of embedded software using implicit path enumeration. IEEE Transactions on Computer-aided Design of Integrated Circuits and Systems 16(12), 1477–1487 (1997)CrossRefGoogle Scholar
  7. 7.
    Li, Y.T.S., Malik, S., Wolfe, A.: Performance estimation of embedded software with instruction cache modeling. ACM Transactions on Design Automation of Electronic Systems 4(3), 257–279 (1999)CrossRefGoogle Scholar
  8. 8.
    Burns, A., Edgar, A.: Predicting computation time for advanced processors architectures. In: ECRTS 2000. Proceedings of the 12th Euromicro Conference on Real-Time Systems, p. 89 (June 2000)Google Scholar
  9. 9.
    Stappert, F., Ermedahl, A., Engblom, J.: Efficient longest executable path search for programs with complex flows and pipeline effects. In: CASES 2001. Proceedings of the 4th Int’l Conference on Compilers, Architecture, and Synthesis for Embedded Systems, pp. 132–140 (November 2001)Google Scholar
  10. 10.
    Colin, A., Bernat, G.: Scope-Tree: a program representation for symbolic worst-case execution time analysis. In: ECRTS 2002. 14th Euromicro on Real-Time Systems, pp. 50–59 (June 2002)Google Scholar
  11. 11.
    Ermedahl, A., Stappert, F., Engblom, J.: Clustered worst-case execution-time calculation. IEEE Transactions on Computers 54(9), 1104–1122 (2005)CrossRefGoogle Scholar
  12. 12.
    Burguière, C., Rochange, C.: History-based schemes and implicit path enumeration. In: WCET 2006. Proceedings of the 6th Workshop on Worst-Case Execution Time Analysis, pp. 17–22 (July 2006)Google Scholar
  13. 13.
    Kim, K.H.: Object structures for real-time systems and simulators. IEEE Computer 30(9), 62–70 (1997)CrossRefGoogle Scholar
  14. 14.
    Kim, K.H.: APIs for real-time distributed object programming. IEEE Computer 33(6), 72–80 (2000)CrossRefGoogle Scholar
  15. 15.
    Kim, K.H.: Real-time object-oriented distributed software engineering and the tmo scheme. International Journal of Software Engineering and Knowledge Engineering 9(2), 251–276 (1999)CrossRefGoogle Scholar
  16. 16.
    Kim, K.H.: Commanding and reactive control of peripherals in the TMO programming scheme. In: ISORC 2002. Proceedings of the 5th IEEE International Symposium on Object-Oriented Real-time Distributed Computing, pp. 448–456 (May 2002)Google Scholar
  17. 17.
    Kim, K.H., Li, Y., Liu, S., Kim, M.H., Kim, D.H.: RMMC programming model and support execution engine in the TMO programming scheme. In: ISORC 2005. Proceedings of the 8th IEEE International Symposium on Object-Oriented Real-Time Distributed Computing, pp. 34–43 (May 2005)Google Scholar
  18. 18.
    Kopetz, H.: Real-Time Systems: Design Principles for Distributed Embedded Applications. Kluwer Academic Publishers, Dordrecht (1997)MATHGoogle Scholar
  19. 19.
    Kim, K.H., Ishida, M., Liu, J.: An efficient middleware architecture supporting time-triggered message-triggered objects and an NT-based implementation. In: ISORC 1999. Proceedings of the 2nd IEEE International Symposium on Object-Oriented Real-time Distributed Computing, pp. 54–63 (May 1999)Google Scholar
  20. 20.
    Jenks, S.F., Kim, K.H., Henrich, E., Li, Y., Zheng, L., Kim, M.H., Lee, K.H., Seol, D.M., Youn, H.Y.: A linux-based implementation of a middleware model supporting time-triggered message-triggered objects. In: ISORC 2005. Proceedings of the 8th IEEE International Symposium on Object-Oriented Real-Time Distributed Computing, pp. 350–358 (May 2005)Google Scholar
  21. 21.
    Kim, K.H.: TMO Support Library (TMOSL): Facilities for C++ TMO Programming. Version 4.2.1. DREAM Laboratory, University of California, Irvine (January 2007)Google Scholar
  22. 22.
    Kim, H.J., Park, S.H., Kim, J.G., Kim, M.H., Rim, K.W.: TMO-Linux: A linux-based real-time operating system supporting execution of TMOs. In: ISORC 2002. Proceedings of the 5th IEEE International Symposium on Object-Oriented Real-Time Distributed Computing, pp. 288–294 (April 2002)Google Scholar
  23. 23.
    Kim, J.G., Kim, M.H., Kim, K., Heu, S.: TMO-eCos: An eCos-based real-time micro operating system supporting execution of a TMO structured program. In: ISORC 2005. Proceedings of the 8th IEEE International Symposium on Object-Oriented Real-Time Distributed Computing, pp. 182–189 (May 2005)Google Scholar
  24. 24.
    Kim, M.H., Kim, J.G., Kim, K.H., Lee, M.S., Park, S.Y.: Time-triggered message-triggered object modeling of a distributed real-time control application for its real-time simulation. In: COMPSAC 2000. Proceedings of the 24th Annual Int’l Computer Software and Applications Conference, pp. 549–556. IEEE Computer Society, Los Alamitos (2000)Google Scholar
  25. 25.
    Jo, E.H., Kim, M.H., Kim, J.G.: Modeling of multimedia streaming services based on the TMO structuring scheme. In: ISORC 2001. Proceedings of the 4th IEEE Int’l Symposium on Object-Oriented Real-Time Distributed Computing, pp. 420–427. IEEE Computer Society Press, Los Alamitos (2001)Google Scholar
  26. 26.
    Kim, M.H., Lim, S.H., Kim, J.G.: Modeling of a real-time distributed network management based on TMN and the TMO model. In: WORDS 2003. Proceedings of the 8th Int’l Workshop on Object-Oriented Real-Time Dependable Systems, pp. 56–63. IEEE Computer Society Press, Los Alamitos (2003)Google Scholar
  27. 27.
    Kim, K.H., Henrich, E., Im, C., Kim, M.C., Kim, S.J., Li, Y., Liu, S., Yoo, S.M., Zheng, L.C., Zhou, Q.: Distributed computing based streaming and play of music ensemble realized through tmo programming. In: WORDS 2005. Proceedings of the 10th IEEE Int’l Workshop on Object-Oriented Real-Time Dependable Systems, pp. 129–138 (February 2005)Google Scholar
  28. 28.
    Lee, H., Hwang, J., Lee, J., Park, S., Lee, C., Nah, Y., Jeon, S., Kim, M.H.: Long-term location data management for distributed moving object databases. In: ISORC 2006. Proceedings of the 9th IEEE Int’l Symposium on Object and Component-Oriented Real-Time Distributed Computing, IEEE Computer Society, Los Alamitos (2006)Google Scholar
  29. 29.
    Kim, K.H., Im, C., Athreya, P.: Realization of a distributed OS component for internal clock synchronization in a LAN environment. In: ISORC 2002. Proceedings of the 5th IEEE Int’l Symposium on Object-Oriented Real-Time Distributed Computing, pp. 263–270. IEEE Computer Society, Los Alamitos (2002)Google Scholar
  30. 30.
    Kopetz, H., Ochsenreiter, W.: Clock synchronization in distributed real-time systems. IEEE Transactions on Computers 36(8), 933–940 (1987)CrossRefMATHGoogle Scholar
  31. 31.
    Kemner, C.A., Peterson, J.L.: Remote control system and method for an autonomous vehicle. US Patent No. 5448479 (September 1995)Google Scholar
  32. 32.
    Veríssimo, P., Rodrigues, L.: A posteriori agreement for fault-tolerant clock synchronization on broadcast networks. In: FTCS 1992. Proceedings of the 22th Int’l Symposium on Fault-Tolerant Computing, pp. 527–536. IEEE Computer Society Press, Los Alamitos (1992)Google Scholar
  33. 33.
    Elson, J., Girod, L., Estrin, D.: Fine-grained network time synchronization using reference broadcasts. In: OSDI 2002. Proceedings of the 5th USENIX Symposium on Operating Systems Design and Implementation, pp. 147–163. ACM Press, New York (2002)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2008

Authors and Affiliations

  • K. H. (Kane) Kim
    • 1
  • Juan A. Colmenares
    • 1
  • Liangchen Zheng
    • 1
  • Sheng Liu
    • 1
  • Qian Zhou
    • 1
  • Moon-Cheol Kim
    • 1
  1. 1.DREAM Lab, Department of Electrical Engineering and Computer Science, University of California, Irvine, Irvine, CAUSA

Personalised recommendations