Courses/Computer Science/CPSC 457.F2014/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.

We started with a review/refresh of hardware-level memory address translation.



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"