CS 1550: Introduction to Operating Systems
Programming Assignments
Grading Policy
In general, programming assignments are graded on correctness, completeness,
and clarity of coding (good style) and documentation. A perfect assignment
is one that solves the entire problem in an elegant manner, and provides
well documented easily understood code. A satisfactory assignment
is one that is at the very least a correct solution - but sloppy coding,
incomplete solutions, and poor documentation of the code will result in
points being deducted.
Coding Style
Operating Systems are among the most complex and difficult to understand
software systems. As such, good coding style is very important, and you
are expected to conform to good practices in writing and documenting your
code.
Links
to some useful C Style Guides - the first one is especially good.
Useful Links
Getting Nachos
In the directory where you want nachos to appear (preferably "~/private"
so that others cannot view your work) run the command
"~jalst114/public/1550/1550-Synch.pl". A directory called cs1550 will
be created with the Nachos code inside and symbolic links for the
parts of the code you do not need to edit. You can rename this
directory with the 'mv' command if you wish.
If you get an error when running nachos, using './nachos', such as "ld.so.1: ./nachos:
fatal: libgcc_s.so.1: open failed: No such file or directory Killed"
then you need to run one of the following each time you log in:
- For the bash shell: 'source ~jalst114/public/1550/1550-setup.bash'
- For csh/tcsh: 'source ~jalst114/public/1550/1550-setup.csh'
- If you don't know what shell you use: 'source ~jalst114/public/1550/1550-setup.all'
Handing in Assignments
Follow the instructions given here to
submit your assignments.
The Assignments
Assignment 1 - Writing
a shell (Due Date: whenever--not graded!-- but best before 17 January 2006)
Assignment 2 - The
NACHOS Survey (Due Date: SUNDAY 15 January 2006)
Assignment 4 - Multiprogramming
(Due Date: FRIDAY 17 March 2006 (with 10% bonus) or monday the 20th at
9am) Read the FAQ
Assignment 5 - NachOS
File System (Due Date: forthcoming)