Parallel Programming Using Shared Objects and Broadcasting

A.S. Tanenbaum, M.F. Kaashoek, H.E. Bal

Research output: Contribution to JournalArticleAcademicpeer-review


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.
Original languageEnglish
Pages (from-to)10-19
Number of pages10
Issue number8
Publication statusPublished - 1992


Dive into the research topics of 'Parallel Programming Using Shared Objects and Broadcasting'. Together they form a unique fingerprint.

Cite this