IBM Systems Journal · 1966 · 1.7K citations · 2 references
ComputingComputer EngineeringComputer ScienceAlgorithmsComputer ArchitectureMemoryMemory HierarchyMemory ManagementVirtual MemoryMemory AllocationOverlay DesignPage Replacement AlgorithmsVirtual Memory ManagementVirtual Memory SupportVirtual Memory Systems
One of the basic limitations of a digital computer is the size of its available memory. <sup xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink">1</sup> In most cases, it is neither feasible nor economical for a user to insist that every problem program fit into memory. The number of words of information in a program often exceeds the number of cells (i.e., word locations) in memory. The only way to solve this problem is to assign more than one program word to a cell. Since a cell can hold only one word at a time, extra words assigned to the cell must be held in external storage. Conventionally, overlay techniques are employed to exchange memory words and external-storage words whenever needed; this, of course, places an additional planning and coding burden on the programmer. For several reasons, it would be advantageous to rid the programmer of this function by providing him with a “virtual” memory larger than his program. An approach that permits him to use a sufficiently large address range can accomplish this objective, assuming that means are provided for automatic execution of the memory-overlay functions.
2
T. Kilburn, D. Brent Edwards, M.J. Lanigan et al. · IEEE Transactions on Electronic Computers · 1962 · 255 citations
L. P. Horwitz, Richard M. Karp, Raymond E. Miller et al. · Journal of the ACM · 1966 · 77 citations · Full text