Courses/Computer Science/CPSC 457.F2013/Lecture Notes/VirtualMemory

Jump to: navigation, search

Virtual Memory

In this session we will consider the basic definition of and traditional need for virtual memory.



It is worthwhile contemplating the meaning of the term "virtual" for a while.

(recall memory addressing)

The code that calls sbrk() to expand the heap memory region and write to it via memset() to exhaust available memory. sample run

Sample run for activity 1

x86 page table flags

declaration of the mem_map array (for iterating over page frame meta-data for the purposes of allocation management)

the struct page representing the items in the mem_map array (i.e., meta-data about the physical page frames)

the kernel OOM Killer code

Scribe Notes


  • MOS: 3.3 "Virtual Memory" (this subsection also contains a review of paging and TLBs)
  • MOS: 3.7.3 "Segmentation with Paging: The Intel Pentium"