|
Corso
di Sistemi Concorrenti e Distribuiti Corso di Laurea Magistrale in Informatica Università di Padova, a.a. 2008/9 Docente: Tullio Vardanega |
Nell'ambito di entrambi i segmenti
del corso, il docente proporrà allo studente esercizi da
realizzare in
proprio in laboratorio per sperimentare direttamente le problematiche
progettuali e realizzative ed i paradigmi di soluzione illustrati a
lezione.
GNAT GPL edition 2008 (offerto da AdaCore)
Settimana | Data | Lezione | Contenuto | Materiale didattico |
Sistemi concorrenti | ||||
1 | 6 ottobre |
1 | Lezione: Programmazione
concorrente Esempio 1: 3 modi di programmare il sistema visto a lezione Esempio A: Il modulo "Calendario" Esempio B: Il modulo "Tempo Reale" |
1.§1-2 |
7 ottobre |
2 | |||
8 ottobre |
3 | Lezione: Communicazione
tra processi in un
sistema
concorrente Si svolgano gli esercizi 1-3 descritti nel materiale di lezione |
1.§3
|
|
10 ottobre |
4 |
|||
2 | 13 ottobre |
5 |
Lezione: Un
modello di concorrenza concreto Esercizio 4: "Il crivello di Eratostene". Compilare, eseguire e analizzare le caratteristiche salienti del programma concorrente proposto per la realizzazione dell'algoritmo Esercizio 5: descritto nel materiale di lezione Esercizio 6: "Il barbiere che dorme" Esercizio 7: "I filosofi a cena" |
1.§4 |
14 ottobre |
6 |
Lezione: Il
modello rendezvous Esempio:"Il crivello di Eratostene rivisitato" |
1.§5
|
|
15 ottobre |
7 |
|||
17 ottobre | 8 | Lezione:
Estensioni
del modello rendezvous Esercizio 8: "Il crivello di Eratostene ter": compilare, eseguire e commentare tutte le differenze strutturali del programma proposto rispetto alla soluzione esaminata nell'esercizio 4 Esercizio 9: "I filosofi a cena - soluzione rivisitata" |
1.§6 | |
3 | 20 ottobre | 9 |
Lezione: Risorse
protette Esempio: "Controllo di accodamento" Per approfondire: Per Brinch Hansen: "Structured Multiprogramming" (CACM, 1972) Per studio personale: astrazioni realizzabili mediante risorsa protetta 1: semaforo 2: segnali persistenti 3: segnali transitori 4: messaggi in diffusione 5: eventi 6: barriere |
1.§7 |
21 ottobre |
10 |
|||
22 ottobre |
11 |
Lezione: Criteri
di sincronizzazione |
1.§8 |
|
24 ottobre |
12 |
|||
4 | 27
ottobre |
Assenza del docente |
||
28
ottobre |
|
|||
29
ottobre |
|
|||
31
ottobre |
||||
5 | 3
novembre |
13 | Lezione: Correttezza
temporale Per approfondire: Definizione dei protocolli di priority inheritance Una critica alla priority inheritance Una risposta alla critica Un modello di riferimento per politiche di ordinamento |
1.§13-14 |
4
novembre |
14 | Lezione: Trattamento
di eventi asincroni |
1.§9 | |
5
novembre |
15 |
Lezione: Interazione
tra concorrenza e
orientazione a
oggetti Per approfondire: Il problema dell'inheritance anomaly |
1.§10 | |
7 novembre |
16 |
Ricapitolazione prima parte Esempio: "Sistema ferroviario" Esercizio 12: Analizzare la soluzione mostrata nell'esempio "Sistema ferroviario" e discussa alle pagine 15-17 della lezione C07, e realizzare la stessa semantica concorrente utilizzando un linguaggio alternativo a piacere, discutendo i problemi riscontrati e le differenze eventualmente irriducibili |
||
Sistemi distribuiti | ||||
6 | 10
novembre |
17
|
Lezione:
Definizione
e architettura di
sistema
distribuito |
2.§1-2
|
11
novembre (lezione in piazza) |
18
|
|||
12
novembre |
19
|
Lezione: Modelli
di comunicazione in un
sistema
distribuito |
2.§4 |
|
14 novembre |
20 |
|||
7 | 17
novembre |
21 |
Lezione:
Processi
e concorrenza in un sistema
distribuito Per approfondire: La specifica stateless del server NFS |
2.§3 |
18 novembre | 22
|
|||
19
novembre |
23 |
Lezione: Denominazione
di entità |
2.§5 |
|
21 novembre |
24 |
|||
8 | 24
novembre |
25 | Lezione: Sincronizzazione
in un
sistema
distribuito Per approfondire: Uso del "distributed snapshot" di Chandy e Lamport |
2.§6.3-5 |
25
novembre (valutazione didattica) |
26 |
Lezione: Il
modello Java RMI Esempio: "Un semplice ripetitore" |
2.§10.3.4 | |
26 novembre |
27 |
Lezione : Il
modello di distribuzione
nativo in Ada Esempio: Crivello di Eratostene in versione distribuita - codice |
PolyORB (doc) PolyORB (lib) |
|
28 novembre |
28 |
|||
9 | 1 dicembre | 29 |
Lezione: Il
modello CORBA |
2.§10
|
2 dicembre |
30 |
|||
3 dicembre |
31 |
Esercizi di programmazione distribuita |
||
5 dicembre |
32 |
Ricapitolazione del corso | ||
|
Esami | Specifica del
progetto didattico |
|
Liste di iscrizione all'esame verranno pubblicate sul sistema SIS nelle due settimane precedenti l'appello corrispondente.
I sessione (orale)
II sessione (orale)