The Multics virtual memory: concepts and design

  title={The Multics virtual memory: concepts and design},
  author={A. Bensoussan and C. T. Clingen and Robert C. Daley},
  journal={Commun. ACM},
As experience with use of on-line operating systems has grown, the need to share information among system users has become increasingly apparent. Many contemporary systems permit some degree of sharing. Usually, sharing is accomplished by allowing several users to share data via input and output of information stored in files kept in secondary storage. Through the use of segmentation, however, Multics provides direct hardware addressing by user and system programs of all information… 

Figures from this paper

A survey of memory management
Memory management in a distributed system of single address space operating systems supporting quality of service
The main goal of Heracles is to provide an extensible environment that is configurable to the extent of providing application-centric memory management without the need for application developers to implement their own virtual memory management system.
Physical memory management in a network operating system
This dissertation presents results obtaining through the development of the Sprite file system, which uses large main-memory file caches to achieve high performance and describes a mechanism that has been implemented as part of Sprite that allows the file system cache to vary in size in response to the needs of the virtual memory system and thefile system.
Virtual Memory and Buffer Storage
This article presents the concept of the virtual memory and a case study of implementation, a technique that combines the main memory and the slower storage to provide the appearance of having a larger memory than actually installed to the computer system.
The DASH Virtual Memory System
The DASH project has defined the network communication architecture for a large, high-performance distributed system. We are now designing a portable operating system kernel for the nodes of this
Exact positioning of data approach to memory mapped persistent stores: design, analysis and modelling
This dissertation proposes, develops and investigates a novel approach for implementing single-level stores using memory mapping, the use of virtual memory to map data stored on secondary storage into primary storage so that the data is directly accessible by the processor's instructions.
801 storage: architecture and programming
The 801 minicomputer project has developed a low-level storage manager that can significantly simplify storage programming in subsystems and applications and is intended to be extensible across a wide performance/cost spectrum.
A taxonomy-based comparison of several distributed shared memory systems
This paper uses caching and issues such as address space structure and page replacement schemes to define a taxonomy of DSM efforts and examines three DSM efforts in detail, namely: IVY, Clouds and MemNet.
A Case for Effic ient Hardware/Soft ware Cooperative Management of Storage and Memory
The goal of this work is to explore the design of a Persistent Memory Manager that coordinates the management of memory and storage under a single hardware unit in a single address space and shows that such a system with a persistent memory can improve energy efficiency and performance.
Hardware Memory Segmentation for New Software Model
A simple and effective solution to allow processor segmentation and it is revealed that the poor flexibility in memory management is the reflection of the lack of segmentation usage.


A Study of Replacement Algorithms for Virtual-Storage Computer
One of the basic limitations of a digital computer is the size of its available memory; an approach that permits the programmer to use a sufficiently large address range can accomplish this objective, assuming that means are provided for automatic execution of the memory-overlay functions.
Segmentation and the Design of Multiprogrammed Computer Systems
The segmentation of procedures and data forms a model of program structure that is the basis of an address mapping function which will be a valuable feature of future computer systems.
Dynamic storage allocation in the Atlas computer, including an automatic use of a backing store
Parts of the ACSI-MATIC Programming System including parts of AMCaP have been coded for the MOBiDIC-A and Sylvania 9400 computers and it is expected that an initial system will be operating by the end of summer.
Introduction and overview of the multics system
Multics (Multiplexed Information and Computing Service) is a comprehensive, general-purpose programming system which is being developed as a research project and will be implemented on the GE 645 computer.
A general-purpose file system for secondary storage
The need for a versatile on-line secondary storage complex in a multiprogramming environment is immense and information must be easy to access when required, safe from accidents and maliciousness, and it should be accessible to other users on an easily controllable basis when desired.
The processor multiplexing method provides smooth inter- process communication, treatment of input/output control as a special case of interprocess communication, and provision for a user to specify parallel processing or simultaneous input-output without interrupt logic by treatment of processors in an anonymous pool.
Virtual memory, processes, and sharing in MULTICS
The Manchester University ATLAS Operating System Part 1: The Internal Organization and Experience using a time-sharing multiprogramming system with dynamic address relocation hardware.
System design of a computer for time sharing applications
In the late spring and early summer of 1964 it became obvious that greater facility in the computing system was required if time-sharing techniques were to move from the state of an interesting pilot
A computing system design for user service
After a long period of study and experimentation with various forms of user/terminal/system interaction, IBM is developing a general purpose timesharing system. This is the recently announced
Traffic control in a multiplexed computer system
This paper is intended to provide a history of electrical engineering in the United States and its applications in the oil and gas industry, as well as some of the techniques used to design and construct substations.