Experience with processes and monitors in Mesa (Summary)

  • Authors:
  • Butler W. Lampson;David D. Redell

  • Affiliations:
  • -;-

  • Venue:
  • SOSP '79 Proceedings of the seventh ACM symposium on Operating systems principles
  • Year:
  • 1979

Quantified Score

Hi-index 0.00

Visualization

Abstract

In early 1977 we began to design the concurrent programming facilities of Pilot, a new operating system for a personal computer [5]. Pilot is a fairly large program itself (25,000 lines of Mesa code). In addition, it supports some large applications, ranging from data base management to internetwork message transmission, which are heavy users of concurrency (our experience with some of these applications is discussed in the paper). We intended the new facilities to be used at least for the following purposes: Local concurrent programming: An individual application can be implemented as a tightly coupled group of synchronized processes to express the concurrency inherent in the application. Global resource sharing: Independent applications can run together on the same machine, cooperatively sharing the resources; in particular, their processes can share the processor. Replacing interrupts: A request for software attention to a device can be handled directly by waking up an appropriate process, without going through a separate interrupt mechanism (e.g., a forced branch, etc.).