9 citations found. Retrieving documents...
Deepak Gupta and Pankaj Jalote. On-line software version change using state transfer between processes. Software Practice and Experience, 23(9):949--964, September 1993.

 Home/Search   Document Details and Download   Summary   Related Articles   Check  

This paper is cited in the following contexts:
Automatic Software Upgrades for Distributed Systems - Ajmani (2003)   (1 citation)  (Correct)

....approach to upgrading takes advantage of the fact that long lived systems are robust : they tolerate node failures, and they allow nodes to recover and rejoin the system. Nodes are prepared for failures and know how to recover to a consistent state. This means that we Dynamic updating systems [18, 19, 21, 24, 25, 32] can reduce the time required to upgrade a node, but they still require time to install new code and to transform a node s state. can model a node upgrade as a soft restart. But even with this assumption, there are several challenges that a general approach for upgrading distributed systems must ....

....13] and Java [38] They also let an administrator add and remove objects and change the links between them. These systems require manual upgrade scheduling and assume compatibility between versions. 9. 2 State Transformation Many upgrade systems allow the transformation of state between versions [14, 18, 19, 21, 24, 26,45]. Most base the correctness of their transform functions on Herlihy and Liskov s value transmission technique for ADTs [23] Some also provide tools that automatically generate transforms from the old and new version of an object s definition [24, 30, 45] Bloom [14, 15] argues that value ....

[Article contains additional citation context not shown here]

D. Gupta and P. Jalote. On-line software version change using state transfer between processes. Software Practice and Experience, 23(9), 1993.


Dynamic Software Updating - Hicks (2001)   (37 citations)  (Correct)

....portable state capture introduces a potentially significant overhead on running code due to code insertions required to unwind the stack. Despite these limitations, automatic state transfer has been successfully employed in a number of systems and scenarios to perform or support dynamic updating [GJ93, Hof93, TTA 99, GBHC00] In particular, when OS resident data structures need not be captured, 2 or when global state is simple and program structure is not appreciably changed, automatic state transfer can serve as an elegant means to upgrade without halting service. However, the ....

....updating. The systems mechanisms we consider here are the following (presented roughly chronologically) dynamic linking (which exists for various languages) DYMOS [Lee83] Argus [Blo83, BD93] Conic [MKS89, MK85] PODUS [FS91, SF93] PolyLith [Hof93] Online Software Version Change (OSVC) GJ93, Gup94, GJB96] Erlang [AVWW96, Hau94] Dynamic ML [GKW97, WKG98] Dynamic C [HG98] Dynamic Java classes [MPG 00] DITools [SNC00] Guarded Software Updating (GSU) TTA 99, TTA 00] and DynInst [BH00] A few other systems have been proposed (c.f. ACR98] but not fully explored 12 ....

[Article contains additional citation context not shown here]

Deepak Gupta and Pankaj Jalote. On-line software version change using state transfer between processes. Software---Practice and Experience, 23(9):949-- 964, September 1993.


On-Line Software Version Change - Gupta (1994)   Self-citation (Gupta Jalote)   (Correct)

....sections. The system has currently been implemented in C on a Sun 3 60 and has been designed for C programs. However, it can easily be extended for other procedural languages and can be ported to other systems running Unix. A description of the approach and the implementation is also given in [GJ93b] 49 4.2 System Design The proposed approach to on line version change is different from the traditional one of dynamic linking. The basic idea is to transfer state at an appropriate time, from a process running the old version of the software to a process running its new version. The user is ....

D. Gupta and P. Jalote. "On-line software version change using state transfer between processes". Software - Practice and Experience, 23(9):949--964, September 1993. 112


Increasing System Availability through On-Line Software.. - Deepak Gupta Pankaj (1993)   Self-citation (Gupta Jalote)   (Correct)

....and debugging both the versions of the program. Development of the new version is assumed to be done off line. That is, it does not form a part of the on line replacement system. We briefly describe how the modification shell implements the approach discussed above. Further details are given in [8]. The modification shell runs the programs as child processes and controls them by means of the ptrace system call [14] The ptrace call allows a process to inspect or modify its child process address space and machine registers. A running child process can be stopped by sending it a signal. The ....

