The course provides the student with the technical and methodological tools to understand and describe the characteristics, functions and interactions of a Distributed System.
The course aims to provide an understanding of the principles on which the Internet and other distributed systems are based, their architecture, algorithms and design, and how they meet the demands of contemporary distributed applications, including the following topics: Distributed systems characterization; Coordination of distributed systems; Physical and logical clock synchronization; Distributed mutual exclusion; Election algorithms and protocols; Consistency of distributed systems; Data centric systems; Client centric systems; Consistency protocols; Resilience of distributed systems; Distributed process pooling and resilience; Reliable distributed communication services; Distributed operation commit; Recovery of faulty systems; Case studies: Hyperledger permissioned blockchains, Google distributed storage and computation, In memory Distributed Data Store, Office online collaboration platforms.
Software platforms course.
Lessons held in presence.
1. Distributed systems characterization
2. Coordination of distributed systems
3. Consistency of distributed systems
4. Resilience of distributed systems
5. Case studies
Material provided during the course and made available through Aulaweb:
https://2024.aulaweb.unige.it/course/view.php?id=2625
Ricevimento: Personal apointment. Please contact the teacher by email.
Ricevimento: At the end of the lectures in the first semester Upon appointment in the rest of the year
PIERPAOLO BAGLIETTO (President)
GIANNI VIARDO VERCELLI
MASSIMO MARESCA (President Substitute)
https://courses.unige.it/11160/p/students-timetable
The timetable for this course is available here: EasyAcademy
Oral discussion.
Please send an email to ask for an appointment.
Oral discussion on the course topics.
Home work to be developed at the end of the lab activity.