|
|
Assignment 3 - The Office Hours problem and the Safe-deposit Box problem (Due Date: Monday, 21 Feb. 2005)
Assignment 4 -
NACHOS: Virtual Memory (Due Date:
Wednesday, 23 Monday 28 Mar. 2005)
Assignment 5 - NachOS Multiprogramming (Due Date: Monday, 18 Apr. 2005 for pairs and Saturday, 23 Apr. for singles)
The department's Java Lab has been set up with all tools necessary for the assignments. Instructions for logging into the lab's computers can be found at http://www.cs.pitt.edu/~mcraven/courses/unixintro.html.
All assignments will require programming in C/C++ in a Unix environment.
A source-level debugger such as gdb can be very handy for finding and fixing program errors. For instructions on how to use gdb, please consult this primer.
All assignments after the first one will use Nachos, an educational operating system that runs on a simulated processor. For a Nachos tutorial, please attend the recitations. The slides can be downloaded from the following links: pdf, ppt .
The Nachos homepage, including downloads, is available at http://www.cs.washington.edu/homes/tom/nachos/ .
Nachos is already available in the Java Lab, so there is no need for you to install it in your own computer.
Getting help
The recitation instructor, Matt Craven, will in his classes be going into a lot of detail about how to access the Java Lab and use its tools for solving the assignments.
His slides and helpful links can be found at http://www.cs.pitt.edu/~mcraven/courses/cs1550.html.
He is also available to help you during office hours, MWF 1-3 p.m. His office is at SENSQ 6509, and his email address is mcraven@cs.pitt.edu.
Good coding style is very important. You will be expected to conform to good practices in writing and documenting your code. Good primers on C/C++ style can be found in the following link. The first one is particularly good.
We will grade programming assignments based on correctness, completeness, and clarity of the code and documentation. A perfect assignment is one that solves the entire problem in an elegant manner, and provides well documented, easily understood code. A correct solution is necessary for a satisfactory grade, but incomplete solutions, sloppy code, and poor documentation will result in less than full credit.
Late assignments will be penalized 10 points per day (weekends excluded). Start assignments early and avoid running out of time.
Be advised that you will be required to demo your solutions. The grader may ask you to explain any details in your code, and may ask you to change something. If you are unable to explain or modify your program properly, you may get a failing grade.
Please follow these instructions to submit each assignment, where <n> is the assignment's number (for example, 2 for the second experiment):