Virtual Memory

Virtual Memory

2019 Nov 5 5:17
2023 Nov 22 6:13

Demand paging = virtual memory

Motive : In any hardware, same code(address) should have same data (memory management by maintaining logical semantic)

virtual address: logical address
Concept : separating of user logical memory from physical memory
  • Symbolic Address : access variable by name
  • address binding : variable mapping to address and physical memory when compile
Insight : program do not need all of their code and data at once, so we can separate (but of course have overhead)
  • Implementation : demand paging
effect : VM enables program to execute without requiring their entire address space to be resident in physical memory. isolate each process's memory, enable share files and address spaces.
In practice, kernel physically pin kernel address space in hardware, preventing paging out. by using hardware global bit (G): prevent TLB flushing (apply only to PTE). That is the basic reason why the ratio is 1:3.
For new process,
Process Image
Page Table
creation required
notion image
Mode Switching
is the reason of
User Space
Kernel Space
share same linear memory space because it is frequent, reducing overhead)
Virtual Memory Notion
Virtual Memory Notion Usages