Real-Time CORBA Middleware [chapter]

Arvind S. Krishna, Douglas C. Schmidt, Raymond Klefstad, Angelo Corsaro
<span title="2005-07-01">2005</span> <i title="John Wiley &amp; Sons, Ltd"> Middleware for Communications </i> &nbsp;
REAL-TIME CORBA MIDDLEWARE 2 development of distributed systems by off-loading the tedious and error-prone aspects of distributed computing from application developers to middleware developers. Distributed computing middleware has been used successfully in desktop and enterprise systems Zahavi and Linthicum (1999) where scalability, evolvability, and interoperability are essential for success. In this context, middleware offers the considerable benefits of hardware-, language-, and
more &raquo; ... ce, and, in some cases, opensource availability as well. The benefits of middleware are also desirable for development of distributed, realtime, and embedded (DRE) systems. Because of their multiple constraints across different dimensions of performance, DRE systems are harder to develop, maintain, and evolve than mainstream desktop and enterprise software. In addition to the needs of desktop and enterprise systems, DRE systems impose stringent quality of service (QoS) constraints. Real-time performance, for example, imposes strict constraints upon bandwidth, latency, and dependability. Additionally, many embedded devices must operate under memory, processor, and power limitations. DRE systems, furthermore, are becoming more and more widespread, and more and more diverse in their needs and priorities. Examples of DRE systems include telecommunication networks (e.g., wireless phone services), tele-medicine (e.g., robotic surgery), process automation (e.g., hot rolling mills), and defense applications (e.g., total ship computing environments). The additional difficulties faced in developing these systems intensifies the need for middleware, to off-load time-consuming and error-prone aspects of real-time and embedded computing, and to eliminate the need for continual reinvention of custom solutions. The Real-time CORBA specification Obj (2002b) was standardized by the OMG to support the QoS needs of DRE systems. Real-time CORBA is a rapidly maturing middleware technology designed for applications with hard real-time requirements, such as avionics mission computing Schmidt et al. (1998b) , as well as those with softer real-time requirements, such as telecommunication call processing and streaming video Schmidt et al. (2000a) . When combined with a quality real-time OS foundation, well-tuned implementations of Real-time CORBA can meet the QoS needs of DRE systems and, at the same time, offer the development benefits of middleware. Contributions of this chapter. Although Real-time CORBA offers substantial benefits, and the Real-time CORBA 1.0 specification was integrated into the OMG standard several years ago, it has not been universally adopted by DRE application developers, partly because of the following issues: • Performance overhead, such as excessive run-time overhead and lack of predictability, • Lack of customization, or difficult customization, where customization is needed to enable Real-time CORBA Object Request Brokers (ORBs) to be used in differing domains, • Memory footprint overhead, stemming largely from monolithic ORB implementations, and • Steep learning curve, caused largely by the complexity of the CORBA-C++ mapping.
<span class="external-identifiers"> <a target="_blank" rel="external noopener noreferrer" href="">doi:10.1002/0470862084.ch17</a> <a target="_blank" rel="external noopener" href="">fatcat:qkyenmj7vvfz7bc5lt4gza6sxq</a> </span>
<a target="_blank" rel="noopener" href="" title="fulltext PDF download" data-goatcounter-click="serp-fulltext" data-goatcounter-title="serp-fulltext"> <button class="ui simple right pointing dropdown compact black labeled icon button serp-button"> <i class="icon ia-icon"></i> Web Archive [PDF] <div class="menu fulltext-thumbnail"> <img src="" alt="fulltext thumbnail" loading="lazy"> </div> </button> </a> <a target="_blank" rel="external noopener noreferrer" href=""> <button class="ui left aligned compact blue labeled icon button serp-button"> <i class="external alternate icon"></i> </button> </a>