Skip to content

Instantly share code, notes, and snippets.

@innovateboliu
Created January 25, 2017 00:34
Show Gist options
  • Save innovateboliu/1e840f02ab7adeb57892567d2d5d2d47 to your computer and use it in GitHub Desktop.
Save innovateboliu/1e840f02ab7adeb57892567d2d5d2d47 to your computer and use it in GitHub Desktop.
Memory Management
Virtual memory
Page - virtual and physical memorys are both divided into pages (4KB on Intel X86)
Page Frame Number
PFN(0:11) + offset(12:) for 4KB page read by process
Page tables: Processor translates PFN+offset to physical PFN
Three level in linux
Page table entry
Valid flag: if page default
Physical PFN,
Access control information
Demanding Page: When a process attempts to access a virtual address that is not currently in memory the processor cannot find a page table entry for the virtual page referenced, the operating system must bring the appropriate page into memory from the image on disk
Swapping:
Dirty page: if the page has been modified, the operating system must preserve the contents of that page so that it can be accessed at a later time
LRU paging
Thrashing: is a condition in which excessive paging operations are taking place
Protection
Each process has its own virtual memory space
Process
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment