Operating Systems

Course unit fact file
Unit code COMP15212
Credits 10
Unit level Level 1
Teaching period(s) Semester 2
Offered by Department of Computer Science

Overview

An operating system is typically the 'lowest' layer of software in a computer. It provides an abstracted interface so that applications can run on diverse hardware without modification and it provides security which prevents misbehaving software from crashing the hardware or disturbing other tasks which may be running simultaneously.

This course unit provides an introduction to the major principles of implementation of an operating system and some experience in how these features may be exploited by the 'higher' software layers.  

Aims

This course introduces the concept of an operating system -- the layer of software that mediates between the computer’s underlying hardware, and the processes and users of that hardware. 

Learning outcomes

ILO 1: Analyze how operating systems provide resource abstraction (e.g., file systems, virtual memory) and enforce resource sharing among competing processes and users.

ILO 2: Describe the essential components of a modern operating system, emphasizing mechanisms for memory management (paging/virtual memory), process scheduling, and I/O device handling.

ILO 3: Assess design trade-offs and policies (e.g., caching, swapping and scheduling) based on their impact on system performance, energy efficiency, and resource sustainability.

ILO 4: Use tools and programming constructs to practically demonstrate and profile Operating System behavior and process life cycles.

ILO 5: Evaluate the hardware and software mechanisms employed to ensure system security and integrity, including memory protection, privilege levels, and file access control against common threats.

Teaching and learning methods

Lectures, workshops, clinics, coursework, face to face mentoring by TAs. Use of online quizzes.

Assessment methods

Method Weight
Written exam 80%
Practical skills assessment 20%

Recommended reading

  1. Silberschatz, Abraham. (2019). Operating system concepts. Wiley. ISBN: 9781119455875
     
  2. Tanenbaum, Andrew S., 1944- author. (2015). Modern operating systems. Pearson. ISBN: 9781292061955 

Study hours

Scheduled activity hours
Lectures 40
Practical classes & workshops 20
Independent study hours
Independent study 40

Teaching staff

Staff member Role
Stephen Pettifer Unit coordinator