CSE 451, Introduction to Operating Systems, Spring 2013

Course Overview

Text
Email
Discussion board
Grades
Exams
Homework
Projects
Policies

Text

Last spring we took a risk: We used a still-being-written textbook, Operating Systems: Principles and Practice.
Why? Because the textbook that we had traditionally used was an expensive piece of crap. UW CSE professor Tom Anderson and his Ph.D. alumnus Mike Dahlin (formerly at UT Austin, now at Google Seattle) set out to produce a new text. The "test driving" went well (despite the fact that we had to tread water for a week waiting for the file systems chapter to be finished ...). This year, it's the real thing - you can buy it from Amazon.
Important: The text is quite sophisticated. You won't get it all on the first pass. The right approach is to re-read each chapter once we've covered the corresponding material in class; more of it will make sense then. Don't save this re-reading until right before the mid-term or final - keep up with understanding the material!
The course discussion board has a section for comments, errata, etc., regarding the text.

back to top     


Email

The vast majority of administrative information regarding this course (reading assignments, homework assignments, project assignments, helpful hints, etc.) will be communicated via the class email list. Be sure to check your CSE 451 email at least daily!

back to top     


Discussion board

There's a class discussion board, with separate threads for various topics. Please try to use the appropriate thread! Check the discussion board daily!

back to top     


Grades

We reserve the right to change this, but grades will be assigned roughly as follows:
  • Projects: 40%
  • Midterm: 20%
  • Final: 30%
  • Participation: 10%

We'll post all grades to a Catalyst GradeBook here.

back to top     


Exams

There will be one midterm exam and a final exam for this course -- both are closed book, closed notes:
  • Midterm: Monday May 6th, in class
  • Final: Wednesday June 12th, 2:30-4:20

back to top    


Homework

  • Reading: You will be given reading assignments associated with lecture and section. You should finish the reading before coming to class - we'll assume you've done this reading, and the lectures will enhance the material, rather than regurgitating it.

  • Textbook-style questions: In past years, we have assigned dippy textbook exercises to encourage students to keep up with the reading. Students hated doing these almost as much as TA's hated grading them. So, in response to popular demand, they have been nuked. (The text does contain some very well conceived exercises. You should look at these on your own, and ask questions in class or section about them. We may also suggest some specific exercises for your attention, but will not collect and grade solutions.)

back to top    


Projects

As you've probably guessed from the allocation of grades, programming projects will be a major portion of this class. This quarter, we will be hacking the Linux kernel in various ways; our goal is for you to "get your hands dirty" with the guts of a real operating system.
Projects 1, 2, and 3 will be done in 2-person teams. (Project 0 is a C warmup that should be completed individually.) You'll need to form teams during the first week of class.
You will need to be comfortable programming in C. (If you know C++, then you basically already know C.) If you're not already well-versed in C programming, you will need to teach yourself, and do so in a hurry. The standard reference is The C Programming Language, Brian W. Kernighan and Dennis M. Ritchie.

back to top    


Policies