[CSE]  Advanced Operating Systems 
COMP9242 2016/S2 
CRICOS Provider
Number: 00098G

PRINTER Printer-Friendly Version

M9: System Documentation

Your final milestone is to complete the documentation of your system. The main aim of your documentation is to enable somebody outside your group to understand the design of your system. For example, the design document should be enough to understand whether your particular system is one of the better solutions outlined in earlier milestones, or even better.

You should describe your system call interface, key internal data structures, and key algorithms/approaches such that it is clear what your design choices are in the set of possible design choices, and how those design choices relate to limitations, assumptions, behaviour, or advantages of your system.

Detailed code documentation is not required outside normal inline code commenting in your source. More specially, the design document is focused on the design, not a hardcopy listing of code comments. The design document is also self-contained, and should not require the source code (or it's comments) to comprehend.


Be sure to point out any known limitations in your system, or any important assumptions you have made.

You also have a chance to clean up your codebase, so that it's readable by someone other than you.

At the very least you should document:

  • execution model,
  • page-table structure,
  • demand-paging,
  • system call dispatching,
  • I/O subsystem, and
  • process management.

If you completed any bonus features be sure to document them as well.


  • Use LaTeX.
  • Use diagrams.
  • Use a spell-checker.
  • Read Gernot's style guide.


For this milestone you are required to your documentation in pdf form, as well as your entire code base, as described in the project outline.

Last modified: 29 Aug 2016.