Virtual Memory Through Paging
1. Divide RAM and Process: RAM and the process are divided into equal fixed-size blocks called frames and pages, respectively
2. Load Process: Pages are loaded into RAM only when needed, and unloaded out when they are not needed
3. Storage of Pages: Pages can be stored in any available frame in RAM, aiming for contiguous allocation when possible
4. Address Translation and Lookup: The page table translates virtual addresses used by the program into physical RAM addresses. If the page is in the RAM, the page table provides the physical address. Otherwise, a page fault occurs
5. Page Fault & Swapping: If a page fault happens, the OS fetches the needed page from disk (swap space) and potentially swaps out another page from RAM to make room