|
|
Riga 1: |
Riga 1: |
− | [[Categoria:Corsi]][[Categoria:Corsi Secondo Semestre]][[Categoria:Corsi Magistrale]]
| + | {{introduzione}} |
− | <!-- non cancellare le righe precedenti -->
| |
− | == Informazioni generali ==
| |
| | | |
− | === Docenti === | + | == Turni == |
− | Prof. Claudio Bettini<br>
| |
− | Dott. Sergio Mascetti (per la parte di laboratorio)
| |
| | | |
− | === Orari delle lezioni ===
| + | * '''[[Sistemi distribuiti/2006-2007|Sistemi distribuiti]]''' |
− | Mer 9.00 - 11.30 in aula Alfa (via Comelico)<br>
| |
− | (con pausa di circa 20 minuti)
| |
| | | |
− | === Orario di ricevimento studenti === | + | == A.A. passati == |
− | Mar 17.30 - 19.30<br>
| |
− | Stanza P121
| |
| | | |
− | === Sito del corso === | + | === 2005-2006 === |
− | [http://webdid.usr.dico.unimi.it/sd/ Pagina ufficiale del corso]. | + | * '''[[Sistemi distribuiti/2005-2006|(Bettini, Mascetti), A.A. 2005/06]]''' |
| | | |
− | === Materiale didattico === | + | == Informazioni generali == |
− | * Testo: "'''Distributed Systems: Principles and Paradigms'''" - ''Andrew S. Tanenbaum & Martin Steen Van'' - Prentice Hall, 2002, ISBN 0-13-088893-1
| |
− | | |
− | * I lucidi delle lezioni sono presenti sul sito ufficiale del corso. Per accedere al materiale è necessario avere username e password.
| |
− | | |
− | * [http://www.dsy.it/forum/showthread.php?s=&threadid=24564 Appunti '''non ufficiali''' del corso]
| |
− | | |
− | === Modalità d'esame ===
| |
− | Se si sceglie di sostenere il primo appello (quello a giugno) si potrà lavorare ad un progetto durante le ore di laboratorio che verrà valutato alla fine delle lezioni pratiche. Le lezioni di laboratorio si svolgeranno nei giorni: 5, 12, 19, 26 aprile, 3 e 10 maggio in aula Sigma (via Comelico). Successivamente, a giugno, si sosterrà un esame scritto (test a scelta multipla e domande a risposta aperta). Il voto sarà dato dalla media dei due voti ottenuti nelle due prove (verrà dato pari peso a pratica e teoria - 3 crediti per entrambe).<br>
| |
− | <br>
| |
− | Se si decide di dare l'esame dopo giugno bisognerà sostenere un orale durante il quale si dovrà presentare anche il proprio progetto.<br>
| |
− | | |
− | === Progetto ===
| |
− | Il testo del progetto potete trovarlo a questo [http://webdid.usr.dico.unimi.it/sd/syllabus/files/441336.Progetto.pdf link].
| |
− | | |
− | Il progetto non puo' essere fatto a gruppi e il testo resta valido fino ad aprile 2007.
| |
− | | |
− | == Diario del corso ==
| |
− | | |
− | === Lezione di Mercoledì 8 marzo 2006 ===
| |
− | * Introduzione
| |
− | * Definizione di "Sistema distribuito"
| |
− | * Trasparenza
| |
− | * Scalabilità
| |
− | * Concetti hardware
| |
− | * Concetti software
| |
− | | |
− | === Lezione di Mercoledì 15 marzo 2006 ===
| |
− | * Paragone tra sistemi
| |
− | * Esempio di Client
| |
− | * Esempio di Server
| |
− | * Architetture multitiered
| |
− | * Distribuzione verticale e orizzontale di un Web Server
| |
− | * Modello peer-to-peer
| |
− | * Livelli del modello OSI (breve ripasso)
| |
− | * Servizi di comunicazione middleware
| |
− | * Persistenza, mancanza di persistenza; sincronia, asincronia nella comunicazione
| |
− | * Socket
| |
− | * Remote Procedure Call
| |
− | * Remote Object Invocation
| |
− | | |
− | ''Note dal docente: il 7 giugno ci sarà la prova finale; la prossima lezione sarà molto importante (algoritmi di sincronizzazione)!! ''
| |
− | | |
− | === Lezione di Mercoledì 22 marzo 2006 ===
| |
− | | |
− | * Sincronizzazione (capitolo 5 del Tanenbaum)
| |
− | ** Clock
| |
− | ** Orologi fisici, TAI, UTC
| |
− | ** Cristian's Algorithm
| |
− | ** The Berkley Algoritm
| |
− | ** Orologi Logici
| |
− | ** Algoritmo di Lamport
| |
− | ** Esempi e applicazioni
| |
− | ** Stato Globale di un Sistema Distribuito
| |
− | ** Algoritmo per Distributed Snapshot
| |
− | ** Elezione di un coordinatore
| |
− | ** L'algoritmo di Bully per l'elezione di un coordinatore
| |
− | ** L'algoritmo ad anello (Ring/Token Ring algorithm)
| |
− | ** Mutual Exclusion - Un algoritmo centralizzato
| |
− | | |
− | ''Note dal docente: le prossime 5 lezioni saranno dedicate alla parte di laboratorio; di queste cinque, le prime tre si terranno in aula Alfa, le ultime due in aula Sigma.''
| |
− | | |
− | === Lezione di Mercoledì 29 marzo 2006 ===
| |
− | * Elementi fondamentali delle reti TCP/IP
| |
− | * Il livello di trasporto: TCP e UDP
| |
− | * Programmazione con le socket: cosa sono e come si usano
| |
− | * Esempio e commento del codice per la comunicazione di un client e di un server in TCP usando le socket
| |
− | * Esempio e commento del codice per la comunicazione di un client e di un server in UDP usando le socket (concetto di datagramPacket)
| |
− | | |
− | === Lezione di Mercoledì 05 aprile 2006 ===
| |
− | * Server Concorrenti
| |
− | * Progettare un server concorrente
| |
− | * Thread in Java
| |
− | * Versione Multithread del TCP Server
| |
− | * Sincronizzazione
| |
− | ** Metodi non sincronizzati
| |
− | ** Metodi sincronizzati
| |
− | * Struttura di un server concorrente
| |
− | * Join(), Sleep(), Wait(), Notify()
| |
− | | |
− | === Lezione di Mercoledì 12 aprile 2006 ===
| |
− | | |
− | * RMI
| |
− | * Registry
| |
− | * Stub
| |
− | * Funzionamento RMI
| |
− | * Creazione di un sistema distribuito con RMI
| |
− | ** Definizione interfaccia remota
| |
− | ** Definizione implementazione oggetto remoto
| |
− | ** Definizione della classe che associa una stringa all'oggetto remoto
| |
− | ** Definizione dell'applicazione client
| |
− | ** Compilazione ed esecuzione oggetto remoto e client
| |
− | * Esempi di client-server con RMI
| |
− | * Presentazione del progetto
| |
| | | |
− | === Lezione di Mercoledì 26 aprile 2006 === | + | == Giudizio sul corso == |
| + | {{Giudizio}} |
| + | {{Giudizio/Interesse|}} |
| + | {{Giudizio/Difficoltà|}} |
| + | {{Giudizio/Nonfrequentanti|}} |
| + | {{Giudizio/Ore|}} |
| | | |
− | * Lezione di laboratorio in aula sigma.
| + | [[Categoria:Corsi Secondo Semestre]][[Categoria:Corsi Magistrale]] |