CS3/MSc Operating Systems Syllabus
This course provides an introduction to the design and implementation
of general purpose multi-tasking operating systems. It concentrates
on the kernel aspects of such systems with the emphasis being on
concepts which lead to practical implementations. Throughout the
course reference is made to a number of significantly different actual
operating systems (Unix, Windows NT etc.) to illustrate real
- Process management. The process concept, synchronisation, mutual
exclusion, semaphores and monitors. Threads. Inter-process
- Resource Allocation. Deadlock prevention, avoidance and detection.
- The OS Kernel. Micro and Monolithic kernels. Multi-tasking,
privilege, interrupt handling. System and user processes. System calls.
- Memory Management. Description of problems of allocation, protection
and sharing. Virtual to Physical memory mapping schemes.
Segmented paged virtual memory. Paging control, replacement
algorithms; the working set model. Sharing code and data.
- Time Management. CPU scheduling algorithms. Real-time scheduling.
Disc access scheduling.
- File Management. Naming and Directory schemes. Disc space allocation.
File protection and access control. System security.