Virtual memory
lastmod 2018-08-17created 2016-06-115 edits
Virtual memory combines active RAM and inactive memory on DASD.
Virtual memory, or virtual storage, is a way of managing RAM in which each program is given virtual memory addresses rather than real memory addresses.
This approach is commonly used in multitasking operating systems and is also used as a way to provide a memory area larger than the actual main memory.
A virtually given address is called a virtual address or logical address, and an address valid in actual memory is called a physical address or real address. The range of virtual addresses is called the virtual address space, and the range of physical addresses is called the physical address space.
The virtual address space is translated into physical addresses by the memory management unit (MMU). Thanks to this, programmers write programs in the virtual address space and no longer need to be aware of how programs and data exist in main memory. Most modern architectures and operating systems provide virtual memory, and some applications, such as Adobe Photoshop, manage virtual memory themselves for memory management better suited to each application.
The concept of virtual memory was published in 1957. The first actual implementation was developed in 1961 by the University of Manchester for the Atlas. It began to be adopted in earnest after the Multics system developed by MIT in 1965.
Virtual memory is broadly divided into two types: the segment method and the paging method. For example, the MC68000 system had two MMUs available: the 68451 (segment method) and the 68851 (paging method).