Abstract
The Time-triggered Message-triggered Object (TMO) programming and specification scheme came out of an effort to remove the limitations of conventional object structuring techniques in developing real-time (RT) distributed computing components and composing distributed computing applications out of such components and others. It is a natural and syntactically small but semantically powerful extension of the object oriented (OO) design and implementation techniques which allows the system designer to specify in natural and yet precise forms timing requirements imposed on data and function components of high-level distributed computing objects. TMO Support Middleware (TMOSM) was devised to be an efficient middleware architecture that can be easily adapted to many commercial-off-the-shelf (COTS) hardware + kernel operating system platforms to form efficient TMO execution engines. However, up until 2003, its adaptations were done for Microsoft Windows platforms only. As we have been developing and refining an adaptation of TMOSM to the Linux 2.6 operating system platform in recent years, TMOSM has been refined to possess further improved modularity and portability. This paper presents the refined TMOSM as well as the techniques developed for efficient adaptation of TMOSM to the Linux 2.6 platform.
Similar content being viewed by others
References
Brinch Hansen P (1973) Operating system principles. Prentice-Hall, Englewood Cliffs
Cloutier P, Mantegazza P, Papacharalambous S, Soanes I, Hughes S, Yaghmour K (2000) DIAPM-RTAI position paper. In: Proceedings of real-time Linux workshop
Dijkstra EW (1968) Communicating sequential processes. In: Genuys F (ed) Programming languages. Academic, London, pp 43–112
Jenks SF, Kim KH, Henrich E, Li YQ, Zheng LC, Kim MH, Youn HY, Lee KH, Seol DM (2005) A Linux-based implementation of a middleware model supporting time-triggered message-triggered objects. In: Proceedings of ISORC 2005 (8th IEEE CS international symposium on object-oriented real-time distributed computing), Seattle, May 2005, pp 350–358
Kim KH (1997) Object structures for real-time systems and simulators. IEEE Computer 30(8):62–70
Kim KH (2000) APIs for real-time distributed object programming. In: IEEE Computer, June 2000, pp 72–80
Kim KH (2002) Commanding and reactive control of peripherals in the TMO programming scheme. In: Proceedings of 5th IEEE CS international symposium on OO real-time distributed computing (ISORC 2002), Crystal City, VA, 2002, pp 448–456
Kim KH (2003) Basic program structures for avoiding priority inversions. In: Proceedings of IEEE CS 6th international symposium on object-oriented real-time distributed computing (ISORC 2003), Hakodate, Japan, pp 26–34
Kim KH (2006) A non-blocking buffer mechanism for real-time event message communication. Real-Time Syst 32(3):197–221
Kim KH, Liu JQ (2002) Going beyond deadline-driven low-level scheduling in distributed real-time computing systems. In: B. Kleinjohann, et al (eds) Design and analysis of distributed embedded systems proceedings IFIP 17th world computer congress, TC10 stream, Montreal, Canada, August 2002, pp 205–215
Kim KH, Ishida M, Liu J (1999) An efficient middleware architecture supporting time-triggered message-triggered objects and an NT-based implementation. In: Proceedings of 2nd IEEE CS international symposium on object-oriented real-time distributed computing (ISORC *99), St. Malo, France, pp 54–63
Kim KH, Liu JQ, Kim MH, Shokri EH (2001) TMOES: a CORBA service middleware enabling high-level real-time object programming. In: Proceedings of IEEE CS 5th international symposium on autonomous decentralized systems (ISADS), Dallas, TX, pp 327–335
Kim HJ, Park SH, Kim MH (2002a) TMO-Linux: a Linux-based real-time operating system supporting execution of TMOs. In: Proceedings of 5th IEEE CS international symposium on OO real-time distributed computing (ISORC 2002), Washington, DC, pp 288–294
Kim KH, Liu JQ, Miyazaki H, Shokri EH (2002b) CORBA service middleware enabling high-level high-precision real-time distributed object programming. Comput. Sys. Sci. Eng. 17(2):77–84
Kim KH, Im CS, Athreya P (2002c) Realization of a distributed os component for internal clock synchronization in a Lan environment. In: Proceedings of 5th IEEE CS international symposium on OO real-time distributed computing (ISORC 2002), Crystal City, VA, pp 263–270
Kim KH, Li Y, Liu S, Kim MH, Kim DH (2005) RMMC programming model and support execution engine in the TMO programming scheme. In: Proceedings ISORC 2005 (8th IEEE CS international symposium on object-oriented real-time distributed computing), Seattle, May 2005, pp 34–43
Kopetz H (1997) Real-time systems—design principles for distributed embedded applications. Kluwer Academic, Dordrecht, Chap. 3, pp 45–70.
Kopetz H, Reisinger J (1993) NBW: A non-blocking write protocol for task communication in real-time systems. In: Proceedings IEEE CS 1993 real-time systems symposium, December 1993, pp 131–137
Mills DL (1991) Internet time synchronization: the network time protocol. IEEE Trans Commun 39(10):1482–1493
Silberschatz A, Galvin PB, Gagne G (2002) Operating system concepts, 6th edn. Wiley, New York
Snir M, Otto S, Huss-Lederman S, Walker D, Dongarra J (1998) MPI—the complete reference, vol. 1: the MPI core, 2nd edn. MIT Press, Cambridge
Wang Y-C, Lin K-J (1999) Implementing a general real-time scheduling framework in the RED-Linux real-time kernel. In: Proceedings of IEEE real-time systems symposium, pp 246–255
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Jenks, S.F., Kim, K., Li, Y. et al. A middleware model supporting time-triggered message-triggered objects for standard Linux systems. Real-Time Syst 36, 75–99 (2007). https://doi.org/10.1007/s11241-007-9018-1
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s11241-007-9018-1