CS 3733 Operating Systems, Fall 2006 Assignment 1 Comments
This assignment was graded on the basis of 30 points.
Note: Recitations meet on Mondays and Wednesdays. There are no more
Friday recitations.
- Do not do any printing from the utility functions in this assignment,
even when an error occurs.
- Use separate compilation. Put your functions in one file and use a
separate file for the test methods.
- What does a = &first[0] do and how does it differ from
a=first?
- What is the purpose of the * in the statement:
*(a++);
- When using malloc use sizeof(char *) for the size
of a pointer.
- Always test the return value of malloc for an error.
- You must include all of your source code. If you put some of it
in another file, make sure you print out that file also.
- You must learn how to correctly use lint.
- When you staple the assignment, make sure the staple
does not cover up the output.
- Do not ignore lint warning that are not on the list of warnings you can
ignore.
- A lint warning in the form "implicitly declared to return int"
usually means a missing include.
- Do not ignore lint warnings of the form:
expression or subexpression has null effect. See item 4 above.
- When you are asked to write a test program, don't just do one test.
You should include at least one test when one or more lists is empty
and when the lists are the same.
- Look at the output from your test programs. Make sure that it gives the
correct answers.
- You should be able to tell if the program is working just by looking
at the test output. This means that you need to print the strings you are
using for the test.
- If an error occurs in a utility function, free all unneeded memory
before returning. You do not need to do this in the main program
if it is going to exit anyway.
- Do not return a negative value from main. Only 8 bits are kept,
so the return value should not be large.
- Source lines should be at most 80 characters in length and must fit on one
line when printed.