Lecture Week 7: Memory: Overview, History, and Paging

Course Meetup: Tuesday, Mar. 9

The next course meetup at on Tuesday, Mar. 9 at 2:00pm on Zoom. We will use the same Zoom link for all course meetups (you can find it in Compass 2g as the announcement for this course).

Upcoming: Midterm Exam on Thursday, Mar. 18

The course midterm exam is on Thursday, March 18. You will access the exam and then have two hours to complete the exam.

  • You can use any resource EXCEPT other people. You can use Google, the course notes, the textbook readings, and anything that is not talking to another person.
  • The exam will be several open-ended questions where you will write about how the functionality or design of the operating system. Questions will source the lecture videos, course textbook, and MPs.

Sample Midterm Questions:

  • Q: We have discussed how to use the test-and-set instruction to implement a lock on a uniprocessor in the class. Can we use the test-and-set instruction to implement a lock on a multiprocessor environment [2 points]? Explain why or why not [3 points].

  • Q: We discuss Linux’s Completely Fair Scheduler (CFS) in the class. What does fairness mean in CFS [1 point]? Is CFS really “completely” fair? If not, design a situation where we get an advantage over another process. [4 points]

Lecture Topics and Videos

The topics come from both lecture videos and reading from the course textbook:

  1. Lecture Video - Memory Hierarchy
  2. Lecture Video - Memory Overlays
  3. Lecture Video - Fixed Partitions
  4. Lecture Video - Relocation and Variable Partitions
  5. Reading - Mechanism: Address Translation (Ch. 15)
  6. Reading - Segmentation (Ch. 16)
  7. Reading - Free-Space Management (Ch. 17)
  8. Lecture Video - Paging and Virtual Memory
  9. Lecture Video - Page Faults and Page Evictions
  10. Reading - Paging: Introduction (Ch. 18)
  11. Reading - Paging: Faster Translations (TLBs) - Ch. 19
  12. Meetup Recording from Tuesday's Meetup - Zoom Recording

Additionally, here’s a PDF of all the lecture slides presented in the videos this week.

Assignments

MPs

  • MP2, due on Mar. 22

Reading Selection from Systems Research (Required for 4CR only)

If you are enrolled in the 4CR version of this course, you will review two papers each week and choose one to summarize in depth. See the course syllabus for details. Note: You may need to be on the campus VPN to get access to some of the papers.

  1. “Translation caching: skip, don’t walk (the page table)” by Thomas W. Barr, Alan L. Cox, and Scott Rixner; published in ACM SIGARCH Computer Architecture News (2010).

  2. “Elastic Cuckoo Page Tables: Rethinking Virtual Memory Translation for Parallelism” by Dimitrios Skarlatos, Apostolos Kokolis, Tianyin Xu, and Josep Torrellas; published in ACM ASPLOS (2020).

Your summary is due on Compass 2g by 11:59pm on Monday, Mar. 15.