Supporting Automatic Configuration of Component-Based Distributed Systems

Recent developments in Component technology enable the construction of complex software systems by assembling together off-the-shelf components. However, it is still difficult to develop efficient, reliable, and dynamically configurable component-based systems. Components are often developed by different groups with different methodologies. Unspecified dependencies and behavior lead to unexpected failures. Component-based software systems must maintain explicit representations of inter-component dependence and component requirements. This provides a common ground for supporting fault-tolerance and automating dynamic configuration. In this paper, we present a generic model for reifying dependencies in distributed component systems and discuss how it can be used to support automatic configuration. We describe our experience deploying the framework in a CORBA-compliant reflective ORB and discuss the use of this model in a new distributed operating system.

[1]  Santosh K. Shrivastava,et al.  Architectural support for dynamic reconfiguration of large scale distributed applications , 1998, Proceedings. Fourth International Conference on Configurable Distributed Systems (Cat. No.98EX159).

[2]  Roy H. Campbell,et al.  Fine-grained, dynamic user customization of operating systems , 1996, Proceedings of the Fifth International Workshop on Object-Orientation in Operation Systems.

[3]  James M. Purtilo,et al.  The POLYLITH software bus , 1994, TOPL.

[4]  Adam Denning,et al.  ActiveX controls inside out (2nd ed.) , 1997 .

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

[6]  Ralph Johnson,et al.  design patterns elements of reusable object oriented software , 2019 .

[7]  Paul C. Clements,et al.  A survey of architecture description languages , 1996, Proceedings of the 8th International Workshop on Software Specification and Design.

[8]  クイック,et al.  ActiveX controls inside out , 1997 .

[9]  Christine Hofmeister Dynamic reconfiguration of distributed applications , 1993 .

[10]  Vinny Cahill,et al.  Meta-Object Protocols for C++: The Iguana Approach. , 1996 .

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

[12]  Mary Shaw,et al.  Abstractions and implementations for architectural connections , 1996, Proceedings of International Conference on Configurable Distributed Systems.

[13]  Marc Shapiro,et al.  SOS: An Object-Oriented Operating System - Assessment and Perspectives , 1989, Comput. Syst..

[14]  Brian N. Bershad,et al.  Extensibility safety and performance in the SPIN operating system , 1995, SOSP.

[15]  Jari Koistinen,et al.  Quality of services specification in distributed object systems design , 1998 .

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

[17]  Mary Shaw,et al.  Software architecture - perspectives on an emerging discipline , 1996 .

[18]  Marc Shapiro,et al.  Persistence and Migration for C++ Objects , 1989, ECOOP.

[19]  Michi Henning Binding, migration, and scalability in CORBA , 1998, CACM.

[20]  Shigeru Chiba,et al.  A metaobject protocol for C++ , 1995, OOPSLA.

[21]  John A. Zinky,et al.  QoS Aspect Languages and Their Runtime Integration , 1998, LCR.

[22]  Robert Grimm,et al.  Application performance and flexibility on exokernel systems , 1997, SOSP.

[23]  Fabio Kon,et al.  On the Role of Inter-Component Dependence in Supporting Automatic Reconfiguration , 1998 .

[24]  James M. Purtilo,et al.  Surgeon: a packager for dynamically reconfigurable distributed applications , 1992, Softw. Eng. J..

[25]  K. Loepere,et al.  Mach 3 Kernel Principles , 1992 .