Machine-Independent Virtual Memory Management
for Paged Uniprocessor and Multiprocessor Architectures
Richard Rashid, Avadis Tevanian, Michael Young, David Golub,
Robert Baron, David Black, William Bolosky, and Jonathan Chew
Department of Computer Science
Carnegie Mellon University
Pittsburgh, Pennsylvania 15213
This paper describes the design and implementation of virtual memory management within the CMU Mach
Operating System and the experiences gained by the Mach kernel group in porting that system to a variety of
architectures. As of this writing, Mach runs on more than half a dozen uniprocessors and multiprocessors including
the VAX family of uniprocessors and multiprocessors, the IBM RT PC, the SUN 3, the Encore MultiMax, the
Sequent Balance 21000 and several experimental computers.
Although these systems vary considerably in the kind
of hardware support for memory management they provide, the machine-dependent portion of Mach virtual memory
consists of a single code module and its related header file.
This separation of software memory management from
hardware support has been accomplished without sacrificing system performance.
In addition to improving
portability, it makes possible a relatively unbiased examination of the pros and cons of various hardware memory
management schemes, especially as they apply to the support of multiprocessors.
This research was sponsored by the Defense Advanced Research Projects Agency (DOD), ARPA Order No.
4864, monitored by the Space and Naval Warfare Systems Command under contract N00039-85-C-1034.
This paper was presented at the 2nd Symposium on Architectural Support for Programming Languages and
Operating Systems, ACM October, 1987.
Permission to copy without fee all or part of this material is granted provided that the copies are not made
or distributed for direct commercial advantage, the ACM copyright notice and the title of the publication and
its date appear, and notice is given that copying is by permission of the Association of Computing Machinery.
To copy otherwise, or to republish, requires a fee and/or specific permission.