CSE 451, Introduction to Operating Systems, Fall 2014

Course Overview

Email
Discussion board
Readings
Exams
Grades
Problem Sets
Projects
Academic Honesty

Email

The a good deal of administrative information regarding this course (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!
Also helpful is the course calendar which contains the reading assignments and due dates for problem sets and the project assignments.

back to top     


Discussion board

There's a class discussion board with separate threads for various topics.

back to top     


Readings

The text for the course is Operating Systems: Principle and Practice, Anderson and Dahlin, second edition (the one with Mt. Rainier on the cover).
Readings assigned for each lecture are listed on the course calendar. Hack weeks, lecture topics, exams, homework and project due dates can all also be found on the calendar. Note that you can subscribe to the calendar - this is very convenient.

Grades

  • Final exam: 35%
  • Problem sets: 10%
  • Project questions: 10%
  • Project 1: 10%
  • Project 2: 15%
  • Project 3: 15%

back to top     


Exams

There is a final exam for this course; there is no midterm. What we have found is that students who do well on the project do well on the final, so the midterm does not add much new information. Skipping the midterm lets us give you more time to work on the second project assignment.

back to top    


Problem Sets

We plan to hand out three short problem sets over the quarter. The problem sets are to be done individually. Collectively, they can serve as a sample final; the intent is to be comprehensive and roughly as difficult as the types of questions found on the final exam.

back to top    


Projects

The core of the course is the OS/161 project: to build a working operating system that can boot on a simulated virtual machine. The project is to be done in groups of 2-3 people; because of the difficulty of the project, we recommend 3. Every quarter, a few students ask us if they can do the project individually. We strongly discourage this; you will find the project very difficult even for a group. (Note that assignment 0 and 1 are relatively easy; assignment 2 is harder, and assignment 3 is even more difficult. If you still insist, please email tom your unofficial transcript, including what courses you are currently taking. We will only allow you to work individually if you can prove to us you have an adequate plan to make it work.
As the last week of classes is always rushed, we have set aside that week as a hack week for working on the project and finishing up your other classes. There will be no lectures during hack week. Most schools other than UW have a gap between when classes end and when finals begin, to give students a chance to wrap up their projects.

We will also automatically grant each group three slip days for the project assignments, for you to use at your discretion. These are calendar days -- weekends and holidays count. There are no slip days for problem sets. Regardless of your remaining slip days, all assignments must be turned in by Tuesday, December 9 at 9pm. In other words, only one slip day is available for use on the last assignment.

back to top    


Academic Honesty

Cheating vs. Collaboration: Please read CSE's Academic Misconduct Policy.

Collaboration is a good thing. On the other hand, cheating is a serious offense. Please don't do it! Concern about cheating creates an unpleasant environment for everyone. If you cheat, you risk losing your position as a student in the department and the college. The department's policy on cheating is to report any cases to the college cheating committee. What follows afterwards is not fun -- for anyone!

So, how do you draw the line between collaboration and cheating? A great one-sentence guideline is highlighted in our Academic Misconduct Policy:

"In general, any activity you engage in for the purpose of earning credit while avoiding learning, or to help others do so, is likely to be an act of Academic Misconduct."

For this quarter, I will have very relaxed rules with respect to collaboration on the project. You are encouraged to ask for help, from the instructor, from the TA's, from other students. However, do not cross this line: On the project, do not share code or text. Do not consult project solutions that might be on the Internet. Do not use someone else's code or text in your solutions. Sharing ideas, explaining your code to someone to see if they know why it doesn't work, even helping someone else debug if they've run into a wall, all that is ok. Any survival guides you find on the Harvard course website for OS/161 are also ok; we'll try to link to them on the main course website, so if you find one that's useful and we haven't put it up, let us know.

The exams will be closed book. All work on the exams and on the problem sets must be done individually without help of any kind. You may ask clarifying questions of the TA's and the instructor.

The Credit Your Sources Rule: If you obtain help of any kind on any assignment (project or homework or exams), you must always write the name(s) of your sources on your assignment. Provided it followed the rules above, e.g., on the project, this will allow us to give them extra credit. This and other rules are listed in CSE's Academic Misconduct Policy.

back to top