The Service Configurator framework: an extensible architecture for dynamically configuring concurrent, multi-service network daemons

Developing extensible, robust, and efficient network daemons is a challenging task. The authors describe a daemon control framework consisting of automated tools and reusable components that simplify the task of developing, configuring, and reconfiguring concurrent, multi-service network daemons. These daemons contain multiple communication-related services that execute in one or more processes or threads. This framework uses object-oriented design techniques and C++ language features to enhance operating system mechanisms that provide inter-process communication, communication port demultiplexing, explicit dynamic linking, and concurrency. In addition to describing the object-oriented architecture of the daemon control framework, the authors also present an example that illustrates how the framework supports the development of network daemons whose services may be updated and extended without modifying, recompiling, relinking, or restarting existing daemons.<<ETX>>

[1]  Grady Booch,et al.  Object-Oriented Analysis and Design with Applications , 1990 .

[2]  Naranker Dulay,et al.  A constructive development environment for parallel and distributed programs , 1994, Proceedings of 2nd International Workshop on Configurable Distributed Systems.

[3]  Stephen A. Rago,et al.  UNIX system V network programming , 1993, Addison-Wesley professional computing series.

[4]  James M. Purtilo,et al.  Dynamic reconfiguration of distributed programs , 1991, [1991] Proceedings. 11th International Conference on Distributed Computing Systems.

[5]  Fred Douglis,et al.  Process Migration in the Sprite Operating System , 1987, ICDCS.

[6]  Mark Smith,et al.  Beyond Multiprocessing: Multithreading the SunOS Kernel , 1992, USENIX Summer.

[7]  Douglas C. Schmidt,et al.  Measuring the performance of parallel message-based process architectures , 1995, Proceedings of INFOCOM'95.

[8]  Elliott I. Organick,et al.  The multics system: an examination of its structure , 1972 .

[9]  Douglas C. Schmidt,et al.  ADAPTIVE: A dynamically assembled protocol transformation, integration and evaluation environment , 1993, Concurr. Pract. Exp..

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

[11]  W. Richard Stevens,et al.  Unix network programming , 1990, CCRV.

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

[13]  Douglas Comer,et al.  Internetworking with TCP/IP vol. III: client-server programming and applications , 1993 .

[14]  Douglas C. Schmidt,et al.  Measuring the impact of alternative parallel process architecture on communication subsystem performance , 1994, Protocols for High-Speed Networks.

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

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

[17]  Robert A. Gingell,et al.  Shared Libraries in SunOS , 1987 .