CS 161: Operating Systems (Spring 2017)
||Richard Cho: email@example.com
|Maxwell Dworkin 335
||Office Hours: Tuesday, 8:30pm--10:30pm@Quincy dining hall
||Victor Domene: firstname.lastname@example.org
||Office Hours: Sunday, 3pm--5pm@Maxwell Dworkin, second floor lounge
||David Holland: email@example.com
|Office Hours: Tuesday, 2:30pm--4pm@Maxwell Dworkin 335
||Office Hours: Wednesday, 5pm--7pm@CS night (MD 221)
||Peter Kraft: firstname.lastname@example.org
||Office Hours: Monday, 8pm-10pm@Pfoho dining hall
||Alex Patel: email@example.com
||Office Hours: Wednesday, 8pm--10pm@Adams dining hall
There will be two sections:
You may attend whichever section you want. You may
attend both sections, but they will typically contain
the same information.
- Tuesdays 7:00pm--8:30pm: Maxwell Dworkin 123
- Wednesdays 3:00pm--4:30pm: Maxwell Dworkin 223
- Please sign up for the Piazza site!
For the first week of the semester we will post announcements here, but
after that point, we will post all announcements via Piazza.
Computer Science 61 or permission of instructor.
Doeppner: Operating Systems In Depth (required)
This course is an introduction to operating systems.
After completing this course, you should be able to:
- Explain how operating systems provide the abstractions with which
programmers and users are familiar.
- Work effectively with a partner.
- Design, implement, modify, and analyze complex software systems.
- Undertake different types of design projects including: implementing
to a well-defined interface, designing appropriate interfaces to provide
specified functionality, extending an existing body of code.
- Explain through examples how violation of good design
and coding practices lead to security problems.
- Analyze how operating systems problems are addressed in different
systems and understand why particular approaches were taken.
Before each class, you will typically be asked to read background
material, and/or watch video clips that provide information on a
relevant topic. Throughout the course, we will also ask you to
complete short surveys; these surveys allow us to improve our
teaching approaches, and ensure that students are getting the
most from the course!
|Class participation (10%)
||This includes pre-class work, speaking
in class, and participation on Piazza.
|Four homework assignments (50%)
||No late days for Assignment 1; Assignments 2-4 completed
in teams of 2, with 5 total late days for Assignments 2-4.
||Submitted online (but taken in-class).
|Final take-home exam (25%)
||Submitted online; must be completed within 24 hours of initial access.
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.
- Web work/surveys: These should be completed by individuals without
- Homework assignments: Homework assignments are to be completed
by the individual or team whose name(s) appear(s) on the submission.
You are free to discuss the assignment with anyone else in the class,
including design documents, debugging tips, or suggested tools.
When such discussions influence your design or implementation,
you must identify the individuals who influenced you in the written
documents that accompany your assignment.
Similarly, if you get design ideas from a web site, book, or external
piece of code, you should cite those sources as well.
- Exams: No collaboration is allowed, but the exams are open book --
more details will accompany each exam.