Virtual Memory

Programs don’t access physical memory. Virtual addresses are translated into physical addresses by the MMU

Physical vs Virtual Addressing

Virtual Memory as a Cache

Page Tables and Translation

Each virtual page is mapped to a physical page via a page table

  1. CPU issues virtual address
  2. MMU looks up PTE
  3. If valid → get physical address → fetch data
  4. If invalid → trigger page fault → OS loads page from disk, updates PTE

Speeding up with a TLB