262 research outputs found

    Composing Systemic Aspects into Component-Oriented DOC Middleware

    Get PDF
    The advent and maturation of component-based middleware frameworks have sim-pliļ¬ed the development of large-scale distributed applications by separating system devel-opment and conļ¬guration concerns into different aspects that can be speciļ¬ed and com-posed at various stages of the application development lifecycle. Conventional component middleware technologies, such as J2EE [73] and .NET [34], were designed to meet the quality of service (QoS) requirements of enterprise applications, which focus largely on scalability and reliability. Therefore, conventional component middleware speciļ¬cations and implementations are not well suited for distributed real-time and embedded (DRE) ap-plications with more stringent QoS requirements, such as low latency/jitter, timeliness, and online fault recovery. In the DRE system development community, a new generation of enhanced commercial off-the-shelf (COTS) middleware, such as Real-time CORBA 1.0 (RT-CORBA)[39], is increasingly gaining acceptance as (1) the cost and time required to develop and verify DRE applications precludes developers from implementing complex DRE applications from scratch and (2) implementations of standard COTS middleware specifications mature and encompass key QoS properties needed by DRE systems. However, although COTS middleware standardizes mechanisms to configure and control underlying OS support for an applicationā€™s QoS requirements, it does not yet provide sufficient abstractions to separate QoS policy configurations such as real-time performance requirements, from application functionality. Developers are therefore forced to configure QoS policies in an ad hoc way, and the code to configure these policies is often scattered throughout and tangled with other parts of a DRE system. As a result, it is hard for developers to configure, validate, modify, and evolve complex DRE systems consistently. It is therefore necessary to create a new generation of QoS-enabled component middleware that provides more comprehensive support for addressing QoS-related concerns modularly, so that they can be introduced and configured as separate systemic aspects. By analyzing and identifying the limitations of applying conventional middleware technologies for DRE applications, this dissertation presents a new design and its associated techniques for enhancing conventional component-oriented middleware to provide programmability of DRE relevant real-time QoS concerns. This design is realized in an implementation of the standard CORBA Component Model (CCM) [38], called the Component-Integrated ACE ORB (CIAO). This dissertation also presents both architectural analysis and empirical results that demonstrate the effectiveness of this approach. This dissertation provides three contributions to the state of the art in composing systemic behaviors into component middleware frameworks. First, it illustrates how component middleware can simplify development and evolution of DRE applications while ensuring stringent QoS requirements by composing systemic QoS aspects. Second, it contributes to the design and implementation of QoS-enabled CCM by analyzing and documenting how systemic behaviors can be composed into component middleware. Finally, it presents empirical and analytical results to demonstrate the effectiveness and the advantage of composing systemic behaviors in component middleware. The work in this dissertation has a broader impact beyond the CCM in which it was developed, as it can be applied to other component-base middleware technologies which wish to support DRE applications

    Customizing Component Middleware for Distributed Real-Time Systems with Aperiodic and Periodic Tasks

    Get PDF
    Many distributed real-time applications must handle mixed aperiodic and periodic tasks with diverse requirements. However, existing middleware lacks flexible configuration mechanisms needed to manage end-to-end timing easily for a wide range of different applications with both aperiodic and periodic tasks. The primary contribution of this work is the design, implementation and performance evaluation of the first configurable component middleware services for admission control and load balancing of aperiodic and periodic tasks in distributed real-time systems. Empirical results demonstrate the need for, and the effectiveness of, our configurable component middleware approach in supporting different applications with aperiodic and periodic tasks

    Roadmap Analysis of Protein-Protein Interactions. Master\u27s Thesis, August 2007

    Get PDF
    The ability to effectively model the interaction between proteins is an important and open problem. In molecular biology it is well accepted that from sequence arises form and from form arises function but relating structure to function remains a challenge. The function of a given protein is defined by its interactions. Likewise a malfunction or a change in protein-protein interactions is a hallmark of many diseases. Many researchers are studying the mechanisms of protein-protein interactions and one of the overarching goals of the community is to predict whether two proteins will bind, and if so what the final conformation will be. Attention is seldom paid to the association pathways that allow two proteins to bind. Evidence has shown that the information in the association pathways can play a vital role in understanding the interaction itself. This thesis presents a novel and scalable approach to computing association pathways between two proteins using the Probabilistic Roadmap (PRM) framework. We will discuss the challenges in extending PRM to the domain of protein-protein interactions such as performing structural mappings in a reduced space of flexibility, and sampling high dimensional conformation spaces. We will present analysis of individual association pathways as well as methods for estimating collective properties of the energy landscape. Our results indicate that these methods can discriminate between true and false protein binding interfaces. Finally, we will present condensing methods such as pathway clustering and visualization using dimensionality reduction that can be be applied to create compact representations of the interaction space

    Reconfigurable Real-Time Middleware for Distributed Cyber-Physical Systems with Aperiodic Events

    Get PDF
    Different distributed cyber-physical systems must handle aperiodic and periodic events with diverse requirements. While existing real-time middleware such as Real-Time CORBA has shown promise as a platform for distributed systems with time constraints, it lacks flexible configuration mechanisms needed to manage end-to-end timing easily for a wide range of different cyber-physical systems with both aperiodic and periodic events. The primary contribution of this work is the design, implementation and performance evaluation of the first configurable component middleware services for admission control and load balancing of aperiodic and periodic event handling in distributed cyber-physical systems. Empirical results demonstrate the need for, and the effectiveness of, our configurable component middleware approach in supporting different applications with aperiodic and periodic events, and providing a flexible software platform for distributed cyber-physical systems with end-to-end timing constraints

    Configurable Component Middleware for Distributed Real-Time Systems with Aperiodic and Periodic Tasks

    Get PDF
    Many distributed real-time applications must handle mixed periodic and aperiodic tasks with diverse requirements. However, existing middleware lacks flexible configuration mechanisms needed to manage end-to-end timing easily for a wide range of different applications with both periodic and aperiodic tasks. The primary contribution of this work is the design, implementation and performance evaluation of the first configurable component middleware services for admission control and load balancing of aperiodic and periodic tasks in distributed real-time systems. Empirical results demonstrate the need for and effectiveness of our configurable component middleware approach in supporting different applications with periodic and aperiodic tasks

    Flexible Scheduling in Middleware for Distributed rate-based real-time applications - Doctoral Dissertation, May 2002

    Get PDF
    Distributed rate-based real-time systems, such as process control and avionics mission computing systems, have traditionally been scheduled statically. Static scheduling provides assurance of schedulability prior to run-time overhead. However, static scheduling is brittle in the face of unanticipated overload, and treats invocation-to-invocation variations in resource requirements inflexibly. As a consequence, processing resources are often under-utilized in the average case, and the resulting systems are hard to adapt to meet new real-time processing requirements. Dynamic scheduling offers relief from the limitations of static scheduling. However, dynamic scheduling offers relief from the limitations of static scheduling. However, dynamic scheduling often has a high run-time cost because certain decisions are enforced on-line. Furthermore, under conditions of overload tasks can be scheduled dynamically that may never be dispatched, or that upon dispatch would miss their deadlines. We review the implications of these factors on rate-based distributed systems, and posits the necessity to combine static and dynamic approaches to exploit the strengths and compensate for the weakness of either approach in isolation. We present a general hybrid approach to real-time scheduling and dispatching in middleware, that can employ both static and dynamic components. This approach provides (1) feasibility assurance for the most critical tasks, (2) the ability to extend this assurance incrementally to operations in successively lower criticality equivalence classes, (3) the ability to trade off bounds on feasible utilization and dispatching over-head in cases where, for example, execution jitter is a factor or rates are not harmonically related, and (4) overall flexibility to make more optimal use of scarce computing resources and to enforce a wider range of application-specified execution requirements. This approach also meets additional constraints of an increasingly important class of rate-based systems, those with requirements for robust management of real-time performance in the face of rapidly and widely changing operating conditions. To support these requirements, we present a middleware framework that implements the hybrid scheduling and dispatching approach described above, and also provides support for (1) adaptive re-scheduling of operations at run-time and (2) reflective alternation among several scheduling strategies to improve real-time performance in the face of changing operating conditions. Adaptive re-scheduling must be performed whenever operating conditions exceed the ability of the scheduling and dispatching infrastructure to meet the critical real-time requirements of the system under the currently specified rates and execution times of operations. Adaptive re-scheduling relies on the ability to change the rates of execution of at least some operations, and may occur under the control of a higher-level middleware resource manager. Different rates of execution may be specified under different operating conditions, and the number of such possible combinations may be arbitrarily large. Furthermore, adaptive rescheduling may in turn require notification of rate-sensitive application components. It is therefore desirable to handle variations in operating conditions entirely within the scheduling and dispatching infrastructure when possible. A rate-based distributed real-time application, or a higher-level resource manager, could thus fall back on adaptive re-scheduling only when it cannot achieve acceptable real-time performance through self-adaptation. Reflective alternation among scheduling heuristics offers a way to tune real-time performance internally, and we offer foundational support for this approach. In particular, run-time observable information such as that provided by our metrics-feedback framework makes it possible to detect that a given current scheduling heuristic is underperforming the level of service another could provide. Furthermore we present empirical results for our framework in a realistic avionics mission computing environment. This forms the basis for guided adaption. This dissertation makes five contributions in support of flexible and adaptive scheduling and dispatching in middleware. First, we provide a middle scheduling framework that supports arbitrary and fine-grained composition of static/dynamic scheduling, to assure critical timeliness constraints while improving noncritical performance under a range of conditions. Second, we provide a flexible dispatching infrastructure framework composed of fine-grained primitives, and describe how appropriate configurations can be generated automatically based on the output of the scheduling framework. Third, we describe algorithms to reduce the overhead and duration of adaptive rescheduling, based on sorting for rate selection and priority assignment. Fourth, we provide timely and efficient performance information through an optimized metrics-feedback framework, to support higher-level reflection and adaptation decisions. Fifth, we present the results of empirical studies to quantify and evaluate the performance of alternative canonical scheduling heuristics, across a range of load and load jitter conditions. These studies were conducted within an avionics mission computing applications framework running on realistic middleware and embedded hardware. The results obtained from these studies (1) demonstrate the potential benefits of reflective alternation among distinct scheduling heuristics at run-time, and (2) suggest performance factors of interest for future work on adaptive control policies and mechanisms using this framework

    Patterns for Providing Real-Time Guarantees in DOC Middleware - Doctoral Dissertation, May 2002

    Get PDF
    The advent of open and widely adopted standards such as Common Object Request Broker Architecture (CORBA) [47] has simpliļ¬ed and standardized the development of distributed applications. For applications with real-time constraints, including avionics, manufacturing, and defense systems, these standards are evolving to include Quality-of-Service (QoS) speciļ¬cations. Operating systems such as Real-time Linux [60] have responded with interfaces and algorithms to guarantee real-time response; similarly, languages such as Real-time Java [59] include mechanisms for specifying real-time properties for threads. However, the middleware upon which large distributed applications are based has not yet addressed end-to-end guarantees of QoS speciļ¬cations. Unless this challenge can be met, developers must resort to ad hoc solutions that may not scale or migrate well among different platforms. This thesis provides two contributions to the study of real-time Distributed Object Computing (DOC) middleware. First, it identiļ¬es potential bottlenecks and problems with respect to guaranteeing real-time performance in contemporary middleware. Experimental results illustrate how these problems lead to incorrect real-time behavior in contemporary middleware platforms. Second, this thesis presents designs and techniques for providing real-time QoS guarantees in DOC middleware in the context of TAO [6], an open-source and widely adopted implementation of real-time CORBA. Architectural solutions presented here are coupled with empirical evaluations of end-to-end real-time behavior. Analysis of the problems, forces, solutions, and consequences are presented in terms of patterns and frame-works, so that solutions obtained for TAO can be appropriately applied to other real-time systems

    Building Customizable Middleware using Aspect-Oriented Programming - Master\u27s Thesis, May 2002

    Get PDF
    In order to support a wide range of applications, Distributed Object Computing (DOC) middleware frameworks such as ACE and TAO have grown to include a vast number of features. For any one application, though, unused functionality either contributes to code bloat, degrades performance or both. When applied to embedded and realtime systems, these issues can preclude the use of middleware altogether. Currently, to address these concerns, middleware developers continually refactor code to relegate functionality to separate libraries. This process is tedious, time-consuming, and adds complexity for both users and developers. To address the difficulties of creating subsettable middleware, we have developed a novel method for constructing middleware using Aspect-Oriented Programming (AOP) and applied it to develop a realtime CORBA Event Channel called the Framework for Aspect Composition of an EvenT channel (FACET). FACET consists of a small, essential core that represents the basic structure and functionality of any event channel. By using aspects, additional features are woven not the core so that the resulting event channel supports all of the features needed by a given embedded application

    Modeling Adaptive Middleware and Its Applications to Military Tactical Datalinks

    Get PDF
    Open systems solutions and techniques have become the de facto standard for achieving interoperability between disparate, large-scale, legacy software systems. A key technology among open systems solutions and techniques is middleware. Middleware, in general, is used to isolate applications from dependencies introduced by hardware, operating systems, and other low-level aspects of system architectures. While middleware approaches are or will be integrated into operational military systems, many open questions exist about the appropriate areas to applying middleware. Adaptive middleware is middleware that provides an application with a run-time adaptation strategy, based upon system-level interfaces and properties. Adaptive middleware is an example of an active applied research area. Adaptive middleware is being developed and applied to meet the ever-increasing challenges set forth by the next generation of mission-critical distributed real-time and embedded (DRE) systems. The driving force behind many next-generation DRE systems is the establishment of QoS requirements typically associated with workloads that vary dynamically. The Weapon System Open Architecture (WSOA), an adaptive middleware platform developed by Boeing, is modeled as a part of this research to determine the scalability of the architecture. The WSOA adaptive middleware was previously flight-tested with one tactical node, and the test results represent the performance baseline the architecture. The WSOA adaptive middleware is modeled with 1, 2, 4, 8 and 16 tactical nodes. The results of the modeling and simulation is that the WSOA adaptive middleware can achieve the performance baseline achieved during the original flight-test, in the cases of 1, 2, and 4 tactical nodes. In addition, the results of the modeling and simulation also demonstrate that the WSOA adaptive middleware cannot achiev
    • ā€¦
    corecore