....so that new data can be added in future versions. Furthermore, when variables are added in the new version, they can not be given meaningful names. Though not very elegant, this scheme will suffice for changes that require new data sparingly. Another scheme for adding global data is described in [8]. Global data deletion is not allowed in our system, as it will destroy the consistency of pointers and other addresses. So, any data that becomes redundant in the new version still must be kept in the new version. 1 This routine must not be named sort. 4.4 Restrictions The system imposes ....

[Article contains additional citation context not shown here]

D. Gupta and P. Jalote. "On-line software version change using state transfer between processes". To appear in Software Practice and Experience, 1993.


A Formal Framework for On-line Software Version Change - Gupta, Jalote (1996)   (19 citations)  Self-citation (Gupta Jalote)   (Correct)

....any approved changes are installed in the traditional manner. Several systems which support modifications to running programs have been described in the literature, such as Fabry s dynamic type replacement system [1] the DAS operating system [2] DYMOS [3] PODUS [4] 5] and the authors system [6]. A survey of many different implementations can be found in [7] There are also systems that allow flexible interconnection of software components to form the complete system [8] 9] 10] However such systems frequently require interconnections to be specified before execution of the software ....

....though no justification was given, and the issue was not considered in detail. The work concentrated mainly on showing how the quiescent state can be reached with the cooperation of some nodes. Moreover, their work does not address the more general problem of code replacement. Gupta and Jalote [6] gave a definition of validity and proposed a set of conditions for ensuring validity. The proposed conditions, however, are quite restrictive in practice. In this paper, we propose a formal framework for modelling on line changes to programs. The organization of the rest of the paper is as ....

[Article contains additional citation context not shown here]

D. Gupta and P. Jalote, "On-line software version change using state transfer between processes", Software - Practice and Experience, vol. 23, no. 9, pp. 949--964, September 1993.


Increasing Software Reliability through Rollback and On-line.. - Gupta, Jalote (1997)   (1 citation)  Self-citation (Gupta Jalote)   (Correct)

....developed. Preliminary experiments and modeling show that such an approach can be very effective. On line software modification has been hitherto studied mostly in software engineering contexts as a means of software maintenance. A number of systems for performing online changes to programs exist [5, 7, 10, 12, 20] (see [23] for a survey) The theoretical issues involved in on line software version change have been studied in [14] However, not much attention has been given to the potential of on line change to increase system reliability Indeed, its potential in this context is limited unless it is ....

....That is, the change should be such that after the change, the process should behave as if the new version had always been running. In our system, for an on line change, we consider a function as the unit of change. The details of the implementation of on line change in our system can be found in [12]. To gain experience with the proposed approach, a small experiment was performed using the testbed. The program chosen for the experiment was Nethack which is a popular display oriented adventure game. Because the program is highly interactive, its failures are expected to be mostly transient in ....

D. Gupta and P. Jalote. "On-line software version change using state transfer between processes". Software - Practice and Experience, 23(9):949--964, September 1993.


Automatic Software Upgrades for Distributed Systems - Ajmani (2004)   (1 citation)  (Correct)

No context found.

Deepak Gupta and Pankaj Jalote. On-line software version change using state transfer between processes. Software Practice and Experience, 23(9):949--964, September 1993.


A Review of Software Upgrade Techniques for Distributed Systems - Ajmani (2004)   (1 citation)  (Correct)

No context found.

Deepak Gupta and Pankaj Jalote. On-line software version change using state transfer between processes. Software Practice and Experience, 23(9), 1993.


A Dynamically Updatable Active Networking Architecture - Fernando (2001)   (Correct)

No context found.

D. Gupta and P. Jalote, "On-line software version change using state transfer between processes", Software-Practice and Experience, vol. 23, pp. 949-964, 1993.

Online articles have much greater impact   More about CiteSeer.IST   Add search form to your site   Submit documents   Feedback  

CiteSeer.IST - Copyright Penn State and NEC