Distributed Systems

Distributed Systems

Goals

This course introduces basic concepts and techniques for distributed systems, i.e. systems in which a set of work stations and other computers are connected in a network - allowing them to share common resources and facilities, such as files, printers, and Internet access. The computing equipment at DAIMI is an excellent example of a distributed system.

The course also introduces the basic ideas behind computer networks and protocols, i.e. the techniques by which computers are able to communicate with each other.

Contents

One part of the course deals with distributed operating systems. It describes different kinds of system architectures, e.g. the client/server model and the use of workstations and processor pools. It is shown how different processes can interact by means of synchronous and asynchronous communication, remote procedure calls, and group communication. It is discussed how to synchronise physical and logical clocks, how to obtain exclusive access to shared resources, how to elect coordinators, and how to use atomic transactions. As a concrete example of a part of a distributed system, we discuss concepts and techniques to implement file systems, including directory service, replication and files that can be accessed by several users simultaneously.
Another part of the course deals with computer networks and communication protocols. It describes aspects of data communication especially data link control and multiplexing. In the problem domain of wide-area networks we discuss circuit switching, packet switching, frame relay and asynchronous transfer mode (ATM). Finally we look at the architecture of communication protocols in particular internetworking and transport protocols.
A third part introduces the basic ideas behind Coloured Petri Nets and illustrates how they can be used in the design and validation of distributed systems and computer protocols, e.g. to locate deadlocks and other undesired behavioural properties.

Evaluation
Oral examination, 13-scale

Lecturer
Jens Bæk Jørgensen

Credits
2 points/10 ECTS

Semester
Spring