Virtual memory

@inproceedings{Denning1996VirtualM,
  title={Virtual memory},
  author={Peter J. Denning},
  booktitle={CSUR},
  year={1996}
}
OS, Virtual Memory, & I/O Fall 2022 Discussion 13 (In Fall 2022, Discussion 12 was canceled and merged with Discussion 13.) 1 Precheck This section is designed as a conceptual check for you to determine if you conceptually understand and have any misconceptions about this topic. Please answer true/false to the following questions, and include an explanation: 1.1 Responsibilities of the OS include loading programs, handling services, combining programs together for efficiency. 

Figures from this paper

Page life measurements

An important but often overlooked statistic of virtual memory dynamics is that of page life (the real time required for an unreferenced page to be removed from memory).

BEFORE MEMORY WAS VIRTUAL

The story of virtual memory, from the Atlas Computer at the University of Manchester in the 1950s to the multicomputers and World Wide Web on the 1990s, is a story of machines helping programmers with protection of information, reuse and sharing of objects, and linking of program components.

User Mode Memory Page Management: An old idea applied anew to the memory wall problem

A feasibility study is conducted to determine whether the MMU for each application process should be virtualised such that it has direct access to its own MMU page tables and the memory allocated to a process is managed exclusively by the process and not the kernel.

Issues in Implementing Virtual Memory

This paper examines the advantages and disadvantages of conventional virtual address translation schemes, and describes the performance costs caused by recent changes in hardware and operating system architectures.

Back to the Past: When Segmentation Is More Efficient Than Paging

  • L. LauxR. Hexsel
  • Computer Science
    Anais do Workshop em Desempenho de Sistemas Computacionais e de Comunicação (WPerformance)
  • 2018
This work collected execution traces from six applications and characterized their virtual memory behavior with respect to miss rates in references to Translation Buffers and Segment Buffers, indicating that the miss rates for SBs are 2-3 orders of magnitude smaller than for TLBs.

Transparent operating system support for superpages

This dissertation presents the design, implementation and evaluation of a physical memory management system that allows applications to transparently benefit from superpages. The benefit consists of

Virtual Memory-Induced Priority Inversion in Multi-Tasked Systems

The results of preliminary experiments with a new instrumentation framework that observes Linux VM behavior in a controlled setting reveal three types of misbehavior, including processes with modest memory requirements experience execution delays during periods of memory shortage.

Memory Management Abstractions : Still Room For Innovation

The topic of memory management is divided into subtopics which may overlap with multiple subfields in computer science, and some of the major contributions in each area are reviewed.

The Virtual Block Interface: A Flexible Alternative to the Conventional Virtual Memory Framework

The benefits of VBI are demonstrated with two important use cases: reducing the overheads of address translation (for both native execution and virtual machine environments), as VBI reduces the number of translation requests and associated memory accesses; and two heterogeneous main memory architectures, where VBI significantly improves performance over conventional virtual memory.

Beyond Physical Memory: Policies 16.1 Cache Management

  • Computer Science
The goal in picking a replacement policy for this cache is to minimize the number of cache misses; that is, to minimizeThe number of times that the OS has to go to disk to fetch the desired page.
...

References

SHOWING 1-10 OF 114 REFERENCES

Virtual Memory

"Virtual memory" is a computing term which has come into increasing use in recent years, but its use often causes controversy and misunderstanding, for it is used to mean different things by different people.

Strategies for structuring two level memories in a paging environment

The strategies for effective structuring of data and program code in a two level, directly addressable paged memory system are presented along with the experience gained from deriving and

Virtual memory management in a paging environment

The Spectra 70/46 Time Sharing Operating System (TSOS) is designed to be a combined time-sharing and multiprogramming system that will support up to 48 conversational users or a combined total of 64

Comment on multiprogramming under a page on demand strategy

It has been brought to my attention that Figure 5 in my paper is not consistent with Figure 2 in the paper, but the curve corresponds to the cumulative measure given in the latter.

Working Sets Past and Present

  • P. Denning
  • Computer Science
    IEEE Transactions on Software Engineering
  • 1980
This paper outlines the argument why it is unlikely that anyone will find a cheaper nonlookahead memory policy that delivers significantly better performance and suggests that a working set dispatcher should be considered.

Slave Memories and Dynamic Storage Allocation

  • M. Wilkes
  • Computer Science
    IEEE Trans. Electron. Comput.
  • 1965
The use is discussed of a fast core memory of, say, 32000 words as a slave to a slower core memory in such a way that in practical cases the effective access time is nearer that of the fast memory than that ofThe slow memory.

The multics virtual memory

It is shown how the Multics software achieves the effect of a large segmented main memory through the use of the GE 645 segmentation and paging hardware.

The management of a multi-level non-paged memory system

There is a clear tendency for large-scale and, especially time-sharing computer systems to have several levels of random access memory with gradations in access time, degree of addressability, and

Structure of a LISP system using two-level storage

A scheme for binding variables is described which is good in this environment and allows for complete compatibility between compiled and interpreted programs with no special declarations.

Thrashing: its causes and prevention

  • P. Denning
  • Computer Science
    AFIPS '68 (Fall, part I)
  • 1968
The term thrashing denotes excessive overhead and severe performance degradation or collapse caused by too much paging, which inevitably turns a shortage of memory space into a surplus of processor time.
...