Spring 2011 -- Dawson Engler
This course makes no attempt to cover all the interesting topics in operating systems. Instead, we will cover a few topics in depth. The course is divided into the following general topic areas:
Virtual memory management
Discussions of virtual memory management implementations and recent work in virtual memory for multiprocessors, NUMA machines, large virtual address spaces, and other topics.
Synchronization and communication
Discussions of synchronization with an emphasis on monitors. Communication using remote procedure call.
File systems
Discussions of file system interfaces and disk storage management techniques.
Protection and security
Discussions of data security and authentication.
Extensions and fault tolerance
Discussions of mechanisms for implementing OS services at user level, OS structure and performance, reliability and availability of OS services.
History and experience
Historically important papers and experience reports by senior researchers in the field.
There is no textbook for this course. The course is based on a collection of journal and conference papers that describe the history and state of the art in operating systems. Papers will be discussed in class in approximately the order that they appear on the reading list below. You must read the papers before class.
Introduction
March 29, Tuesday
Concurrency
March 31, Thursday
April 5, Tuesday
April 7, Thursday
April 12, Tuesday
Virtual Memory and Protection
April 14, Thursday
April 19, Tuesday
April 21, Thursday
Virtualization
April 26, Tuesday
Exam
Local File Systems
May 3, Tuesday
May 5, Thursday
Livelock
May 10, Tuesday
Remote File System
May 12, Thursday
May 17, Tuesday
MapReduce
May 19, Thursday
Misc
May 24, Tuesday
May 26, Thursday
Exam
May 31, Tuesday
Final -- in class
|
|