Go to Dana Petcu's homepage


DISTRIBUTED SYSTEMS


Lecture/theory (a) - schedule:

  1. Lecture 1: Master studies (HG), lecture requirements
  2. Lecture 2: What is a Distributed System? In English and in Romanian
  3. Lecture 3: Design and Middleware. In English and in Romanian
  4. Lecture 4: Communication in Client-Server model. In English and in Romanian
  5. Lecture 5: Remote Procedure Call. In English and in Romanian
  6. Lecture 6: Group Communication. In English and in Romanian
  7. Lecture 7: Clock synchronization - part 1. In English and in Romanian
  8. Lecture 8: Clock synchronization - part 2. In English and in Romanian
  9. Lecture 9: Distributed Mutual Exclusion. In English and in Romanian
  10. Lecture 10: Deadlocks. In English and in Romanian
  11. Lecture 11: Fault tolerance. In English and in Romanian
  12. Lecture 12: Distributed Computing Models. In English and in Romanian
  13. Lecture 13: Elections. In English and and in Romanian
  14. Lecture 14: Resource Management in Distributed Systems. In English and in Romanian

Lecture/Technologies (b) - schedule:

  1. Lecture 1: Lab requirements and final project.
  2. Lecture 2: First Technologies for Distributed Systems. In English and in Romanian
  3. Lecture 3: P2P. In English and in Romanian
  4. Lecture 4: Grids. In English and in Romanian
  5. Lecture 5: Web Services. In English and in Romanian
  6. Lecture 6: WS standards: XML, WSDL, SOAP, UDDI. In English and in Romanian
  7. Lecture 7: Virtualization. In English and in Romanian
  8. Lecture 8. Cloud computing. In English and in Romanian
  9. Lecture 9: Service oriented architectures. In English and in Romanian
  10. Lecture 10: Ubiquitous Computing. In English and in Romanian
  11. Lecture 11. Real Time Systems. In English and in Romanian
  12. Lecture 12: Edge and Fog Computing. In English and in Romanian
  13. Lecture 13. Streaming processing systems. In English and in Romanian
  14. Lecture 14. Review of the subjects. Examination requirements. Example of questionnaire.

Labs (Java) - schedule:

  1. Lab 1 - Sockets in Java. TCP Sockets. Streams, Readers and Writers for Input and Output
  2. Lab 2 - UDP Sockets. Multicasting.
  3. Lab 3 - Bottom-up build of web services. Automated building of clients of web services.
  4. Lab 4 - Programming a client of a Web service. Writing a client of a public Web service.
  5. Lab 5 - Writing a simple web app in a PaaS. Option 1: use Azure; Option 2: use Google App Engine
  6. Lab 6 - Servless applications: using Lambda functions from the Amazon Web Services (free tier).
  7. Lab 7 - Internet of Things: using IoT Core and Timestream table services from Amazon Web Services (free tier)

Textbooks:

  1. Main lecture notes: Distributed Systems (in English).


Schedule in Winter semester of 2025/2026

  1. Monday, in Romanian, 16:20-17:50 Lecture (IS) in room 048, 18:00-19:30 Lab in room 048 (IS group 1- odd weeks, IS group 2 - even weeks)
  2. Friday, in English, 19:40-21:10 Lecture in room A02 (AIDC + BD + CS+ ISR), 18:00-19:30 Lab in room 048 (CS + ISR - odd weeks, AIDC + BD - even weeks)

In Romanian:

Week Date 16:20 18:00 Remark
1 29 Sep 2025 Lecture 1 Lab 1
2 6 Oct 2025 Lecture 2 Lab 1
3 13 Oct 2025 Lecture 3 Lab 2
4 20 Oct 2025 Lecture 4 Lab 2
5 27 Oct 2025 Lecture 5 Lab 3
6 3 Nov 2025 Lecture 6 Lab 3
7 10 Nov 2025 Lecture 7 Lab 4
8 17 Nov 2025 Lecture 8 Lab 4
9 24 Nov 2025 Lecture 9+10 Lab 5 Lab: IS1+IS2
10 1 Dec 2025 -- --
11 8 Dec 2025 Lecture 11 Lab 6
12 15 Dec 2025 Lecture 12 Lab 6
13 5 Jan 2026 -- --
14 12 Jan 2026 Lecture 13+14 Lab 7 Lab: IS1+IS2

In English:

Week Date 18:00 19:40 Remark
1 3 Oct 2025 Lab 1 Lecture 1
2 10 Oct 2025 Lab 1 Lecture 2
3 17 Oct 2025 Lab 2 Lecture 3
4 24 Oct 2025 Lab 2 Lecture 4
5 31 Oct 2025 Lab 3 Lecture 5
6 7 Nov 2025 Lab 3 Lecture 6
7 14 Nov 2025 Lab 4 Lecture 7
8 21 Nov 2025 Lab 4 Lecture 8
9 28 Nov 2025 Lab 5 Lecture 9
10 5 Dec 2025 Lab 5 Lecture 10
11 12 Dec 2025 Lab 6 Lecture 11
12 19 Dec 2025 Lab 6 Lecture 12
13 9 Jan 2026 Lab 7 Lecture 13
14 16 Jan 2026 Lab 7 Lecture 14


References:

  1. George Coulouris, Jean Dollimore, Tim Kindberg, Gordon Blair, Distributed Systems. Concepts and Design, Addison-Wesley, 2012
  2. D.Petcu, V.Negru, Distributed processing (in Romanian), Ed. Univ. de Vest, Timisoara, 2002.
  3. Joe Clabby, Web Services Explained: Solutions and Applications for the Real World, Prentice Hall PTR, 2002
  4. Thomas Erl, Service-Oriented Architecture: Concepts, Technology, and Design, Prentice Hall PTR, 2005
  5. Andrew S. Tanenbaum, Marteen Van Steen, Distributed Systems. Principles and Paradigms, CreateSpace Independent Publishing Platform, 2016
  6. Ray. Rafaels, Cloud Computing: From beginning to end, CreateSpace Independent Publishing, 2015
  7. Binildas CA, Malhar Barai, Vincenzo Caselli, Service Oriented Architecture with Java. Using SOA and web services to build powerful Java applications, Packt Publishing Ltd., 2008
  8. Kenneth L. Calvert, Michael J. Donahoo. TCP/IP sockets in Java : practical guide for programmers, 2nd ed., Elsevier, 2008
  9. John Paul Mueller, Mining Google Web Services: Building Applications with the Google API, Sybex, 2004
  10. James Murty, Programming Amazon Web Services, O'Reilly, 2008
  11. John Long, Cloud Native Java, O Reilly, 2017

Last modification: September 27, 2025