CSCI 350 - Summer 2017 Operating Systems


Projects require substantial work. The average student should expect to spend about 30-40 hours per homework.

Each student will receive a private code repository on the course's GitHub Organization to use it for the development and submission of all assignments. You will be using the git source code management tool to maintain your homework code.

Pintos Resources

Here are some helpful PintOS resources:

Project Schedule

HW Topic Due Date Submit
HW00 Optional C review Not Graded None
HW01 Threads Wed. June 7, 2017 @ 11:59PM (PST) Submit
HW02 System Calls & User Programs Fri. June 23, 2017 @ 11:59PM (PST) Submit
HW03 Virtual Memory Mon. July 10, 2017 @ 11:59PM (PST) Submit
HW04 File Systems Fri. July 21, 2017 @ 11:59PM (PST) Submit

Submission Instructions

In order to properly submit your assignment, please follow the course submission instructions. )

Homework Policies

For each assignment, a precise time will be specified (usually at 11:59.00 pm) on the due date. Submission must be made correctly via your github account. Each student has 4 grace days they can use over the course of the semester. A maximum of 2 grace days can be used on a single assignment. Once you have used your grace days, any late submission will not be accepted and graded as a 0.

To use a late day you MUST follow the submission policy outlined in our late submission instructions.

We will grade your assignments in the virtual machine we provide for the course. You must ensure it works in that environment before submission.

Grade Disputes

With PintOS you will know a good aspect of your assignment score before you even submit your code since all the tests we will use are available with PintOS. However, another chunk of your grade will be based on the design documents. We will work hard to post assignment scores and feedback within 1 week of the due date. Exams will typically be graded within at most a few days of the exam date.

Any disputes with posted grades must be raised within 1 weeks of the score posting.

Since we want to be able to make sure we can address all of your homework-related concerns as easily as possible, please follow the below policy for creating homework regrade requests:

  1. You will receive a grade report for your homework or project on GitHub.
  2. If you have questions, you should assign your grader to the issue, and then describe your questions in the comments for this issue.
  3. If the grader and you cannot resolve the issue, the grader will reassign the issue to one of the TAs.
  4. The TA will then review your homework and make any necessary adjustments, up or down.

Final settlement will be, if necessary, decided by the professors, but you must go through the TA first.

To raise an issue with your exam score, you should come to the office hours of the professor teaching your section. If you cannot make posted office hours, schedule one by e-mail. The TAs will not be allowed to grant regrades on exams.

Homework Grading Policies

For each assignment, a precise time will be specified (usually at 11:59.59pm) on the due date. Submission must be made correctly via your github account. After you believe you have submitted, you should always clone your repo into a new folder and make sure everything you think you submitted was cloned into this new folder. Then compile your code in this new folder and run it to ensure we will also be able to compile and run your code.

Academic Integrity

The official language on academic integrity is on the syllabus . Here is a little more clarification.

Practically speaking, it is important to be able to seek out helpful information and collaborate, yet it is clearly wrong to pass off work done (even just in part) by others as your own. When in doubt whether some behavior you are considering is appropriate, feel free to consult with us (course staff) before engaging in it. As a general guideline, imagine that your professor is looking over your shoulder, but can't read your mind. Would it look to him like you're legitimately seeking to understand things, or trying to get a better grade than your own work warrants? That should guide your behavior.

A few things are clearly fine, while a few are clearly not fine. We are listing some of the most relevant ones here: