OPERATING SYSTEMS ICOMS W4118, Dept of Computer Science, Columbia University
Home | Announcements | Lectures | Homeworks | Grades | Discussion | Resources

HOMEWORK ASSIGNMENTS AND SUBMISSION INSTRUCTIONS
Homework assignments are listed below and should be completed and submitted in accordance with the course policies:
Homework Policy
Programming Policy
Collaboration Policy
All homework assignments should be submitted electronically. Homework should be in ASCII text only, with the exception of any graphs you submit. Graphs should be submitted in postscript format.

There is a separate process for submitting the written portion of your assignment and a separate process for submitting the programming portion of your assignment. You should separate the two parts of the assignment as you will use a difference submit script for each part of the assignment.

To make an electronic submission of the written portion, create a separate directory in which you put all the files that you are going to submit for that part of the assignment. Then go to your written submission directory and run the command ~w4118/bin/submit_written. Similarly, to make an electronic submission of the programming portion of the assignment, create a separate directory in which you put all the files that you are going to submit for the programming part of the assignment. Then go to your programming submission directory and run the command ~w4118/bin/submit_code. If the programming part of the assignment is a group assignment, you only need to submit once for your group.

Note that EVERYTHING in your respective submission directories will be submitted. After a successful submission, you will receive a confirmation email from the class account with a list of files received. In case of not receiving the confirmation, try again and contact the TA staff. You can submit multiple times, but the last submission is what counts. Each submission will be time stamped.

Solutions to the homework assignments will generally be posted approximately one week after the assignment is due.

Groups have been assigned for the group programming assignments in Linux on VMware. Assignments were based first on mutual student preferences and then separating undergraduates and graduate students in a manner to balance the groups. CVN students were also grouped together unless they requested otherwise. Groups will be reassigned as needed throughout the course. Reassignments will be done such that students who do not substantially contribute to their group assignments will be regrouped together.

Your VMware disks are not backed up, so you should make sure that any source code changes you make are backed up to your home directories. One method of doing this is using diff. If necessary, you can also obtain a clean VMware disk.

Homework 1 Solutions
Homework 2 Solutions
Homework 3 Solutions
Homework 4 Solutions
Homework 5 Solutions
Homework 6 Solutions


Jason Nieh, nieh@cs.columbia.edu