Module Descriptor School of Computer Science and Statistics
|Module Name||Concurrent Systems & Operating Systems|
|Module Short Title||N/a|
|Semester Taught||Hilary Semester|
Lecture hours: 33
|Module Personnel||Dr Andrew Butterfield|
When students have successfully completed this module they should be able to:
The first part of this module introduces students to concurrency and concurrent programming. The aim is to provide students with the ability to develop concurrent software systems using standard techniques and constructs. To achieve this aim, students must have a thorough understanding of common problems that arise in concurrent systems and how those problems can be avoided. This module will teach the use of tools and techniques for modelling and verifying the correctness of concurrent systems, applying this through practical laboratory exercises in which small concurrent software systems are developed.
The second part of the module addresses various aspects of the design of modern operating systems. The main aim is to explore how programmers can apply a knowledge of operating system features to the design of efficient applications. This is achieved by examining common algorithms and policies used by modern operating systems, as well as the facilities provided to application programmers. This knowledge is then applied in laboratory exercises.
|Recommended Reading List|
Gerald J. Holtzmann: "The SPIN Model Checker: Primer and Reference Manual", Addison-Wesley
% Exam: 80
|Academic Year of Data||2018/19|