Skip to main content
KBS_Icon_questionmark link-ico

Operating Systems And Concurrency

Key information

  • Module code:

    5CCS2OSC

  • Level:

    5

  • Semester:

      Spring

  • Credit value:

    15

Module description

Aims and Learning Outcomes

To explain how the internal structure of operating systems is designed and implemented for management of resources and provision of services.

By the end of the course you will be able to describe the basic principles used in the design of modern operating systems and be able to explain some of the basic features necessary to support a modern operating system.

On successful completion of this module, students will:

Demonstrate knowledge and understanding of:

  • Process and thread creation and management
  • Communication in processes and threads
  • Process synchronisation and deadlocks
  • Memory-management strategies
  • Protection and security

Be able to:

  • Understand and implement programs which accomplish simple tasks such as process and thread creation, communication and synchronisation

Delivery notes:

Students study a range of topics in Operating Systems and Concurrent Programming.

The fifth learning outcome is interpreted broadly to give an introduction to encryption and other security topics, as the final year security modules are optional.

Syllabus

An indication of types of topic:

Introduction to operating systems

Processes

  • Process Concepts
  • Process Scheduling
  • Operations on Processes
  • Inter-process Communication

Threads

  • Multithreading Models
  • Java Threads
  • Threading issues

Process Synchronization

  • The critical-section problem
  • Peterson’s Solution
  • Synchronization Hardware
  • Semaphores
  • Classical Problems of Synchronization
  • Monitors
  • Java Synchronization

Deadlocks

  • System Model
  • Deadlock Characterization
  • Methods for Handling Deadlocks
  • Deadlock Prevention
  • Deadlock Avoidance
  • Deadlock Detection
  • Recovery from Deadlock

Main Memory

  • Swapping
  • Contiguous Memory Allocation
  • Paging
  • Structure of the Page Table
  • Segmentation

Virtual Memory

  • Demand Paging
  • Page replacement
  • Allocation of Frames
  • Thrashing

Protection

  • Goals of Protection
  • Principles of Protection
  • Domain of Protection
  • Access Matrix
  • Access Control
  • Revocation of Access Rights
  • Language-Based Protection

Assessment details

Please note: The below assessment details for the 2025/26 academic year may be updated. The confirmed details will be available on the Student Handbook and on the module KEATS page at the beginning of the semester.

  • 70% Examination
  • 30% Coursework 


Module description disclaimer

King’s College London reviews the modules offered on a regular basis to provide up-to-date, innovative and relevant programmes of study. Therefore, modules offered may change. We suggest you keep an eye on the course finder on our website for updates.

Please note that modules with a practical component will be capped due to educational requirements, which may mean that we cannot guarantee a place to all students who elect to study this module.

Please note that the module descriptions above are related to the current academic year and are subject to change.