DocumentCode :
1237761
Title :
Communication and Synchronization Primitives for Distributed Programs
Author :
Natarajan, N.
Author_Institution :
Department of Computer Science and Engineering, University of Texas at Arlington
Issue :
4
fYear :
1985
fDate :
4/1/1985 12:00:00 AM
Firstpage :
396
Lastpage :
416
Abstract :
A distributed program is a collection of several processes which execute concurrently, possibly in different nodes of a distributed system, and which cooperate with each other to realize a common goal. In this paper, we present a design of communication and synchronization primitives for distributed programs. The primitives are designed such that they can be provided by a kernel of a distributed operating system. An important feature of the design is that the configuration of a process, i.e., identities of processes with which the process communicates, is specified separately from the computation performed by the process. This permits easy configuration and reconfiguration of processes. We identify different kinds of communication failures, and provide distinct mechanisms for handling them. The communication primitives are not atomic actions. To enable the construction of atomic actions, two new program components, atomic agent and manager are introduced. These are devoid of policy decisions regarding concurrency control and atomic commitment. We introduce the notion of conflicts relation using which a designer can construct either an optimistic or a pessimistic concurrency control scheme. The design also incorporates primitives for constructing nested atomic actions.
Keywords :
Atomic action; communication failure; computing agent; distributed operating system; distributed piogram; distributed system; kernel; port; Centralized control; Computer networks; Computer science; Concurrency control; Context; Design optimization; Distributed computing; Kernel; Operating systems; Programming; Atomic action; communication failure; computing agent; distributed operating system; distributed piogram; distributed system; kernel; port;
fLanguage :
English
Journal_Title :
Software Engineering, IEEE Transactions on
Publisher :
ieee
ISSN :
0098-5589
Type :
jour
DOI :
10.1109/TSE.1985.232229
Filename :
1702022
Link To Document :
بازگشت