Naming and Synchronization in a Decentralized Computer System.

Abstract

In this dissertation, a new approach to the synchronization of accesses to shared data objects is developed. Traditional approaches to the synchronization problems of shared data accessed by concurrently running computations have relied on mutual exclusion -- the ability of one computation to stop the execution of other computations that might access or change shared data accessed by that computation. Our approach is quite different. We regard an object that is modifiable as a sequence of immutable versions, each version is the state of the object after an update is made to the object. Synchronization can then be treated as a mechanism for naming versions to be read and for defining where in the sequence of versions the version resulting from some update should be placed. In systems based on mutual exclusion, the timing of accesses selects the versions accessed. In the system developed here, called NAMOS, versions have two component names consisting of the name of an object and a pseudo-time, the name of the system state to which the version belongs. By giving programs control over the pseudo-time in which an access is made, synchronization of accesses to multiple objects is simplified.

Open PDF

Document Details

Document Type
Technical Report
Publication Date
Sep 01, 1978
Accession Number
ADA061407

Entities

People

  • David Patrick Reed

Organizations

  • Massachusetts Institute of Technology

Tags

Communities of Interest

  • Cyber
  • Energy and Power Technologies
  • Ground and Sea Platforms
  • Human Systems
  • Materials and Manufacturing Processes

DTIC Thesaurus Topics

  • Algorithms
  • Application Software
  • Computer Programming
  • Computer Programs
  • Computer Science
  • Computers
  • Data Storage Systems
  • Databases
  • Electrical Engineering
  • Engineering
  • Information Systems
  • Language
  • Operating Systems
  • Records
  • Software Development
  • Software Development Tools
  • Students

Fields of Study

  • Computer science

Readers

  • Computer Science/Computer Engineering/Data Science/Digital Signal Processing.
  • Computer Vision.
  • Parallel and Distributed Computing.