[an error occurred while processing this directive]

Project: Administrative Details

The practical component of this course consist of a simple initial exercise and one large project. The below milestones indicate when certain parts are to be delivered.

Note: Before starting on any assignment work first study the ASysT Lab page and build and run the hello-world program linked to that page. Do not try to go further until you have done this!

Milestone 0

The initial exercise (``milestone 0'') is a ``warm-up'' designed to get you into the swing of L4. It is due in week 2 and timely demonstration will be worth 4 marks. Further milestones constitute parts of the project. Milestone 0 is best done individually, but I will allow demonstrations individually as well as by groups.


The other milestones constitute the major project SOS: A Simple Operating System. The project is to be done in groups of two.

You will need explicit approval from the LiC for any other group size. Try to get your group organised. Contact me if you have not found a partner by the end of Week 3.

Almost half of the marks obtainable by project work can be obtained for timely and complete demonstration of the intermediate milestones. The remaining marks will be determined by our assessment of your project and documentation. The assessment involves:

The due dates of the various milestones are: Mid-session break arrangements: As far as milestone demonstrations and submissions are concerned, the mid-session break is considered non-existent. For example, demonstrating Milestone 6 in Week 10 will cost you one mark.

Notes on bonus marks:


If you have problems you should first check: Make sure you check these first before asking us. We'll send you straight back to do your homework if you ask questions which are already answered there!


Some students are tempted to write some tricky or obscure code for these projects. Other students run into problems by trying to do too much.

I can only reiterate that the debugging environment you have on the U4600s is extremely spartanic. You will not do yourself a favour by writing obscure or particularly tricky code. You'll most likely end up getting hoplessly tangled up in your own code. Don't do this.

Write your code as clearly, obviously and straightforward as possible. This is the best safeguard against obscure bugs. I believe that the project is challenging enough as it is, there is no need to make it harder.

Furthermore, when doing the final project marking I will obviously not look with much sympathy upon code I find difficult to understand.

The same applies for implementing features beyond the project specifications. You are welcome to do this, but, in your own interest, you are strongly advised to implement the required features first. First make it work, then go for the extras! The only students who have failed the course to date have ignored this rule — at their peril!

Demonstration and Submission of Milestones

Your are to show that your project passes the milestone requirements by demonstrating its operation to the demonstrator during the allocated time during the week the milestone is due.

In addition, you are to submit your source code using the give system, i.e.:

give cs9242 m0 file1.c file2.c ...

substituting m0 for the actual milestone number.

You should submit all your code, including makefiles etc. If you need to submit a tree of files (i.e. your OS source has subdirectories) you may submit a tar file. To create a tar file, cd to the directory above your source tree and type, for example,

tar cvf cs9242-m0.tar OS

This creates a tar file named cs9242-m0.tar containing the directory OS (you may have different names, of course).

Only one member of the group needs to submit.


Last modified: 20 Aug 2002. [an error occurred while processing this directive]