Introduction to Computing Systems
Course Objectives
The aim of the module is to outline key concepts in modern operating and distributed systems.
Syllabus
- Basic computer architecture: CPUs, memory, buses, interrupts, I/O,construction set design, classification, factors impacting performance,caching and pipelining, memory management hardware.
- Concurrent programming: motivation; mutual exclusion and conditionsynchronisation; synchronisation primitives.
- Operating systems: internal OS structure; file management; devicedrivers; memory management; process management: scheduling andthreads, process management in Unix; OSs for multiprocessors; parallelI/O; case studies.
- Distributed Systems: what is a distributed system, why distributedsystems, potential problems, the client server paradigm, distributedsystems platforms; remote procedure calls; fault-tolerance,replication and other services.
Assessment
100% Coursework.
Recommended Reading
- Computer Organization and Design: The Hardware/Software Interface. David A. Patterson and John L. Hennessy. Morgan Kaufmann, third edition, 2004.
- Distributed Systems: Principles and Paradigms Andrew S. Tanenbaum andMaarten van Steen, Prentice Hall
Dates and Details
Lecturer: Dr Mike Hazas


