On‐line software version change using state transfer between processes
- 1 September 1993
- journal article
- Published by Wiley in Software: Practice and Experience
- Vol. 23 (9) , 949-964
- https://doi.org/10.1002/spe.4380230903
Abstract
The usual way of installing a new version of a piece of software is to shut down the running program and then install the new version. This necessitates a sometimes unacceptable delay during which service is denied to the users of the software. An on‐line software replacement system replaces parts of the software while it is in execution, thus eliminating the shutdown. In this paper, we describe a system for on‐line software version change for software written in the C language. When the change is initiated by the user, the system instantiates a new process with the new version of the software, transfers state from the old process to the new one at an appropriate time, and transfers the control to the new process. The user sees a minimal delay in this switchover.Keywords
This publication has 13 references indexed in Scilit:
- On dynamically updating a computer program: From concept to prototypeJournal of Systems and Software, 1991
- The evolving philosophers problem: dynamic change managementIEEE Transactions on Software Engineering, 1990
- Dynamic program updating: A software maintenance technique for minimizing software, downtimeJournal of Software Maintenance: Research and Practice, 1989
- Constructing distributed systems in ConicIEEE Transactions on Software Engineering, 1989
- Dynamic Configuration for Distributed SystemsIEEE Transactions on Software Engineering, 1985
- Secure communication using remote procedure callsACM Transactions on Computer Systems, 1985
- Implementing remote procedure callsACM Transactions on Computer Systems, 1984
- Elements of Software Configuration ManagementIEEE Transactions on Software Engineering, 1984
- Dynamic Restructuring in an Experimental Operating SystemIEEE Transactions on Software Engineering, 1978
- Guarded commands, nondeterminacy and formal derivation of programsCommunications of the ACM, 1975