Course co-ordinator(s): Dr Hani Ragab Hassen (Dubai), Prof Mike Chantler (Edinburgh).
Aims:
- For the Operating system part: To provide an introduction to operating systems, their basic principles and shell programming.
- For the Concurrency part: To introduce the theory and practice of concurrent hardware and software systems
Detailed Information
Course Description: Link to Official Course Descriptor.
Pre-requisites: none.
Location: ALP, Dubai, Edinburgh.
Semester: 2.
Syllabus:
- For the Operating system part: overview on operating systems concepts and structures, processes, threads, classical inter-process communication problems, memory management.
- For the Concurrency part: Concurrency, Parallelism, Pthreads. Parallelism Pattern: Pipelining, Data-Parallelism, Nested Data-Parallelism, Flattening, Task-Parallelism, Data-Flow.
Learning Outcomes: Subject Mastery
Understanding, Knowledge and Cognitive Skills Scholarship, Enquiry and Research (Research-Informed Learning)
For the Operating systems part:
- Understanding of the concepts and structures present in modern operating systems.
For the Concurrency part:
- Broad and integrated knowledge and understanding of concurrency concepts, techniques and problems
- Critical understanding of predominant concurrency pattern and their implementation on modern architectures
- Hands-on experience
Learning Outcomes: Personal Abilities
Industrial, Commercial & Professional Practice Autonomy, Accountability & Working with Others Communication, Numeracy & ICT
- Critically evaluate the problematic and concepts related to operating systems.
- Analysis of the different possible solutions to leveraging concurrency for parallel execution.
Assessment Methods: Due to covid, assessment methods for Academic Year 2020-21 may vary from those noted on the official course descriptor. Please see the Computer Science Course Weightings and the Maths Course Weightings for 2020-21 Semester 1 assessment methods.
SCQF Level: 9.
Credits: 15.

