Parallel programming using shared objects and broadcasting
- 1 August 1992
- journal article
- Published by Institute of Electrical and Electronics Engineers (IEEE) in Computer
- Vol. 25 (8) , 10-19
- https://doi.org/10.1109/2.153276
Abstract
The two major design approaches taken to build distributed and parallel computer systems, multiprocessing and multicomputing, are discussed. A model that combines the best properties of both multiprocessor and multicomputer systems, easy-to-build hardware, and a conceptually simple programming model is presented. Using this model, a programmer defines and invokes operations on shared objects, the runtime system handles reads and writes on these objects, and the reliable broadcast layer implements indivisible updates to objects using the sequencing protocol. The resulting system is easy to program, easy to build, and has acceptable performance on problems with a moderate grain size in which reads are much more common than writes. Orca, a procedural language whose sequential constructs are roughly similar to languages like C or Modula 2 but which also supports parallel processes and shared objects and has been used to develop applications for the prototype system, is described.Keywords
This publication has 16 references indexed in Scilit:
- Group communication in the Amoeba distributed operating systemPublished by Institute of Electrical and Electronics Engineers (IEEE) ,1991
- Experiences with the Amoeba distributed operating systemCommunications of the ACM, 1990
- Amoeba: a distributed operating system for the 1990sComputer, 1990
- Munin: distributed shared memory based on type-specific memory coherencePublished by Association for Computing Machinery (ACM) ,1990
- An efficient reliable broadcast protocolACM SIGOPS Operating Systems Review, 1989
- Linda in contextCommunications of the ACM, 1989
- Fine-grained mobility in the Emerald systemACM Transactions on Computer Systems, 1988
- Reliable communication in the presence of failuresACM Transactions on Computer Systems, 1987
- Distributed process groups in the V KernelACM Transactions on Computer Systems, 1985
- Reliable broadcast protocolsACM Transactions on Computer Systems, 1984