Accession Number : ADA188924

Title :   Evolving Persistent Objects in a Distributed Environment.

Descriptive Note : Final rept.,

Corporate Author : CARNEGIE-MELLON UNIV PITTSBURGH PA SOFTWARE ENGINEERING INST

Personal Author(s) : Nestor, John

PDF Url : ADA188924

Report Date : Dec 1987

Pagination or Media Count : 17

Abstract : In distributed systems, it is useful to classify persistent objects as either immutable or mutable. The contents of an immutable object cannot be changed while the contents of a mutable object can. In a distributed system, multiple copies of an immutable object can exist at different places and can be used freely without the need for any special synchronization. Mutable objects, however, require synchronization. When and object is about to be changed, all current users need to be notified. When two users both try to change the same object, only one should be permitted to succeed. This kind of synchronization requires that for each mutable object there be a single point in the network that controls use for that object. If a network becomes temporarily partitioned into two isolated subnetworks, only one will have control over each mutable object. This paper considers a class of objects called incrementally mutable objects that are intermediate between mutable and immutable objects. Intuitively the only permitted modifications to an incrementally mutable object are those that add new information to the object while preserving existing information. Changes to incrementally mutable objects do not require central synchronization. When a network becomes partitioned, the same incrementally mutable object can be safely modified in each subnetwork. A mutable object can be modeled by a set of immutable objects that represent each value of the object over time and an incrementally mutable object that relates each immutable object to its successor. Multiple successors are permitted to represent parallel changes. Keywords: Computer programs; Computer applications.

Descriptors :   *CONTROL, *COMPUTER ARCHITECTURE, COMPUTER APPLICATIONS, COMPUTER PROGRAMS, DISTRIBUTION, PARALLEL ORIENTATION, SYNCHRONISM

Subject Categories : Computer Programming and Software

Distribution Statement : APPROVED FOR PUBLIC RELEASE