This paper focuses on operating systems design and implementation. Topics include operating system architecture, process management, inter-process communication, and deadlock memory management devices.
- Students will be able to write complex C code including process creation, data structures using pointers and multi-threaded code.
- Students will demonstrate understanding of the basic components and structure of a typical operating system, including relevant algorithms and design principles
- Students will be capable of understanding and extending an existing operating system
The learning outcomes are supported by assignments and a project.
This paper currently contributes to the Networks, Software Development and Computer Technology streams of the BCMS and BCMS(Hons), and the BE and BE(Hons) in Software Engineering.
COMP200 Computer Systems and one of
COMP203 Programming with Data Structures or
COMP241 Software Engineering Development
Official Timetable Information
The practical programme must be completed to the satisfaction of the co-ordinator of the paper.
Students should expect to spend about 13 hours per week on this paper, in the following proportions:
These times are estimates based on a well prepared, competent, student.
|Lectures:||0 to 3 hours/week (a total of 21 hours over the semester)|
|Labs:||0 to 2 hours/week (a total of 21 hours over the semester)|
|Private study:||9 to 13/week hours. Note: there is a substantial reading component to the paper and a large project.|
Tanenbaum, A & Woodhull A. (2006) Operating Systems Design and Implementation, 3rd Edition. Pearson Prentice Hall.
Students are also expected to guide their own reading (including from the textbook, books in library, online documents, source code documentation etc) appropriately for details beyond those covered in the lectures.
Lecture notes will be supplied.
Students are expected to access course material and notices via Moodle. There will also be a discussion forum hosted online.
The Linux machines in computing laboratory R.G.06 are available for students to use in this course. After hours access to R Block requires CARDAX, which can be obtained through the Department of Computer Science main office in G.1.21.
The assignments involve computer programming and are of the length and style expected for 300 level computer science. The programs will be standalone programs. Code is expected to presented tidily and documented according to standard conventions. Some programs may need to be accompanied by a report detailing the experimental investigations that the students performed using their programs.
The Minix project will be assessed via submission of your code and an interview in which you will explain what was achieved, your approach and some examples of your code.
Internal assessment/final examination ratio 1:0
Assignments are to be submitted electronically via Moodle. A turn-around time of about two weeks is expected for marking and feedback to be given. The project will have a different submission process to allow a full disk image to be submitted.
Class attendance is expected. All material covered in class is assessable, as well as prescribed chapters of the textbook and practical exercises.
Follow this link for Academic Integrity information.
Follow this link for information on Performance Impairment.
Student Concerns and Complaints
Follow this link for Student Concerns and Complaints information.
Application for Extension
Follow this link for information on applying for an Extension.
Review of Grade
Follow this link for information on applying for a Review of Grade.
Your attention is drawn to the following regulations and policies, which are published in the University Calendar: