Virtual Memory Flashcards
Virtual Memory
The separation of logical and physical memory using separate addresses so that only one part of the program needs to be in memory for execution. Allows address spaces to be shared by multiple processes and shared during fork(), which speeds process creation.
Page Fault
The result of a first time reference to a specific page that traps the OS and is either aborted due to invalid reference or an unallocated page.
Demand Paging
System where pages are only brought into memory when needed.
Lazy Swapper
Never swaps a page into memory unless the page is needed.
When p = 0, no page faults; if p = 1, every reference is a fault.
Pure Demand Paging
A paging system where a process starts with no pages in memory.
Copy on Write (COW)
Allows both parent and child processes to initially share the same pages in memory.
The page is only copied when one of the processes modifies the shared page.
Copy on Write (COW)
Allows both parent and child processes to initially share the same pages in memory
If either process modifies a shared page, only then is the page copied
Modify Bit (dirty bit)
Used to reduce overhead of page transfers by allowing only modified pages to be written to the disk.
Fixed Page Allocation
Allocate pages according to size of the processes.
Global Replacement
When a process selects a replacement frame from all frames.
Local Replacement
When a process selects a replacement from it’s own set of allocated frames.
Thrashing
A process is busy swapping pages in and out and not performing
Memory Mapped File
Allows file input/output to be treated as routine memory access by mapping a disk block to a page
I/O Interlock
Pages must sometimes lock into memory.