Virtual Memory (VM) is a collection of one or more logical address spaces, each of which may exceed the size of physical memory. To access this space, we use a virtual address.
A paged virtual memory creates a single large contiguous address space per process.
Demand paging is the principle of loading a page into memory only when the page is needed, rather than at the start of the execution. The idea is to speed up the letting users accessing a process. However, it may cause a process to pause as it is running.
The table provides a present bit, which is used to let the system know if that page is in memory, or just virtual memory.
A page fault is an interrupt that occurs when a program attempts to reference a non-resident page. This will force the page to load, and once that is done, the present bit will be set to 1 (true).
Virtual memory is typically much larger than the available physical memory.
Page replacement is when the OS overwrites a page in memory with a different page loaded from the disk. This is a time consuming process and should be minimized, even when using an SSD.
The Principles of Virtual Memory was originally found on Access 2 Learn