F29OC Operating Systems & Concurrency

Prof Mike ChantlerDr Hani Ragab Hassen

Course co-ordinator(s): Prof Mike Chantler (Edinburgh), Dr Hani Ragab Hassen (Dubai).

Aims:

  • For the Operating system part: To provide an introduction to operating systems, and their basic principles.
  • For the Concurrency part: To introduce the theory and practice of concurrent software systems.

Detailed Information

Course Description: Link to Official Course Descriptor.

Pre-requisites: Good knowledge of OO programming, Data Structures and Algorithms (Java preferable).

Location: ALP, Dubai, Edinburgh, Malaysia.

Semester: 2.

Syllabus:

For the Operating system part: - Overview on operating systems concepts and structures. - Main operating system abstractions such as processes & threads, files, and address space. - CPU scheduling, memory management and disk management

For the Concurrency part: - multi-core systems, threads, inter-thread communication, synchronisation, - mutual exclusion, critical regions, - monitors, semaphores, and atomic variables

Learning Outcomes: Subject Mastery

For the Operating systems part:

  • Understanding of the concepts and structures present in modern operating systems.
  • Extensive and in-depth understanding of the different aspects of resource management performed by modern operating systems, such as CPU scheduling, memory management, and disk management.
  • Hands-on experience

For the Concurrency part:

  • Understanding of concurrency concepts, communication techniques and problems
  • Critical understanding of predominant concurrency patterns
  • Hands-on experience

Learning Outcomes: Personal Abilities

  • Critically evaluate the problematic and concepts related to operating systems.
  • Analysis of the different possible solutions to leveraging concurrency for parallel execution and synchronisation.

Assessment Methods: Due to covid, assessment methods for Academic Year 2021/22 may vary from those noted on the official course descriptor. Please see:
- Maths (F1) Course Weightings 2021/22
- Computer Science (F2) Course Weightings 2021/22
- AMS (F7) Course Weightings 2021/22

SCQF Level: 9.

Credits: 15.