Dynamic configuration management in a graph-oriented Distributed Programming Environment

Dynamic configuration is a desirable property of a distributed system where dynamic modification and extension to the system and the applications are required. It allows the system configuration to be specified and changed while the system is executing. This paper describes a software platform that facilitates a novel approach to the dynamically configurable programming of parallel and distributed applications and systems. This platform is based on a graph-oriented model and it provides support for constructing reconfigurable distributed programs. We describe the design and implementation of a dynamic configuration manager for the graph-oriented distributed programming environment. The requirements and services for dynamic reconfiguration are identified. The architectural design of a dynamic configuration manager is presented, and a parallel virtual machine-based prototypical implementation of the manager, on a local area network of workstations, is described.

[1]  Morris Sloman,et al.  Constructing Distributed Systems in Conic , 1989, IEEE Trans. Software Eng..

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

[3]  R. Prim Shortest connection networks and some generalizations , 1957 .

[4]  Brian A. Wichmann,et al.  Reference Manual for the Ada Programming Language. Proposed Standard Document , 1980 .

[5]  C. A. R. Hoare,et al.  Communicating sequential processes , 1978, CACM.

[6]  Jiannong Cao,et al.  Portable runtime support for graph-oriented parallel and distributed programming , 2000, Proceedings International Symposium on Parallel Architectures, Algorithms and Networks. I-SPAN 2000.

[7]  Jeff Magee,et al.  Dynamic Configuration for Distributed Systems , 1985, IEEE Transactions on Software Engineering.

[8]  Peyman Oreizy,et al.  On the role of software architectures in runtime system reconfiguration , 1998, IEE Proc. Softw..

[9]  M. Sloman Network and distributed systems management , 1994 .

[10]  Jeff Kramer Configuration programming-a framework for the development of distributable systems , 1990, COMPEURO'90: Proceedings of the 1990 IEEE International Conference on Computer Systems and Software Engineering@m_Systems Engineering Aspects of Complex Computerized Systems.

[11]  Henry Ledgard,et al.  Reference Manual for the ADA® Programming Language , 1983, Springer New York.

[12]  Gordon S. Blair,et al.  The design of a configurable and reconfigurable middleware platform , 2002, Distributed Computing.

[13]  James M. Purtilo,et al.  Dynamic reconfiguration in distributed systems: adapting software modules for replacement , 1993, [1993] Proceedings. The 13th International Conference on Distributed Computing Systems.

[14]  Peyman Oreizy,et al.  On the role of software architectures in runtime system reconfiguration , 1998, Proceedings. Fourth International Conference on Configurable Distributed Systems (Cat. No.98EX159).

[15]  Thomas J. LeBlanc,et al.  HPC: A model of structure and change in distributed systems , 1985, IEEE Transactions on Computers.

[16]  R. Cole,et al.  Configurable Distributed Systems [Editorial] , 1998 .

[17]  David Peleg,et al.  Distributed Data Structures: A Complexity-Oriented View , 1991, WDAG.

[18]  Roberto Ierusalimschy,et al.  Dynamic configuration with CORBA components , 1998, Proceedings. Fourth International Conference on Configurable Distributed Systems (Cat. No.98EX159).

[19]  Mario R. Barbacci,et al.  Durra: A Task-Level Description Language Reference Manual (Version 2) , 1989 .

[20]  Farhad Arbab,et al.  Configuration and dynamic reconfiguration of components using the coordination paradigm , 2001, Future Gener. Comput. Syst..

[21]  Gregory R. Andrews,et al.  The distributed programming language SR—Mechanisms, design and implementation , 1982, Softw. Pract. Exp..

[22]  Nicholas Carriero,et al.  Distributed data structures in Linda , 1986, POPL '86.

[23]  Arthur B. Maccabe,et al.  The design of a programming language based on connectivity networks , 1982, ICDCS.

[24]  Vipin Kumar,et al.  Parallel search algorithms for discrete optimization problems , 1993, System Modelling and Optimization.

[25]  上田 和紀 20世紀の名著名論:C.A.R.Hoare:Communicating Sequential Processes , 2005 .

[26]  Jeff Kramer Editorial. Configurable distributed systems , 1993 .

[27]  George Karypis,et al.  Introduction to Parallel Computing , 1994 .

[28]  Toby Bloom,et al.  Reconfiguration and module replacement in Argus: theory and practice , 1993, Softw. Eng. J..

[29]  Kaveh M. Moazami-Goudarzi,et al.  Consistency preserving dynamic reconfiguration of distributed systems , 1999 .

[30]  Andrew William Roscoe,et al.  The Theory and Practice of Concurrency , 1997 .

[31]  Thaís Vasconcelos Batista,et al.  Dynamic reconfiguration of component-based applications , 2000, 2000 Proceedings International Symposium on Software Engineering for Parallel and Distributed Systems.

[32]  James M. Purtilo,et al.  An environment for prototyping distributed applications , 1989, [1989] Proceedings. The 9th International Conference on Distributed Computing Systems.

[33]  Ophir Frieder,et al.  On dynamically updating a computer program: From concept to prototype , 1991, J. Syst. Softw..

[34]  Naranker Dulay,et al.  Structuring parallel and distributed programs , 1993, Softw. Eng. J..

[35]  Brian K. Totty Experimental analysis of data management for distributed data structures , 1992 .

[36]  Gregory R. Andrews,et al.  Paradigms for process interaction in distributed programs , 1991, CSUR.

[37]  Gregory R. Andrews,et al.  An overview of the SR language and implementation , 1988, TOPL.

[38]  Jeff Magee,et al.  Graphical configuration programming , 1989, Computer.

[39]  Jack Dongarra,et al.  PVM: Parallel virtual machine: a users' guide and tutorial for networked parallel computing , 1995 .