logo Uniroma2
logo CE
logo Ingegneria Tor Vergata
Home
People
Research
Publications
Conferences & Seminars
Teaching (in Italian)

Sistemi Distribuiti

Anno Accademico: 2010/2011 - Docente: Valeria Cardellini

Corso da 9 CFU del primo anno della Laurea Magistrale in Ingegneria Informatica

Informazioni Generali

Risultati dell'apprendimento

Metodologie, principi e paradigmi per la realizzazione e gestione di sistemi software distribuiti, con particolare enfasi sui sistemi Web.

Propedeuticità

Il corso presuppone una conoscenza dei protocolli di rete, della programmazione di applicazioni di rete, delle modalità di organizzazione
e gestione di basi di dati, dell'architettura di base e dei protocolli del Web.

Orario delle lezioni

Orario valido dal 27/9/2010 al 29/1/2011 (primo semestre)
  • Lunedì dalle 9:30 alle 11:15, aula 1 edificio didattica
  • Mercoledì dalle 9:30 alle 11:15, aula 1 edificio didattica
  • Venerdì dalle 14:00 alle 15:45, aula 7 edificio didattica

Docente

Valeria Cardellini
Tel.: 067259 7388
E-mail: img (è necessario specificare [SD] nell'oggetto della mail)
Orario di ricevimento:
  • lunedì e mercoledì in aula al termine della lezione;
  • giovedì dalle 11:00 alle 13:00, stanza D1-17, corpo D dell'edificio "Ingegneria dell'Informazione", primo piano.


Avvisi

  • new 25 settembre 2011 - Disponibili i risultati del secondo appello di settembre (vedi Appelli).
  • 5 agosto 2011 - Fissate le date degli appelli di settembre (vedi Appelli).
  • 9 maggio 2011 - Fissata la data dell'appello di luglio (vedi Appelli).
  • 9 marzo 2011 - Disponibili i risultati ed il testo del secondo appello (vedi Appelli). Il calendario delle prove orali (modalità di esame C) verrà comunicato via email agli interessati.
  • 15 febbraio 2011 - Disponibili i risultati ed il testo del primo appello (vedi Appelli).
  • 3 febbraio 2011 - Disponibili i risultati ed il testo della seconda prova intermedia (vedi Appelli).
  • 26 gennaio 2011 - Di seguito un elenco di opportunità di intership o di programmi internazionali a cui poter partecipare:
    - Erasmus 2011/12 per la facoltà di Ingegneria (scadenza: 24 febbraio)
    - Summer@EPFL (scadenza: 14 febbraio)
    - EMEA Google Anita Borg Memorial Scholarship only for female students (scadenza: 1 febbraio)
    - CERN Technical Student Programme (scadenza: 7 marzo per domanda, 11 marzo per documentazione)
    - CERN Summer Student Programme (scadenza: 26 gennaio per domanda, 31 gennaio per documentazione)
    - Google Summer of Code 2011 (scadenza: 8 aprile)
  • 12 gennaio 2011 - Segnalo che lunedì 24 gennaio ore 16, in aula 1, l'ing. Enrico Mercadante, Cisco Systems, terrà un seminario sul tema "Networking e Cloud Computing" nell'ambito del corso di "Reti di Accesso e di Trasporto".
  • 12 gennaio 2011 - Modificati ed aggiunti i lucidi da 72 in poi in SistemiWeb.pdf.
  • 11 gennaio 2011 - Fissate le date della seconda prova intermedia e degli appelli di febbraio (vedi Appelli).
  • 4 gennaio 2011 - Lunedì 17 gennaio dalle 9:00 alle 11:20 in aula 1 si terrà il seminario "Cloud Computing: Windows Azure" a cura di Antimo Musone (Microsoft Student Partner) (locandina).
    Per registrarsi al seminario, seguire il link.
  • 4 gennaio 2011 - Disponibili le tracce dei progetti presentati durante la lezione del 22 dicembre (vedi Progetto).
  • 29 dicembre 2010 - Disponibili i risultati ed il testo della prima prova intermedia (vedi Appelli).
  • 23 novembre 2010 - Aggiunti i lucidi 38 e 39, modificati i lucidi 31, 32, 40, 47, 48 e 49 in SincronizzazioneSD_1.pdf.
    Aggiunti i lucidi 58 e da 44 a 49, modificati i lucidi 24, 26, 41, e 50 in SincronizzazioneSD_2.pdf.
  • 19 novembre 2010 - Disponibili alcune tracce degli esami passati (vedi Esami passati).
  • 18 novembre 2010 - Aggiunti i lucidi 44, 45 e 46 in SincronizzazioneSD_1.pdf.
  • 12 novembre 2010 - Per la prenotazione alla prima prova intermedia vedere Appelli.
  • 12 novembre 2010 - Disponibili le soluzioni degli esercizi sui thread POSIX (vedi Esempi thread POSIX).
  • 7 novembre 2010 - Corretto il lucido 47 in ComunicazioneSD_2.pdf.
  • 5 novembre 2010 - Aggiunti i lucidi da 20 in poi in ComunicazioneSD_2.pdf.
  • 29 ottobre 2010 - Disponibile l'esempio di programmazione con Java RMI (vedi Esempi Java RMI).
  • 28 ottobre 2010 - La prima prova intermedia si terrà mercoledì 1 dicembre 2010 alle ore 9:30 in aula 1, edificio Didattica.
  • 28 ottobre 2010 - Indice TIOBE sulla popolarità dei linguaggi di programmazione.
  • 28 ottobre 2010 - Disponibili gli esempi di programmazione con RPC (vedi Esempi RPC).
  • 19 ottobre 2010 - Aggiunti i lucidi da 33 in poi in Pthread.pdf.
  • 17 ottobre 2010 - Disponibili gli esempi di programmazione sui thread POSIX (vedi Esempi thread POSIX).
  • 12 ottobre 2010 - Aggiunti i lucidi 25 e 26 e modificato il lucido 24 in ProcessiSD.pdf.
  • 8 ottobre 2010 - Aggiunto il lucido 49 e modificato il lucido 48 in ArchitettureSD.pdf.
  • 27 settembre 2010 - I lucidi sulla protesta contro la riforma Gelmini presentati a lezione sono disponibili all'URL http://personalpages.to.infn.it/~ferretti/slide_riviste.ppt

Materiale Didattico

Testi consigliati

- Andrew S. Tanenbaum, Maarten van Steen, "Distributed Systems: Principles and Paradigms - 2nd Edition", Pearson-Prentice Hall, 2007. ISBN: 9780132392273.
Edizione italiana: "Sistemi Distribuiti - Seconda Edizione", Pearson-Prentice Hall, 2007. ISBN: 9788871923666.
- George Coulouris, Jean Dollimore, Tim Kindberg, "Distributed Systems - Concepts and Design, 4th Edition", Addison-Wesley/Pearson Education, 2005. ISBN: 0321263545.

Calendario e lucidi delle lezioni

Il materiale elettronico è in formato pdf.
Per la visualizzazione e la stampa utilizzare Acrobat Reader (scaricabile gratuitamente dal sito di Adobe).

 
Giorno Argomento Lucidi Ultima modifica
27/9/2010 Organizzazione del corso
Introduzione ai SD
Organizzazione.pdf
IntroSD.pdf
28/9/2010
28/9/2010
29/9/2010 Introduzione ai SD vedi lezione precedente
1/10/2010 Architetture dei SD ArchitettureSD.pdf 8/10/2010
4/10/2010 Architetture dei SD vedi lezione precedente
6/10/2010 Architetture dei SD vedi lezione dell'1/10
8/10/2010 Architetture dei SD
Processi nei SD
vedi lezione dell'1/10
ProcessiSD.pdf

12/10/2010
11/10/2010 Processi nei SD vedi lezione precedente
13/10/2010 Processi nei SD
Thread POSIX: introduzione
vedi lezione precedente
Pthread.pdf

19/10/2010
15/10/2010 Thread POSIX: gestione dei thread vedi lezione precedente
18/10/2010 Thread POSIX: meccanismi di sincronizzazione vedi lezione del 13/10
20/10/2010 Thread POSIX: meccanismi di sincronizzazione ed esempi di server TCP vedi lezione del 13/10
22/10/2010 Comunicazione nei SD: introduzione ComunicazioneSD_1.pdf 25/10/2010
25/10/2010 Comunicazione nei SD: RPC vedi lezione precedente
27/10/2010 Comunicazione nei SD: RPC vedi lezione del 22/10
29/10/2010 Comunicazione nei SD: RMI ComunicazioneSD_2.pdf 7/11/2010
3/11/2010 Comunicazione nei SD: MOM e comunicazione orientata agli stream vedi lezione precedente
5/11/2010 Comunicazione nei SD: multicast e gossiping vedi lezione del 29/10
8/11/2010 Naming nei SD: introduzione e definizioni, naming semplice NamingSD.pdf 9/11/2010
10/11/2010 Naming nei SD: naming strutturato e basato su attributi vedi lezione precedente
12/11/2010 Sincronizzazione nei SD: introduzione, definizioni, clock fisico SincronizzazioneSD_1.pdf 23/11/2010
15/11/2010 Sincronizzazione nei SD: sincronizzazione fisica e introduzione al clock logico vedi lezione precedente
17/11/2010 Sincronizzazione nei SD: clock logico;
mutua esclusione nei sistemi concorrenti
vedi lezione del 12/11
SincronizzazioneSD_2.pdf

23/11/2010
19/11/2010 Sincronizzazione nei SD: mutua esclusione nei SD vedi lezione precedente
22/11/2010 Sincronizzazione nei SD: mutua esclusione nei SD vedi lezione del 17/11
24/11/2010 Sincronizzazione nei SD: algoritmi di elezione vedi lezione del 17/11
26/11/2010 Consistenza nei SD: introduzione, consistenza stretta e sequenziale ConsistenzaSD.pdf 4/12/2010
29/11/2010 Consistenza nei SD: consistenza da causale a release vedi lezione precedente
1/12/2010 Consistenza nei SD: teorema CAP, consistenza finale, consistenza client-centrica vedi lezione del 26/11
3/12/2010 Consistenza nei SD: protocolli di consistenza e protocolli di distribuzione vedi lezione del 26/11

6/12/2010 Introduzione a SOA e Web service (docente: Stefano Iannucci) SOA_WebService.pdf
11/12/2010
10/12/2010 Introduzione a REST ed ESB (docente: Stefano Iannucci) rest_esb.pdf
13/12/2010 Introduzione BPEL; esercitazione su OpenESB (docente: Stefano Iannucci) bpel.pdf

15/12/2010 Tolleranza ai guasti nei SD: dependability, definizioni, ridondanza TolleranzaSD.pdf 17/12/2010
17/12/2010 Tolleranza ai guasti nei SD: consenso bizantino e comunicazione affidabile vedi lezione precedente

20/12/2010 Tolleranza ai guasti nei SD: multicast atomico, commit distribuite, ripristino vedi lezione del 15/12
22/12/2010 Sistemi Web distribuiti: Web cluster
Presentazione dei progetti
SistemiWeb.pdf
.
12/1/2011
.
10/1/2011 Sistemi Web distribuiti: Web cluster, Web multi-cluster vedi lezione precedente
12/1/2011 Sistemi Web distribuiti: Web multi-cluster, piattaforma di Google vedi lezione del 22/12
14/1/2011 Cloud computing: introduzione Cloud.pdf 15/1/2011
17/1/2011 Seminario "Cloud Computing: Windows Azure" (speaker: Antimo Musone) Academic Tour 2010 - Roma.pptx 17/1/2011
19/1/2011 Cloud computing: soluzioni esistenti vedi lezione del 14/1
21/1/2011 Discussione dei progetti: Dynamo e GFS ProgettiSD1011.pdf 24/1/2011
24/1/2011 Discussione dei progetti: Chubby
Sistemi Web geografici per network caching e delivery
vedi lezione precedente
CachingCDN.pdf

27/1/2011
26/1/2011 Sistemi Web geografici per network caching e delivery vedi lezione precedente
28/1/2011 Sistemi P2P P2P.pdf 28/1/2011

Articoli

I seguenti lavori approfondiscono alcuni argomenti trattati a lezione.

Architetture dei SD

- P.T. Eugster, P.A. Felber, R. Guerraoui, A.-M. Kermarrec, "The many faces of publish/subscribe", ACM Computing Surveys, Vol. 35, No. 2, pp. 114-131, June 2003. (pdf)
- J.O. Kephart, D.M. Chess, "The vision of Autonomic Computing", IEEE Computer, Vol. 36, No. 1, Jan. 2003. (pdf)
- P.K. McKinley, S.M. Sadjadi, E.P. Kasten, B.H.C. Cheng, "Composing adaptive software", IEEE Computer, Vol. 37, No. 7, pp. 56-64, July 2004. (pdf)

Processi nei SD

- M. Boari, M. Balboni, "Tecniche di virtualizzazione: teoria e pratica", Mondo Digitale, Marzo 2007. (pdf)
- L. Peterson, T. Roscoe, "The design principles of PlanetLab", Operating Systems Review, Vol. 40, No. 1, pp. 11-16, Jan. 2006. (pdf)
- M. Rosenblum, T. Garfinkel, "Virtual machine monitors: current technology and future trends", IEEE Computer, pp. 39-47, May 2005. (pdf)
- J.E. Smith, R. Nair, "The architecture of virtual machines", IEEE Computer, pp. 32-38, May 2005. (pdf)

Comunicazione nei SD

- M. Castro, P. Druschel, A-M. Kermarrec, A. Rowstron, "SCRIBE: A large-scale and decentralised application-level multicast infrastructure", IEEE Journal on Selected Areas in Communications, Oct. 2002. (pdf)
- P. Th. Eugster, R. Guerraoui, A.-M. Kermarrec, L. Massoulie, "From epidemics to distributed computing", IEEE Computer, Vol. 37, No. 5, pp. 60-67, May 2004. (pdf)
- A.-M. Kermarrec, M. van Steen, "Gossiping in distributed systems", ACM Operating System Review, Vol. 41, No. 5, Oct. 2007. (pdf)
- D. A. Menascé, "MOM vs. RPC: Communication models for distributed applications", IEEE Internet Computing, Vol. 9, No. 2, pp. 90-93, 2005. (pdf)
- E. Petron, "Remote Procedure Calls", Linux Journal, Oct. 1997. (html)
- Trail: RMI (The Java tutorials) (html)

Sincronizzazione nei SD

- E.W. Dijkstra, "Solution of a problem in concurrent programming control", ACM Communications, Vol. 8, No. 9, pp. 569, 1965. (pdf)
- L. Lamport, "Time, clocks and the ordering of events in a distributed system", ACM Communications, Vol. 21, No. 7, pp. 558-565, July 1978. (pdf)
- M. Raynal, M. Singhal, "Logical time: Capturing causality in distributed systems", IEEE Computer, Feb. 1996. (pdf)

Consistenza e replicazione nei SD

- D.B. Terry, A.J. Demers, K. Petersen, M.J. Spreitzer, M.M Theimer, B.B. Welch, "Session guarantees for weakly consistent replicated data", Proc. of the 3rd Int'l Conference on Parallel and Distributed information Systems, pp. 140-150, 1994. (pdf)
- H. Yu, A. Vahdat, "Design and evaluation of a conit-based continuous consistency model for replicated services", ACM Trans. Comp. Syst., 2002. (pdf)
- W. Vogels, "Eventually Consistent - Revisited", Dec. 2008. (html)

Tolleranza ai guasti nei SD

- A. Avizienis, J.-C. Laprie, B. Randell, C. Landwehr, "Basic concepts and taxonomy of dependable and secure computing", IEEE Trans. on Dependable and Secure Computing, 2004. (pdf)

SOA e Web service

- B. Pernici, P. Plebani, "Introduzione ragionata al mondo dei Web Service", Mondo Digitale, Marzo 2004. (pdf)

Sistemi Web distribuiti

- L.A. Barroso, J. Dean, U. Hoelzle, "Web search for a planet: The Google cluster architecture", IEEE Micro, March 2003. (pdf)
- V. Cardellini, E. Casalicchio, M. Colajanni, P.S. Yu, "The state of the art in locally distributed Web-server systems", ACM Computing Surveys, Vol. 34, No. 2, pp. 263-311, June 2002. (pdf)
- S. Sivasubramanian, M. Szymaniak, G. Pierre, M. van Steen, "Replication for Web hosting systems", ACM Computing Surveys, Vol. 36, No. 3, Sept. 2004. (pdf)

Cloud Computing

- Michael Armbrust et al., "Above the Clouds: A Berkeley View of Cloud Computing", EECS-2009-28, 2009. (pdf)
- R. Buyya, C.S. Yeo, S. Venugopal, J. Broberg, I. Brandic, "Cloud Computing and Emerging IT Platforms: Vision, Hype, and Reality for Delivering Computing as the 5th Utility", Future Generation Computer Systems, Vol. 25, No. 6, pp. 599-616, June 2009. (pdf)
- S. Upson, "Cloud Computing: It's Always Sunny in the Cloud", IEEE Spectrum, Jan. 2011. (html)

Sistemi Web geografici per network caching e delivery

- A. Iyengar, E. Nahum, A. Shaikh, R. Tewari, "Web caching, consistency and content distribution", Book chapter in The Practical Handbook of Internet Computing, Chapman & Hall/CRC Press, 2005. (pdf)
- M. Pathan, R. Buyya, "A taxonomy of CDNs", Book chapter in Content Delivery Networks, R. Buyya, M. Pathan, and A. Vakali (Eds.), ISBN: 978-3-540-77886-8, Springer-Verlag, 2008. (pdf)

Sistemi P2P

- S. Androutsellis-Theotokis, D. Spinellis, "A survey of peer-to-peer content distribution technologies", ACM Computing Surveys, Vol. 36, No. 4, pp. 335-371, Dec. 2004. (pdf)
- E.K. Lua, J. Crowcroft, M. Pias, R. Sharma, S. Lim, "A survey and comparison of peer-to-peer overlay network schemes", IEEE Communications Surveys and Tutorials, Vol. 7, No. 2, pp. 22-37, Apr. 2005. (pdf)

Esempi thread POSIX

Argomento Codice Ultima modifica
Gestione dei pthread pthread_management.zip 17/10/2010
Sincronizzazione dei pthread pthread_synchro.zip 20/10/2010
Server TCP multithreaded pthread_TCPserver.zip 20/10/2010
Soluzioni agli esercizi proposte dagli studenti Alessandro Loffredo e Fabrizio Nuccilli pthread_esercizi.zip 12/11/2010

Esempi SUN RPC

Argomento Codice Ultima modifica
Square
(tratto da Stevens, "Network Programming Vol. 2")
square.zip 25/10/2010
Echo
echo.zip 28/10/2010
Average
(tratto da E. Petron, "Remote Procedure Calls")
avg.zip
28/10/2010
Remote directory listing
(tratto da "ONC+ Developer’s Guide")
rls.zip 29/10/2010

Esempi Java RMI

Argomento Codice Ultima modifica
Echo
echo_rmi.zip 29/10/2010


Programma provvisorio

Introduzione ai sistemi distribuiti
Architetture per sistemi distribuiti
Processi e thread nei sistemi distribuiti
Programmazione multithreaded con thread POSIX
Comunicazione nei sistemi distribuiti
Meccanismi di naming
Sincronizzazione
Consistenza e replicazione
Tolleranza ai guasti
Sistemi Web distribuiti
Sistemi Web geografici per network caching e delivery
Sistemi peer-to-peer
Architetture orientate ai servizi e Web service
Sistemi autonomici (cenni)
Cloud computing e cenni su Grid computing
Architetture parallele: multithreading, multicore, classificazione delle architetture parallele, multiprocessori.


Esami

Modalità di esame

Sono previste 4 modalità di esame:

  • A per l'esame da 9 CFU,
  • B per l'esame da 10 CFU,
  • C e D per l'esame da 5 CFU.
Gli studenti immatricolati al primo anno nell'A.A. 2010/11 rientrano nella modalità di esame A.

Esame da 9 CFU (modalità A)
E' rivolto agli studenti immatricolati al primo anno della Laurea Magistrale nell'A.A. 2010/11.
  • Progetto e relativa discussione;
  • prova scritta sugli argomenti dell'intero corso (programma A.A. 2010/11);
  • prova orale facoltativa sugli argomenti dell'intero corso (programma A.A. 2010/11).
In alternativa alla prova scritta, si terranno due prove scritte intermedie.
Se entrambe le prove intermedie saranno superate positivamente, verrà proposto un voto finale per la prova scritta. Non sarà possibile recuperare le prove intermedie in modo parziale.
Ad esclusione degli appelli della sessione di luglio (che sono esclusivi), non ci sono vincoli sulla partecipazione alle prove (eccetto la prenotazione obbligatoria per le prove scritte).
Tuttavia, la partecipazione ad una prova scritta comporta la rinuncia automatica ad un voto sufficiente conseguito in una prova scritta precedente.
E' possibile sostenere la prova orale facoltativa in un appello diverso da quello in cui si è sostenuto la prova scritta, purchè nella stessa sessione.
E' possibile sostenere la prova scritta e l'eventuale prova orale in una stessa sessione e posticipare la discussione del progetto ad un'altra sessione.

Esame da 10 CFU (modalità B)
E' rivolto agli studenti immatricolati al primo anno della Laurea Magistrale nell'A.A. 2009/10 o precedenti.

  • Progetto e relativa discussione;
  • prova scritta sugli argomenti dell'intero corso (programma A.A. 2009/10);
  • prova orale facoltativa sugli argomenti dell'intero corso (programma A.A. 2009/10).
In alternativa alla prova scritta, si terranno due prove scritte intermedie.
Se entrambe le prove intermedie saranno superate positivamente, verrà proposto un voto finale per la prova scritta. Non sarà possibile recuperare le prove intermedie in modo parziale.
Ad esclusione degli appelli della sessione di luglio (che sono esclusivi), non ci sono vincoli sulla partecipazione alle prove (eccetto la prenotazione obbligatoria per le prove scritte).
Tuttavia, la partecipazione ad una prova scritta comporta la rinuncia automatica ad un voto sufficiente conseguito in una prova scritta precedente.
E' possibile sostenere la prova orale facoltativa in un appello diverso da quello in cui si è sostenuto la prova scritta, purchè nella stessa sessione.
E' possibile sostenere la prova scritta e l'eventuale prova orale in una stessa sessione e posticipare la discussione del progetto ad un'altra sessione.

Esame da 5 CFU (modalità C)
Corrisponde a Sistemi Distribuiti parte 2 ed è destinato agli studenti che hanno optato per il passaggio dall'ordinamento 509/99 all'ordinamento 270/04 ed hanno già sostenuto Sistemi Distribuiti parte 1.

  • Prova scritta sugli argomenti della seconda parte del corso (programma A.A. 08/09);
  • prova orale sugli argomenti della seconda parte del corso (programma A.A. 08/09).
Ad esclusione degli appelli della sessione di luglio (che sono esclusivi), non ci sono vincoli sulla partecipazione alle prove (eccetto la prenotazione obbligatoria per le prove scritte).
Tuttavia, la partecipazione ad una prova scritta comporta la rinuncia automatica ad un voto sufficiente conseguito in una prova scritta precedente.
E' possibile sostenere la prova orale in un appello diverso da quello in cui si è sostenuto la prova scritta, purchè nella stessa sessione.

Esame da 5 CFU (modalità D)
Corrisponde a Sistemi Distribuiti parte 1 (Ingegneria del Web nell'ordinamento 509/99) ed è destinato agli studenti che sono rimasti nell'ordinamento 509/99.

  • Progetto e relativa discussione;
  • prova orale sugli argomenti della prima parte del corso (programma A.A. 08/09).
E' possibile sostenere la prova orale e la discussione del progetto in sessioni diverse.

Progetto

Per poter sostenere nell'A.A. 2010/11 l'esame di Sistemi Distribuiti (modalità A o B) entro il 28/1/2011 (vedi oltre per studenti immatricolati dopo gennaio 2011) devono essere comunicate via e-mail al docente le seguenti informazioni:
- nominativi ed indirizzi di e-mail dei componenti del gruppo;
- progetto scelto.
Gli studenti immatricolati al primo anno della laurea magistrale dopo gennaio 2010 e che non hanno scelto il progetto entro la data sopra indicata possono contattare il docente per la scelta.
Nel caso in cui il numero di prenotazioni per il progetto scelto abbia raggiunto la soglia massima prevista, sarà necessario effettuare una nuova scelta tra i progetti ancora disponibili.
Eventuali modifiche relative al gruppo devono essere tempestivamente comunicate al docente e concordate con il docente.
Il progetto è valido solo per l'A.A. 2010/11: i progetti scadranno inderogabilmente con la sessione d'esame di settembre 2011.

La consegna del progetto deve avvenire almeno dieci giorni prima della data stabilita per l'appello di Sistemi Distribuiti in cui si intende sostenere la discussione del progetto e la prova orale (se non già superata).
Ciascuno studente esporrà una presentazione individuale tramite lucidi di una parte del progetto (max 10 minuti per studente).
E' fortemente consigliato che tutti i componenti del gruppo sostengano la presentazione del progetto nella stessa data.
Per dettagli sui progetti, vedere ProgettiSD1011.pdf

Progetto 1: Sistema di storage distribuito basato su chiave-valore tipo Dynamo
3 componenti per gruppo (fino ad un massimo di 4);
massimo 20 prenotazioni;
riferimenti bibliografici:
- G. DeCandia, D. Hastorun, M. Jampani, G. Kakulapati, A. Lakshman, A. Pilchin, S. Sivasubramanian, P. Vosshall, W. Vogels, "Dynamo: Amazon's highly available key-value store", Proc. of the 21 ACM SIGOPS Symposium on Operating Systems Principles (SOSP '07), pp. 205-220, 2007. (pdf)

Progetto 2: File system distribuito tipo Google File System
3 componenti per gruppo (fino ad un massimo di 4)
massimo 20 prenotazioni;
riferimenti bibliografici:
- S. Ghemawat, H. Gobioff, S.-T. Leung, "The Google File System", Proc. of the 19th ACM SIGOPS Symposium on Operating Systems Principles (SOSP '03), 2003. (html)

Progetto 3: Servizio di locking distribuito tipo Chubby
2 componenti per gruppo;
massimo 20 prenotazioni;
riferimenti bibliografici:
- M. Burrows, "The Chubby Lock Service for Loosely-Coupled Distributed Systems", Proc. of the 7th Symposium on Operating System Design and Implementation (OSDI '06), 2006. (html)
- L. Lamport, "Paxos Made Simple", ACM SIGACT News (Distributed Computing Column), Vol. 32, No. 4, Dec. 2001. (pdf)

Esami passati

Appelli

[I prova intermedia] Mercoledì 1 dicembre 2010, ore 9:30 aula 1 edificio Didattica.
Per la prenotazione, inviarmi una e-mail entro domenica 28 novembre, indicando nel subject [SD prenotazione intermedia 1] e nel testo cognome, nome e numero di matricola.
Testo

[II prova intermedia] Lunedì 31 gennaio 2011, ore 9:30 aula 9 edificio Didattica.
Non occorre prenotazione: sono ammessi tutti coloro i quali hanno conseguito una votazione maggiore o uguale a 16 nella prima prova.
Testo

[I appello sessione di febbraio] Prova scritta: martedì 8 febbraio 2011, ore 9:30 Aula 6 edificio Didattica.
Per la prenotazione, inviarmi una e-mail entro giovedì 3 febbraio, indicando nel subject [SD prenotazione scritto 8 febbraio] e nel testo cognome, nome e numero di matricola. Nel caso di esame da 10 CFU, specificare anche quale programma del corso (A.A. 2009/10 oppure 2010/11).
Testo prova scritta (modalità di esame A)

[II appello sessione di febbraio] Prova scritta: giovedì 24 febbraio 2011, ore 9:30 Aula 5 (Disegno) edificio Didattica.
Per la prenotazione, inviarmi una e-mail entro lunedì 21 febbraio, indicando nel subject [SD prenotazione scritto 24 febbraio] e nel testo cognome, nome e numero di matricola. Nel caso di esame da 10 CFU, specificare anche quale programma del corso (A.A. 2009/10 oppure 2010/11).
Testo prova scritta (modalità di esame A)

[Appello sessione di luglio] Prova scritta: martedì 12 luglio 2011, ore 9:30 Aula 7 edificio Didattica.
Per la prenotazione, inviarmi una e-mail entro venerdì 8 luglio, indicando nel subject [SD prenotazione scritto 12 luglio] e nel testo cognome, nome e numero di matricola. Nel caso di esame da 10 CFU, specificare anche quale programma del corso (A.A. 2009/10 oppure 2010/11).

[I appello sessione di settembre] Prova scritta: lunedì 5 settembre 2011, ore 15:00 Aula 12 edificio Didattica.
Per la prenotazione, inviarmi una e-mail entro giovedì 1 settembre, indicando nel subject [SD prenotazione scritto 5 settembre] e nel testo cognome, nome, numero di matricola e numero di crediti (5, 9 o 10 CFU). Nel caso di esame da 10 CFU, specificare anche quale programma del corso (A.A. 2009/10 oppure 2010/11).
Consegna del progetto: entro venerdì 2 settembre occorre consegnarmi la copia cartacea della relazione ed il CD.

[II appello sessione di settembre] Prova scritta: martedì 20 settembre 2011, ore 9:30 Aula 11 edificio Didattica.
Per la prenotazione, inviarmi una e-mail entro venerdì 16 settembre, indicando nel subject [SD prenotazione scritto 20 settembre] e nel testo cognome, nome, numero di matricola e numero di crediti (5, 9 o 10 CFU). Nel caso di esame da 10 CFU, specificare anche quale programma del corso (A.A. 2009/10 oppure 2010/11).
Consegna del progetto: entro lunedì 19 settembre occorre consegnarmi la copia cartacea della relazione ed il CD.

 
Ultimo aggiornamento: 25 settembre 2011.

Home
People
Research
Publications
Conferences & Seminars
Teaching (in Italian)