To provide students with a deep understanding of modern operating system technology, implementation techniques and research issues.
Provide in-depth coverage of modern operating system issues, such as:
A rough outline of the lectures is (subject to change):
Lab work forms a major component of the course. This will be carried out in the Advanced Systems Teaching (ASysT) Lab, presently located in the Bongo Lab in the ME undercroft. Labs commence in Week 1. The lab features locally developed U4600 computers based on a 64-bit MIPS R4600 processor. These nodes are set up to run L4Ka::Pistachio, which has been ported to the MIPS architecture by Carl van Schaik at UNSW. The U4600's are connected to Linux hosts running an L4 development environment. OS code is developed and compiled there and then downloaded to the 64-bit systems, which present a minimum environment ideally suited for low-level systems programming exercises. Documentation as well as sample code will be provided.
Students will also be able to run their system on simulated MIPS hardware, thanks to the locally developed CPU simulator Sulima. Sulima allows you to do most development and debugging outside the lab (and is certainly highly recommended due to the faster debugging cycle). However, any project demonstrations must be done on actual hardware, not on a simulator.
After some ``warm-up'' experiments students will work in groups of two on a project, which constructs various OS components, with the ultimate aim of producing a small (and very efficient) operating system. A series of milestones are defined to aid the implementation.
Milestones and the final project will be demonstrated to School staff and the code submitted for assessment. Complete system documentation will form the final deliverable.
Details will be published in due course. Milestones must be demonstrated at the scheduled demonstration time in the week in which they are due. Milestone deadlines missed by no more than one week will cause a loss of 25% of the mark for that particular milestone, if missed by more that one week the penalty is 50%, up to a maximum of two weeks. No submissions/demos will be accepted later than two weeks after the deadline. Furthermore, students will not be allowed to continue with the course unless they have given a satisfactory demonstration of the first two milestones (m0 and m1) within one week of the respective due date!
Alternative projects may be given to some students by special arrangements. The main criteria for this is that the project is at least as challenging as the standard project, and that I am convinced that the student(s) are up to it.
Plagiarism in any form will be dealt with consistent with School and University policies.
There will be a final exam, in the form of a 24h take-home. Students will be given one day to read and analyse two recent research papers relevant to the material covered in the course, and submit a critical report on it. See the previous years' exams for examples.
Supplementary exams will only be awarded in well justified cases, in accordance with School policy, not as a second chance for poorly performing students. In particular, it is unlikely that a supplementary will be awarded to students who have actually sat the proper exam. Make up your mind whether or not you are sick before attempting the exam!
Supplementary exams will have the same format as the normal exam, and will be probably be on the day after the written supplementary exams held for other courses.
Project work counts for 65%, the exam for 35% of the final mark. A minimum mark of 14 (i.e., 40% of the maximum) is required in the exam to receive a passing grade.
There is no textbook for this course, as no published book covers the material in sufficient depth. Plenty of handouts will be provided.
Lecture notes and other information can be found under the course's WWW home page at URL http://www.cse.unsw.edu.au/~cs9242/.
Some lectures may be delivered by visitors or research students.