Elmwood multiprocessor operating system

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

Research output: Contribution to journalArticle

1 Citation (Scopus)

Abstract

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
Volume19
Issue number11
StatePublished - Nov 1989
Externally publishedYes

Fingerprint

Technical presentations
Synchronization

ASJC Scopus subject areas

  • Computer Graphics and Computer-Aided Design
  • Software

Cite this

Leblanc, T. J., Mellor-Crummey, J. M., Gafter, N. M., Crowl, L. A., & Dibble, P. C. (1989). Elmwood multiprocessor operating system. Software - Practice and Experience, 19(11), 1029-1055.

Elmwood multiprocessor operating system. / Leblanc, Thomas J.; Mellor-Crummey, John M.; Gafter, Neal M.; Crowl, Lawrence A.; Dibble, Peter C.

In: Software - Practice and Experience, Vol. 19, No. 11, 11.1989, p. 1029-1055.

Research output: Contribution to journalArticle

Leblanc, TJ, Mellor-Crummey, JM, Gafter, NM, Crowl, LA & Dibble, PC 1989, 'Elmwood multiprocessor operating system', Software - Practice and Experience, vol. 19, no. 11, pp. 1029-1055.
Leblanc TJ, Mellor-Crummey JM, Gafter NM, Crowl LA, Dibble PC. Elmwood multiprocessor operating system. Software - Practice and Experience. 1989 Nov;19(11):1029-1055.
Leblanc, Thomas J. ; Mellor-Crummey, John M. ; Gafter, Neal M. ; Crowl, Lawrence A. ; Dibble, Peter C. / Elmwood multiprocessor operating system. In: Software - Practice and Experience. 1989 ; Vol. 19, No. 11. pp. 1029-1055.
@article{e16b81bb5d8347aea4b24c4481c27dee,
title = "Elmwood multiprocessor operating system",
abstract = "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.",
author = "Leblanc, {Thomas J.} and Mellor-Crummey, {John M.} and Gafter, {Neal M.} and Crowl, {Lawrence A.} and Dibble, {Peter C.}",
year = "1989",
month = "11",
language = "English (US)",
volume = "19",
pages = "1029--1055",
journal = "Software - Practice and Experience",
issn = "0038-0644",
publisher = "John Wiley and Sons Ltd",
number = "11",

}

TY - JOUR

T1 - Elmwood multiprocessor operating system

AU - Leblanc, Thomas J.

AU - Mellor-Crummey, John M.

AU - Gafter, Neal M.

AU - Crowl, Lawrence A.

AU - Dibble, Peter C.

PY - 1989/11

Y1 - 1989/11

N2 - 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.

AB - 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.

UR - http://www.scopus.com/inward/record.url?scp=0024765331&partnerID=8YFLogxK

UR - http://www.scopus.com/inward/citedby.url?scp=0024765331&partnerID=8YFLogxK

M3 - Article

VL - 19

SP - 1029

EP - 1055

JO - Software - Practice and Experience

JF - Software - Practice and Experience

SN - 0038-0644

IS - 11

ER -