SUBJECT

Title

Distributed systems

Type of instruction

lecture + practical

Level

bachelor

Part of degree program
Credits

3+2

Recommended in

Semester 6

Typically offered in

Spring semester

Course description

The course presents the main concepts of distributed systems and middlewares. Students get programming assignments in Java.

Concepts: middleware, distributed file systems, persistency, transparencies: access, location, relocation, migration, replication, concurrency, failure, persistency. Scalability, transactions, authentication and authorization. Client-server model. Communication: protocols, message passing, channels, RPC, RMI, parameter passing, references, distributed object model. Processes:, threads, multithreaded clients and servers, code migration, agents, trusted code. Name spaces, mobile entities, reference counting, distributed garbage collection. Global state, consistent cut, time stamp, termination detection, clock synchronization). Consistent replications.

Readings
  • Tanenbaum, A.S. - van Steen, M.: Distributed Systems, Principles and Paradigms. Prentice Hall, 2002.

 

Recommended literature:

  • Coulouris G., Dollimore, J., Kindberg, T.: Distributed Systems: Concepts and Design, Addison Wesley 2000.