Università di Bologna · Prof. Alessandro Ricci · a.a. 2025/2026

Programmazione Concorrente e Distribuita

17 capitoli4 pagine di prep esame~10 ore di studiooltre 100 widget interattivi
Tavola tecnica: tracce di istruzioni indipendenti convergono in un interleaving e si risolvono in una struttura ordinata
Tavola 00 — Tracce indipendenti → interleaving → ordine. Il percorso del corso in una figura.

Come studiare

I

Concorrenza a memoria condivisa

  1. 01Introduzione: concorrenza, parallelismo e architetture28 min · 5 widget
  2. 02Modellazione dell'esecuzione concorrente40 min · 11 widget
  3. 03Proprietà di correttezza: safety, liveness, fairness e LTL16 min · 2 widget
  4. 04Il problema della sezione critica25 min · 6 widget
  5. 05Semafori e problemi classici35 min · 8 widget
  6. 06Deadlock20 min · 6 widget
  7. 07Monitor e variabili condizione40 min · 5 widget
  8. 08Concorrenza in Java: thread, synchronized, task ed executor45 min · 8 widget
  9. 09Verifica formale e model checking30 min · 4 widget
  10. P1Prep esame · Assignment 1 — Pooolorale
Tavola: tre processi a un gate, uno attraversa la sezione critica, due attendono
Tav. I — Mutua esclusione
II

Programmazione asincrona e reattiva

  1. 10Programmazione asincrona45 min · 12 widget
  2. 11Programmazione reattiva45 min · 11 widget
  3. P2Prep esame · Assignment 2 — FSStatorale
Tavola: un flusso di elementi trasformato da tre stadi operatore
Tav. II — Flussi e operatori
III

Message passing e attori

  1. 12Message passing e canali50 min · 12 widget
  2. 13Il modello ad attori50 min · 12 widget
  3. 14Attori avanzati: timer e cluster20 min · 2 widget
  4. P3Prep esame · Assignment 3 — Smart Home Alarm + Odds-and-Evensorale
Tavola: processi isolati che si scambiano messaggi con mailbox in coda
Tav. III — Scambio di messaggi
IV

Sistemi distribuiti

  1. 15Computazione distribuita: modelli e orologi logici30 min · 4 widget
  2. 16Algoritmi distribuiti50 min · 17 widget
  3. 17Oggetti distribuiti e servizi14 min · 2 widget
  4. P4Prep esame · Assignment 4 — Alarm distribuito + RMI TTTorale
Tavola: nodi con orologi sfasati e una partizione raggiungono un ordine condiviso
Tav. IV — Consenso e tempo logico