CS 161: Operating Systems Spring 2016

Tuesday/Thursday 1:00-2:30

Pierce 301

James Mickens & Margo Seltzer


Home Syllabus Assignments Resources Piazza

Professors Teaching Fellows
Note: TFs will not be holding office hours this week (5/2).
James Mickens Nikhil Benesch: benesch@college.harvard.edu
Maxwell Dworkin 335 Office Hours: Wednesday 4:30 - 6:30 (MD 121)
mickens@g.harvard.edu Rob Bowden: rbowden91@gmail.com
http://mickens.seas.harvard.edu Office Hours: Thursday 6:00 - 8:00 (Thayer Common Room, probably in the room off the kitchen)
(617) 384-8132 Michelle Deng: mdeng@college.harvard.edu
Office hours: Wednesday 1:00pm - 3:00pm Office Hours: Tuesday 5:00 - 7:00 (MD 2nd Floor Lounge until 6; MD 119 after 6 at CS Night)
Margo Seltzer David Ding: fding@college.harvard.edu
Maxwell Dworkin 241 Office Hours: Sunday 7:30 - 9:30 (Adams Dining Hall)
margo@eecs.harvard.edu Sam Fishman: sfishman@college.harvard.edu
http://www.eecs.harvard.edu/~margo Office Hours: Monday 7:30pm - 9:30pm (Kirkland Dining Hall)
(617) 496-5663 Alex Patel: alexanderpatel@college.harvard.edu
Office hours: Tu/Th 2:30 - 4:00 Office Hours: Saturday noon - 3:00 (MD 221, Pierce 100f on 2/27 and 4/16)

Announcements

Prerequisites

Computer Science 61 or permission of instructor.

Text

Doeppner: Operating Systems in depth (required)

Overview

This course is an introduction to operating systems. After completing this course, you should be able to:

We teach this class in a combination flipped and conventional, but highly interactive, style. Days on which we are officially flipped are marked clearly on the syllabus. Each one will (almost always) have:

On these days, attendance is mandatory and you should have completed both the pre-class work and the web work before coming to class. We check the web work before class so that we can discuss issues that were not clear from the pre-class work. While we do not expect that you will be writing the majority of OS161 code during these flipped sessions, we will use them to help you become familiar with the code base you'll be using this semester, wrestle and master with the concepts most central to the course, and evaluate and improve design documents.

Classes that are not flipped will frequently still have interactive in-class work, but will not require any pre-class preparation. These more conventional classes will frequently take place while you are working on the three heavy assignments for the course. Although we will not take attendance for those classes, attendance is strongly encouraged. Furthermore, there may be short (1 minute) surveys due with classes; these are required.

Although this is our fourth year using this style, the precise structure of the classes continues to be a work in progress. We always welcome feedback -- tell us what is working for you and what is not working for you. You can read about Professor Seltzer's first experience flipping this course on her blog.

Course Requirements Course Policies
Class participation (10%) This includes pre-class work, small-group work, speaking in class and participation on Piazza.
Four homework assignments (50%) No late days for assignment 1
Midterm (15%) Assignments 2-4 completed in teams of 2
Final take-home exam (25%) 5 total late days for assignments 2-4

Collaboration Policy

There are three types of work associated with this course and each has its own specific policy for collaboration. We encourage students to talk to each other about the course. In particular, you can always discuss technical details about software used in the course. You can share design information, help each other debug, brainstorm ideas, talk about CS161 over dinner, shout out breakthroughs in your sleep, etc. Academic integrity requires that when you submit work, you make it clear who contributed to the work and from where ideas came.