CS111 Assignment 6: Virtual Memory
No late submissions are accepted on this assignment (except for OAE accommodations or granted extensions). The deadline is firm without exception. Original assignment by David Mazières and John Ousterhout, with modifications by Nick Troccoli. In this project, you'll have a chance to implement the core components of a virtual memory system using demand paging. You'll maintain a per-process page map, map virtual pages to physical pages, and swap physical pages to disk if physical memory fills up. Normally, code like this would be written inside the operating system kernel. For this project, we have used the Linux mmap facility to simulate features that are typically available in the kernel (such as page faults), so you can write your code at user level. (Note: you may assume that your code is used only in single-threaded environments; you do not need to worry about synchronization for this project.) This spec is long, but its length is due to the detail with which it walks you through th
CS111 Assignment 6: Virtual Memory Assignment 6: Virtual Memory --> Due: Fri Mar 14 11:59 pm No late submissions accepted. No late submissions are accepted on this assignment (except for OAE accommodations or granted extensions). The deadline is firm without exception. Original assignment by David Mazières and John Ousterhout, with modifications by Nick Troccoli. In this project, you'll have a chance to implement the core components of a virtual memory system using demand paging. You'll maintain a per-process page map, map virtual pages to physical pages, and swap physical pages to disk if phy
Explore this link on the map →related reading
- CS111 Section 7: Demand Pagingweb.stanford.edu
- Pages | CS 162 HW 4cs162.org
- Introduction to Paging | Writing an OS in Rustos.phil-opp.com
- Page (computer memory) - Wikipediaen.wikipedia.org
- CS111 Section 6: Preemption and Virtual Memoryweb.stanford.edu
- CS111 Section 6: Preemption and Virtual Memoryweb.stanford.edu
- Syscall implementation | CS 162 HW 4cs162.org
- Virtual memory layout | Pintos Documentationcs162.org
- Write your Own Virtual Machinejmeiners.com
- Operating Systems: Three Easy Piecespages.cs.wisc.edu
- Cache and TLB Flushing Under Linux — The Linux Kernel documentationdocs.kernel.org
- NYSRGnotes.ekzhang.com