Overview

CSE 451 is an undergraduate course on operating systems. During the course you will complete several labs, working in teams of two. Each lab will add a new feature to a primitive operating system called xk. At the end of this class you will be able to find your way around the source code of most operating systems, and more generally, be comfortable with systems software.

Textbooks

Exams

There will be an online final on a date TBD.
To help you prepare for the final exam there will be one or two ungraded online practice exams during the quarter.

Grades

Roughly 70% projects and 30% final. (Subject to change)

Regrade requests for design documents and lab questions are open for 1 week after grades are released.

Policies

Reading

You will be given reading assignments associated with lecture. 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.

Late days

All lab code is due at the end of the quarter (exact due date on Gradescope). That being said, you should aim to be done by the listed deadline, since getting behind will quickly become overwhelming and difficult to catch back up.
Each lab also has associated questions. These generally do not take very long, so there are no late days on the questions. They are due when the associated lab is due (see the calendar or Gradescope).
Labs 2-4 also have design documents that you will write. These also have no late days, since we need to provide feedback and get them back to you quickly.

This being said, we understand that life happens. If something comes up and you can't complete questions or design doc by the deadline, use the course staff email to request an extension.

Cheating vs. collaboration

Collaboration is a very good thing. On the other hand, cheating is considered a very serious offense and is vigorously enforced. Enforcement requires that you be advised of the cheating policy of the course before the offending act.

For this quarter, the policy is simple: don’t cheat. You know it when you’re doing it. We’ll recognize it when you do it. For example:

  • Never share code or text on the project.
  • Never use someone else’s code or text in your solutions.
  • Never consult project code or text that might be on the Internet.

On the other hand, for this class, you are strongly encouraged to:

  • Share ideas.
  • Explain your code to someone to see if they know why it doesn’t work.
  • Help someone else debug if they’ve run into a wall.

If you obtain help of any kind, always write the name(s) of your sources.

Please read CSE’s Academic Misconduct Policy.

Also, please erase whiteboards after you write on them!

Disability Accomodations

University of Washington Page

Religious Accomodations

University of Washington Policy