Computing

Operating Systems

Module code: G6059
Level 5
15 credits in spring teaching
Teaching method: Laboratory, Lecture
Assessment modes: Coursework, Unseen examination

This module studies the system-level structures that underpin operating systems and networks.

The primary focus is on processes, showing how they contain dynamic threads and address spaces, and on understanding how both shared memory and messages can be used to communicate between processes.

Concepts covered will include:

  • process management
  • memory management
  • file systems
  • synchronisation primitives
  • communication abstractions and their implementation over packets switched networks, using TCP and IP as examples.

Particular emphasis will be on showing how to make these structures secure.

Pre-requisite

Further programming, Programming Concepts, Introduction to Computer Systems

Module learning outcomes

  • Identify and understand the major components of a major modern operating system.
  • Describe the concepts of Processes and Threads and critically evaluate the different management techniques for these.
  • Describe the arrangement of memory in modern operating systems, including the use of virtual memory.
  • Describe the common methods of file management and give critical appraisals of the various methods used.