Introduction to Distributed Systems
Reykjavik University

Autumn 2007

Introduction

Today very few computer based system are being developed to work in isolation from other systems. Rather they are increasingly being integrated both at network and application level. The area of distributed systems has evolved during the last 2-3 decades, and in the last decade, the spreading of the Internet and intranets has made the area a central for the development of modern software. Today distributed systems are everywhere ranging from the world wide web to networks of embedded controllers in modern cars. There are several good reasons for developing and deploying distributed systems, often heard are: fault tolerance, better performance than by using single processor solutions, economics, and autonomy. However, distributed systems are very complex and require sophisticated computer science and technological solutions.

This course introduces distributed systems. It will explain how their basic properties differ profoundly from centralized and sequential systems, and how this difference has severe impacts on how we understand and develop such systems. The course will explain how distributed systems are structured, how they may be programmed and constructed, and will give a number of distributed algorithms for solving prototypical problems frequently occurring in distributed systems.

Contents

Learning goals 

The student must at the concluding examination be able to

Amount: 3 ECTS (15 lectures)

Lecturer:

Brian Nielsen e-mail: bnielsen@cs.aau.dk

Teaching Assistant

Text Book:

Coulouris, Dollimore, Kindberg, "Distributed Systems- concepts and design" 4th edition, Addison Wesley, ISBN 0-321-26354-5

 

Course Plan (Subject to changes):

Lectures: 9.00 - 10.50 in room K-6.  Exercises: 11.00 to 12:30  in room K-6

Lecture No. Date Topic Slides
1 Mon 26/11 Introduction to Distributed Systems intro.pdf 
2 Tue 27/11 Programming Models I cs.pdf
3 Wed 28/11 Programming Models II dp2.pdf
4 Thu 29/11 Distributed File Systems dfs.pdf
5  Thu 29/11
(13-16.30)
Peer2peer Systems p2p.pdf
squirrel.pdf
6 Mon 3/12 Clock Synchronization clock.pdf
7 Tue 4/12 Distributed Mutual Exclusion mutex.pdf
8 Wed 5/12 Multicast communication mcast.pdf
9 Thu 6/12 Consensus and study-exercises consensus.pdf
10 Thu 6/12 Study Exercise (No Lecture)  
11 Mon 10/12 Replication repl.pdf
12 Tue 11/12 Study Exercise (No Lecture)  
13 Wed 12/12 Web Services webserv.pdf
14 Thu  13/12 Introduction to Grid and Parallel Computing grid.pdf
15a Thu 13/12 Conclusions  
15b      

Resources and links

Sincerely,

Brian Nielsen