Angel: A proposed multiprocessor operating system kernel

We describe an operating system design for multiprocessor systems called Angel, based on a single, coherent, uniform virtual address space. This unies naming and interprocess communication in both shared and distributed memory multiprocessors by using distributed shared memory techniques when shared memory is not already provided by the hardware. The design is motivated by analysis of our earlier operating system implementation, based on message passing, and we show how the uniform address space attempts to solve problems with that approach. In particular, we consider the use of client-server cross-mapping to optimise interprocess communications, as used in Bershad et al.'s lightweight RPC. This document describes initial motivations for Angel and subsequent detailed design| we will review and may modify many of the details described as the design progresses.

[1]  Elliott I. Organick,et al.  The multics system: an examination of its structure , 1972 .

[2]  Herbert Schorr,et al.  Proceedings of the fourth ACM symposium on Operating system principles , 1973 .

[3]  David D. Redell,et al.  NAMING AND PROTECTION IN EXTENDABLE OPERATING SYSTEMS , 1974 .

[4]  Peter Boehler Bishop,et al.  Computer systems with a very large address space and garbage collection , 1977 .

[5]  Richard F. Rashid From RIG to Accent to Mach: An Evolution of a Network Operating System , 1986, FJCC.

[6]  José Legatheaux Martins,et al.  The CHORUS Distributed Operating System: Some Design Issues , 1987 .

[7]  Alessandro Forin,et al.  Design, implementation, and performance evaluation of a distributed shared memory server for Mach , 1988 .

[8]  Brian N. Bershad,et al.  Lightweight remote procedure call , 1989, TOCS.

[9]  Paul Hudak,et al.  Memory coherence in shared virtual memory systems , 1989, TOCS.

[10]  Evangelos P. Markatos,et al.  Implementation Issues for the Psyche Multiprocessor Operating System , 1989, Comput. Syst..

[11]  Robbert van Renesse,et al.  Amoeba A Distributed Operating System for the 1990 s Sape , 1990 .

[12]  P. Winterbottom,et al.  Topsy: an extensible Unix multicomputer , 1990 .

[13]  Jonathan M. Smith,et al.  A taxonomy-based comparison of several distributed shared memory systems , 1990, OPSR.

[14]  Phil Winterbottom,et al.  Meshix : A Unix like operating system for distributed machines , 1990 .

[15]  Bruce E. Martin,et al.  An object-based taxonomy for distributed computing systems , 1991, Computer.

[16]  Bill Nitzberg,et al.  Distributed shared memory: a survey of issues and algorithms , 1991, Computer.

[17]  Jeffrey C. Mogul,et al.  The effect of context switches on cache performance , 1991, ASPLOS IV.

[18]  Peter Osmon,et al.  The Topsy Project: a Position Paper , 1992, PARLE.