The iframe on this page is empty and contains no contentSkip to content

Department of Computing

CO211-Operating Systems

Learning outcomes

Learning Outcomes

By the end of the course students will be able to describe the basic principles used in the design of modern operating systems. In particular, they will:

- be able to distinguish different styles of operating system design.

- understand device and I/O management functions in operating systems
as part of a uniform device abstraction.

- have an understanding of disk organisation and file system
structure.

- be able to give the rationale for virtual memory abstractions in
operating systems.

- understand the main principles and techniques used to implement
processes and threads as well as the different algorithms for
process scheduling.

- understand the main mechanisms used for inter-process communication.

- understand the main problems related to concurrency and the
different synchronization mechanisms available.

- have the ability to evaluate security risks in operating systems and
understand the role operating systems can and should play in
establishing security.

Course syllabus

Content:

OS structure: kernel organisation, OS functionality

Device management: I/O layers, device independence, device drivers, I/O APIs

Disk management: disk storage devices, hardware layout, disk performance, disk scheduling, RAID, caching

File systems: files, file system organisation, directories

Memory management: logical/physical address spaces, virtual memory, paging, demand paging, page replacement

OS virtualisation: virtual machines, type 1/2 hypervisors, paravirtualisation, memory and I/O virtualisation

Processes: basic concepts and motivation, process creation and execution, implementation issues, process scheduling

Threads: basic concepts and motivation, user-level threads vs. kernel threads

Inter-process communication: signals. pipes, sockets, shared memory

Process synchronization: critical sections and mutual exclusion, race conditions, locks and semaphores, deadlocks

Security: basic concepts, security attacks, access control, automatic techniques for detecting security vulnerabilities

Reading list

Add Code Category Title Authors Publisher/Pub Date
1 OSC A Operating System Concepts / 7th edition Silberschatz, Abraham; Galvin, Peter G and Gagne, Greg Wiley, 2005
2 OS A Operating systems: internals and design principles / 5th edition Stallings, William Pearson Prentice Hall, 2005
3 MOS2 A Modern operating systems / 3rd edition Tanenbaum, Andrew S. Prentice Hall, 2008
4 ULK B Understanding the Linux Kernel / 3rd edition Bovet, Daniel P and Cesati, Marco O'Reilly, 2006
5 OSDI2 B Operating Systems, Design and Implementation / 2nd edition Tanenbaum & Woodhull Prentice Hall, 1997

Course leaders

Dr Cristian Cadar, Dr Peter Pietzuch




N.B. Course structure and content is subject to change.


Share this on Delicious Tweet this Digg this Stumble this Share this on Facebook