Lecturer: Dr S.M. Hand, Dr K.A. Fraser and Professor J.A. Crowcroft
No. of lectures: 16
Prerequisite courses: Concurrent Systems and Applications, Operating Systems II, Digital Communication II
Aims
This course will cover a selection of topics in the general area of
systems including operating systems, database systems, peer-to-peer
systems and parallel and distributed systems. It aims to help students
develop and understand complex systems and interactions, and to
prepare them for emerging systems architectures.
Lectures
Advanced operating systems.
Extensible systems. Capability systems. Distributed operating systems
(scheduling, resource control). Distributed and persistent virtual
memory. Hypervisors and machine virtualisation. Networked storage
architectures (NAS, SAN). Database and filing system
topics. [SMH, 6 lectures]
On completing the course, students should be able to
describe three techniques for supporting extensibility
argue for and against distributed shared virtual memory
describe how to build effective concurrency-control primitives
for a modern computer
compare and contrast various distributed lookup schemes
architect a basic peer-to-peer application
Recommended reading
Singhal, M. & Shivaratri, N. (1994). Advanced concepts in operating systems: distributed, database, and multiprocessor operating systems. McGraw-Hill.
Stonebraker, M. & Shivaratri, N. (1998). Readings in database systems. Morgan Kaufmann (3rd ed.). ISBN 1-55860-523-1
Hennessy, J. & Patterson, D. (2003). Computer architecture: a quantitative approach (Chapter 6 in particular). Morgan Kaufmann (3rd ed.).
Background reading:
Oram, A. (ed.) (2001). Peer-to-peer: harnessing the power of disruptive technologies. O'Reilly. ISBN 059600110X