CSC 2227S: Topics in the Design and Implementation of Operating Systems

Papers

For each meeting, readings are assigned. Usually, the readings will consist of two or three computer systems papers. The papers selected for this course are either classic papers or papers from recent top conferences. You are expected to read these papers thoroughly and summarize them BEFORE arriving at class on Wednesdays.

Each paper will be briefly presented by a student in the class, who will also lead the discussion of that paper. For each class meeting, we identify the topic and papers below; for each, we also try to identify good sources for background reading and for further investigation.

Electronic versions are linked where available (access will be denied for IP addresses outside of UofT). When electronic versions are not available, paper copies will be provided in class at least a week in advance.

(NOTE: This schedule is not set in stone. Some changes may be made to this schedule during the term)

Week 1 - January 12: Welcome to CSC 2227

This first meeting will be largely organizational in nature. In it, we will discuss how the class is going to work and what will be covered. In addition, we will very rapidly recap stuff you should already know, discussing what defines operating systems and distributed systems and what makes them continue to be interesting after all these years, and overviewing how the various topics in the course fit together.

There are no readings for this week, but the following items are intended to help you refresh your memory of operating systems. These are to help you prepare for the course and assess your own knowledge of the pre-requisite material. Sample solutions to the OS exam questions will be posted next week.

Week 2 - Early Systems

presented by Angela Demke Brown

Jan. 17

Read and provide summaries for the following papers:

Jan. 19

Read and summarize the following paper:

Summary discussion and background on next topic.

Additional suggested reading (to be added)

Week 3 - Operating System Structure

Jan. 24

Read and provide summaries for the following papers:

Jan. 26

Read and summarize the following paper:

Summary discussion and background on next topic.

Additional suggested reading (to be added)

Week 4 - Flexibility and Performance

Jan. 31

Read and provide summaries for the following papers:

Feb. 2

Read and summarize the following paper:

Summary discussion and background on next topic.

Additional suggested reading (to be added)

Week 5 - Concurrency

Feb. 7

Read and provide summaries for the following papers:

Feb. 9

Read and summarize the following paper:

Summary discussion and background on next topic.

Additional suggested reading

The following items provide some additional background and perspectives on the challenges of programming with threads:

Week 6 - Scheduling and Resource Accounting

Feb. 14

Read and provide summaries for the following papers:

Feb. 16

Read and summarize the following paper:

Summary discussion and background on next topic.

Additional suggested reading (to be added)

Feb. 19-23: Reading Week, No Classes

Week 7 - Distributed Systems

Feb. 28

Read and provide summaries for the following papers:

Mar. 2

Read and summarize the following paper:

Week 8 - File Systems and I/O

Mar. 7

Read and provide summaries for the following papers:

Mar. 9

Read and summarize the following paper:

Week 9 - Virtualization

Mar. 14

Read and provide summaries for the following papers:

Mar. 16

Read and summarize the following paper:

Week 10 - Mar. 21/23 Project Work Week, No Classes

Week 11 - Virtual Memory

Mar. 28

Mar. 30

Week 12 - Languages and Systems

Apr. 4

Apr. 6 - Good Friday, no class

Week 13 - More Languages and Systems

Apr. 11

Apr. 13

Last modified: Tue Jan 10 23:22:20 EST 2006