The Elmwood multiprocessor operating system

Thomas J. Leblanc, John M. Mellor‐Crummey, Neal M. Gafter, Lawrence A. Crowl, Peter C. Dibble

Research output: Contribution to journalArticlepeer-review

2 Scopus citations


Elmwood is an object‐oriented, multiprocessor operating system designed and implemented during a graduate seminar. It consists of a minimal kernel and a collection of user‐implemented services. The kernel provides two major abstractions: objects, which consist of code and data, and processes, which represent asynchronous activity. Objects, like programs, are passive. To operate on an abstraction or to request a service, processes invoke an entry procedure defined by the corresponding object. Objects implement their own protection and synchronization policies using minimal kernel mechanisms. We describe the Elmwood kernel interface, an implementation on the BBN Butterfly parallel processor, and our experiences in developing a multiprocessor operating system under rigid time constraints. These experiences illustrate several general lessons regarding kernel design and trade‐offs for implementation expedience.

Original languageEnglish (US)
Pages (from-to)1029-1055
Number of pages27
JournalSoftware: Practice and Experience
Issue number11
StatePublished - Nov 1989


  • Kernel design
  • Multiprocessor operating systems
  • Object‐oriented
  • Protection
  • Synchronization

ASJC Scopus subject areas

  • Software


Dive into the research topics of 'The Elmwood multiprocessor operating system'. Together they form a unique fingerprint.

Cite this