Aims and Fit of Module
This module aims to provide students with a fundamental understanding of the structures and functionalities of modern operating systems. It describes how the different principal components work and interact with each other and evaluates their performance under different scenarios and constraints. By the end of the module, students should have gained sufficient knowledge of operating systems to be able to create their own system software in the future.
The knowledge and techniques covered are essential to BSc Information and Computing Science.
Learning outcomes
A. Explain the management of processes, threads, memory, devices (I/O), and files, such as virtual memory, paging, DMA, RAID, multi-threads control and algorithms, concurrent control, etc.
B. Analyze the relationship between the operating system and the hardware environment, and how these components interact to manage system resources efficiently.
C. Evaluate the performance of operating systems under different conditions/scenarios.
D. Develop small programs using multiprocess and multithread programming techniques to improve the performance of tasks execution.
Method of teaching and learning
Students will be expected to attend two hours of formal lectures as well as to participate in one hour of supervised lab session and one hour of tutorial in a typical week. Lectures will introduce students to the academic content and practical skills which are the subject of the module, while tutorials and lab sessions will allow students to undertake practical exercises with the possibility of immediate feedback. In additions, students will be expected to devote about 6-7 hours of unsupervised time for private study, which provide students time for reflection and consideration of lecture materials and background reading.
Two assessments in the form of class tests will be used to test the students’ engagement of the weekly lectures and labs.