Abstract The shared memory programming paradigm is becomingwidely used, since it provides several important benefits.However, the need to maintain a reasonably simple memorymodel for programmers is responsible for many of the compli-cations.In this paper, we present PoliDep , a new synchronizedmemory model which makes use of synchronizations to gainaccess of critical sections. PoliDep provides support to set updependences between different critical sections. This featureincreases the model’s expressiveness, so that it can be used asa platform to obtain memory models customized for particularapplications.In order to define PoliDep , we provide a formal speci-fication based on the I/O automata formalism. This formalspecification can be used to guide and show correctness of im-plementations and also to show properties of programs using PoliDep . 1 Introduction Shared memory (reading and writing of shared vari-ables)isa well-knownmechanismusedforinter-processcommunication in concurrent programs, which has sev-eral important benefits.In the first place, it hides from the programmer theparticular communication technique employed. There-fore, application developers do not need to be involvedin the management of messages. In addition, it allowscomplex shared structures to be passed by reference,providing a simple and well-known paradigm.However, while the semantics of memory operations(i.e., the memory model) in sequential programs are
[1]
P. Keleher,et al.
Lazy release consistency for distributed shared memory
,
1996
.
[2]
R. K. Shyamasundar,et al.
Introduction to algorithms
,
1996
.
[3]
Brian N. Bershad,et al.
Midway : shared memory parallel programming with entry consistency for distributed memory multiprocessors
,
1991
.
[4]
Anoop Gupta,et al.
Memory consistency and event ordering in scalable shared-memory multiprocessors
,
1990,
ISCA '90.
[5]
Ambuj K. Singh.
A Framework for Programming with Nonatomic Memories
,
1995,
J. Parallel Distributed Comput..
[6]
Hagit Attiya,et al.
Sequential consistency versus linearizability
,
1994,
TOCS.
[7]
Seif Haridi,et al.
Distributed Algorithms
,
1992,
Lecture Notes in Computer Science.
[8]
James R. Larus,et al.
Application-specific protocols for user-level shared memory
,
1994,
Proceedings of Supercomputing '94.