Image Processing Reference
In-Depth Information
TABLE .
Challenges and Potential Solutions
Challenge
Framework
Infrastructure reuse
ACE, TAO
Real-time assurances
Kokyu, TAO
TAO, e
∗
ORB
Robust DOC middleware
UIC-Core, e
∗
ORB
Reduced middleware footprint
Simulated real-time behavior
(TAO? Kokyu?)
are close to those offered by a general-purpose middleware implementation. In this case, provided
policy and mechanism options can be adjusted in the general-purpose middleware to fit the require-
ments of the application. In general, this has been the approach used to create and refine features for
real-time performance in TAO.
On the other hand, if the number or kinds of middleware features required differs signifi-
cantly from those available in general-purpose middleware, as is the case with many networked
embedded systems applications, then a bottom-up approach is preferable. This is based largely
on the observation that in our experience lower-level infrastructure abstractions are less inter-
dependent and thus more easily decoupled than higher-level ones. It is therefore easier to
achieve highly customized solutions by composing middleware from primitive infrastructure ele-
ments [,] than trying to extract the appropriate subset directly from a general-purpose middle-
ware implementation.
Modern software development relies heavily on reuse. Given a problem and a space of possible
solutions, we try first to see whether the problem can be solved directly from an existing solution to a
similar problem. Taking this view, we compared the challenges described in Section .. to existing
middleware solutions, as shown in Table ..
TAO[,]ande*ORB[,]appearedtobethemostsuitablecandidatesolutionsbasedonthe
requirements of our target application described in Section ... TAO is a widely used standards-
compliant ORB built using the ACE framework [,]. In addition to a predictable and opti-
mized [,] ORB core [], protocols [,], and dispatching [,] infrastructure, TAO offers
a variety of higher level services [,]. e*ORB is a customized ORB that offers space-efficient
implementation of a reduced set of features, with a corresponding reduction in footprint.
2.2.1 Problem: We Get More and/or Less Than We Need
Unfortunately, faithful implementation of the CORBA standard increases the number of features
supportedbyTAO,e*ORB,andothersimilarCORBAimplementationsandhenceresultsin
increased footprint for the application. In the case of memory constrained applications, this becomes
prohibitively expensive.
Although ACE reduces the complexity of the programming model for writing distributed object-
oriented applications and middleware infrastructure, it does not “directly” address the challenges of
real-time assurances, reduced footprint, or inter-operation with standards-based distribution mid-
dleware. Kokyu [] is a low-level middleware framework built on ACE, for flexible multi-paradigm
scheduling [] and configurable dispatching of real-time operations. Thus, Kokyu can supplement
the capabilities of another DOC middleware framework, but cannot replace it.
The UCI-Core approach supports different DOC middleware paradigms. It offers significant
reuse of infrastructure, patterns, and techniques by generalizing features common to multiple DOC
middleware paradigms and providing them within a minimal metaprogramming framework, thus
also addressing the challenge of reducing middleware footprint. However, it is unsuited to meet
other challenges described in Section .., e.g., it does not directly support real-time assurances
or simulation of real-time behavior.