Evaluating policies and mechanisms for supporting embedded, real-time applications with CORBA 3.0

To be an effective platform for performance-sensitive real time systems, commercial-off-the-shelf (COTS) distributed object computing (DOC) middleware must support application quality of service (QoS) requirements end-to-end. However, conventional DOC middleware does not provide this support, which makes it unsuited for applications with stringent latency, determinism, and priority preservation requirements. It is essential, therefore, to develop standards based, COTS DOC middleware that permits the specification, allocation, and enforcement of application QoS requirements end-to-end. The Real-time CORBA and Messaging specifications in the forthcoming CORBA 3.0 standard are important steps towards defining standards based COTS DOC middleware that can deliver end-to-end QoS support at multiple levels in distributed and embedded real time systems. However these specifications still lack sufficient detail to portably configure and control processor, communication, and memory resources for applications with stringent QoS requirements. The paper provides four contributions to research on real time DOC middleware. First, we show how the CORBA 3.0 Real-time and Messaging specifications provide a starting point for addressing the needs of an important class of applications with stringent real time requirements. Second, we show how the CORBA 3.0 specifications are not sufficient to solve all the issues within this application domain. Third, we describe how we have implemented portions of these specifications, as well as several enhancements, using TAO, which is our open-source real time CORBA ORB. Finally, we empirically evaluate the performance of TAO to illustrate how its features address the QoS requirements of certain types of real time applications.

[1]  Douglas C. Schmidt,et al.  The design of the TAO real-time object request broker , 1998, Comput. Commun..

[2]  Steve Vinoski,et al.  Advanced CORBA® Programming with C++ , 1999 .

[3]  John A. Zinky,et al.  Architectural Support for Quality of Service for CORBA Objects , 1997, Theory Pract. Object Syst..

[4]  Douglas C. Schmidt,et al.  Applying patterns to develop extensible ORB middleware , 1999, IEEE Commun. Mag..

[5]  Douglas C. Schmidt,et al.  Reactor: an object behavioral pattern for concurrent event demultiplexing and event handler dispatching , 1995 .

[6]  David Sharp,et al.  Freeing product line architectures from execution dependencies , 2000, SPLC.

[7]  K. H. Kim,et al.  Two CORBA services enabling TMO network programming , 1999, 1999 Proceedings. Fourth International Workshop on Object-Oriented Real-Time Dependable Systems.

[8]  Andrés Kruse,et al.  CMS online event filter software , 1998 .

[9]  Douglas C. Schmidt,et al.  Object-oriented application frameworks , 1997, CACM.

[10]  Douglas C. Schmidt,et al.  An overview of the CORBA portable object adapter , 1998, STAN.

[11]  W.-S. Liu Providing for an Open, Real-time Corba , 1997 .

[12]  Douglas C. Schmidt,et al.  Measuring the performance of communication middleware on high-speed networks , 1996, SIGCOMM 1996.

[13]  Douglas C. Schmidt,et al.  Applying Adaptive Real-time Middleware to Address Grand Challenges of COTS-based Mission-Critical Real-Time Systems , 1999 .

[14]  Douglas C. Schmidt,et al.  An Empirical Evaluation of OS Support for Real-time CORBA Object Request Brokers , 1998 .

[15]  Douglas C. Schmidt,et al.  The design and performance of a real-time CORBA event service , 1997, OOPSLA '97.

[16]  Douglas C. Schmidt,et al.  Applying C++, Patterns, and Components to Develop an IDL Compiler for CORBA AMI Callbacks , 1999 .

[17]  Lui Sha,et al.  The real-time publisher/subscriber inter-process communication model for distributed real-time systems: design and implementation , 1995, Proceedings Real-Time Technology and Applications Symposium.

[18]  Aniruddha S. Gokhale,et al.  The Advanced Computing Systems Association 5 Th Usenix Conference on Object-oriented Technologies and Systems (coots '99) Applying Optimization Principle Patterns to Design Real-time Orbs Applying Optimization Principle Patterns to Design Real-time Orbs , 2022 .

[19]  Douglas C. Schmidt,et al.  Optimizing a corba iiop protocol engine for minimal footprint multimedia systems , 1998 .

[20]  Gregor Kiczales,et al.  Aspect-oriented programming , 1996, CSUR.

[21]  Steve Vinoski New features for CORBA 3.0 , 1998, CACM.

[22]  Douglas C. Schmidt,et al.  Applying a scalable CORBA event service to large-scale distributed interactive simulations , 1999, Proceedings. Fifth International Workshop on Object-Oriented Real-Time Dependable Systems.

[23]  Douglas C. Schmidt,et al.  The Design and Performance of a Scalable ORB Architecture for CORBA Asynchronous Messaging , 2000, Middleware.

[24]  W. Richard Stevens,et al.  Unix network programming , 1990, CCRV.

[25]  Anees Shaikh,et al.  ARMADA Middleware Suite , 1997 .

[26]  K. H. Kim Object Structures for Real-Time Systems and Simulators , 1997, Computer.

[27]  Carlos O'Ryan,et al.  The Design and Performance of a Pluggable Protocols Framework for Real-Time Distributed Object Computing Middleware , 2000, Middleware.

[28]  Douglas C. Schmidt,et al.  Applying Optimization Principle Patterns to Real-time ORBs , 1999 .

[29]  Douglas C. Schmidt,et al.  ASX: An Object-Oriented Framework for Developing Distributed Applications , 1994, C++ Conference.

[30]  Lisa Cingiser DiPippo,et al.  Real-time CORBA , 1997, Proceedings Third IEEE Real-Time Technology and Applications Symposium.

[31]  Douglas C. Schmidt,et al.  Object-oriented framework for high-performance electronic medical imaging , 1996, Electronic Imaging.

[32]  Douglas C. Schmidt,et al.  Design and Performance of an Object-Oriented Framework for High-Speed Electronic Medical Imaging , 1996, Comput. Syst..

[33]  Victor Fay Wolfe,et al.  Real-time Method Invocations in Distributed Environments , 1995 .

[34]  Kang G. Shin,et al.  Structuring communication software for quality-of-service guarantees , 1996, 17th IEEE Real-Time Systems Symposium.

[35]  Aniruddha S. Gokhale,et al.  Optimizing a CORBA Internet inter-ORB protocol (IIOP) engine for minimal footprint embedded multimedia systems , 1999, IEEE J. Sel. Areas Commun..

[36]  Douglas C. Schmidt,et al.  The design and performance of a real-time I/O subsystem , 1999, Proceedings of the Fifth IEEE Real-Time Technology and Applications Symposium.