[an error occurred while processing this directive]

Course Overview

  Email
  Grades

Exams

Homework

Projects

Policies

 


 
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.

back to top


 
Grades

I reserve the right to change this, but grades will be assigned roughly as follows:

  • Projects: 35%
  • Homework: 10%
  • Midterm: 20%
  • Final: 30%
  • Participation: 5%

back to top


 
Exams

There will be one midterm exam and a final exam for this course:
  • Midterm: Monday November 7, in class
  • Final: Wednesday December 14, 2:30-4:20

back to top


 
Homework

There will be two kinds of homework assignments given throughout the class:
  • Reading: You will be given reading assignments, from either Doeppner or from The Linux Kernel (hereafter called TLK), associated with each lecture. You should finish the reading before coming to class - I will assume you've done this reading, and my lectures will enhance the material, rather than regurgitating it.
  • Textbook-style questions: Occasionally, I will assign written homework based on either questions from Doeppner, or made-up questions. These assignments should be handed in at the start of class on the due date.(Make sure you read the late policy below.)

back to top


 
Projects

As you've probably guessed from the allocation of grades, programming projects will be a major portion of this class. We will do a tiny bit of Linux kernel development, to see first hand that an OS is just a (mostly) normal program. We'll primarily be building user-level applications, but of a nature that is similar to an OS, and requiring programming techniques and concepts borrowed from OS development.

Correspondingly, you need to be quite comfortable programming in C. (If you know C++, then you basically already know C.) If you're not already familiar with C programming, we will try to help. The assignments are built assuming that the typical student is not completely comfortable in C, and that some students may have had no C experience.

back to top


 
Policies

(Many of these policies are taken verbatim from previous instances of this course.)
  • Late Policy: Unless otherwise indicated, assignments are due at the start of class or section on their due date, and projects are due at 11:59PM. If you hand in an assignment or project late, we will take off 10% for each day (or portion thereof) it is late, except that that you have two free late days to use at your discretion -- no need to notify us when you're using them, we'll just assume you are if an assignment comes in late. (Late days are automatically assigned at the end of the quarter to minimize overall grade penalty.)
  • "Reasonable Person Principle": Let's all be "reasonable people" working on the same team to make this a great learning experience. The "Reasonable Person Principle" simply states that a reasonable request made in a reasonable fashion shall be reasonably handled by reasonable persons.
  • Cheating vs. Collaboration: Please read CSE's Academic Misconduct Policy, taken from our Undergraduate Handbook.

    Collaboration is a very good thing.On the other hand, cheating is considered a very serious offense. 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.

    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."

    Note that this encompasses not just excessive reliance on students who are in the course this quarter, but excessive reliance on work done in previous quarters, at other universities, by the textbook authors (e.g., homework solutions that may be available on the web), etc.

    Here are some additional ground rules that may be helpful:

    The Gilligan's Island Rule: This rule says that you are free to meet with fellow student(s) and discuss assignments with them. Writing on a board or shared piece of paper is acceptable during the meeting; however, you should not take any written (electronic or otherwise) record away from the meeting. This applies when the assignment is supposed to be an individual effort or whenever two teams discuss common problems they are each encountering (inter-group collaboration). After the meeting, engage in a half hour of mind-numbing activity (like watching an episode of Gilligan's Island), before starting to work on the assignment. This will assure that you are able to reconstruct what you learned from the meeting, by yourself, using your own brain.

    The Freedom of Information Rule: To assure that all collaboration is on the level, you must always write the name(s) of your collaborators or other sources on your assignment.

back to top

[an error occurred while processing this directive]