Introduces computer operating system principles, using practical examples. Topics include tasking and processes, process coordination and synchronisation, resource scheduling, physical and virtual memory organisation, security issues, communications and networking, and distributed operating systems. The Unix operating system is used as a case study where appropriate.
- Semester 2 - 2015
1. Develop an understanding of the structure and function of operating systems, including the kernel, process scheduling, memory management, input/output device management, file systems, interprocess communication, networks and distributed systems, protection, security and recovery
2. Develop an understanding of how OS abstractions are realized on conventional hardware
3. Gain familiarity with various design issues in operating systems and the corresponding primitive methods and algorithms dealing with these issues.
4. Develop essential programming skills of programming with consideration of concurrency and multithreads etc
5. Gain familiarity with some real operating systems.
- Hardware overview.
- Processes and process scheduling including multi-processors.
- Concurrency control using hardware and software techniques.
- Memory Management.
- Virtual memory.
- I/O and disk management.
- File systems and file manipulation.
- Security mechanisms.
- Process migration
Written Assignment: Programming Assignments
Formal Examination: Formal Examination *
* This assessment has a compulsory requirement.
In order to pass this course, each student must complete ALL of the following compulsory requirements:
Course Assessment Requirements:
- Formal Examination: Minimum Grade / Mark Requirement - Students must obtain a specified minimum grade / mark in this assessment item to pass the course. - Students must obtain 40% in the final exam to pass the course.
Face to Face On Campus 3 hour(s) per Week for Full Term
Face to Face On Campus 1 hour(s) per Week for Full Term