Thus techniques such as compaction of allocated

Info iconThis preview shows page 1. Sign up to view the full content.

View Full Document Right Arrow Icon
This is the end of the preview. Sign up to access the rest of the document.

Unformatted text preview: s (among other things) whether the pages in the area are shared with other processes or private to this process. 10.7. CASE STUDY: THE PENTIUM/LINUX MEMORY SYSTEM process virtual memory 515 vm_area_struct task_struct mm mm_struct pgd mmap vm_end vm_start vm_prot vm_flags vm_next shared libraries 0x40000000 vm_end vm_start vm_prot vm_flags vm_next data 0x0804a020 text vm_end vm_start vm_prot vm_flags vm_next 0x08048000 0 Figure 10.29: How Linux organizes virtual memory. ¯ vm next: Points to the next area struct in the list. Linux Page Fault Exception Handling Suppose the MMU triggers a page fault while trying to translate some virtual address . The exception results in a transfer of control to the kernel’s page fault handler, which then performs the following steps: 1. Is virtual address legal? In other words, does lie within an area defined by some area struct? To answer this question, the fault handler searches the list of area structs, comparing with the vm start and vm end in each...
View Full Document

Ask a homework question - tutors are online