Sistemi distribuiti

Da WikiDsy.
Versione del 22 mar 2006 alle 11:35 di IuZ (discussione | contributi) (Lezione di mercoledì 22 marzo 2006)

Informazioni generali

Docenti

Prof. Claudio Bettini
Dott. Sergio Mascetti (per la parte di laboratorio)

Orari delle lezioni

Mer 9.00 - 11.30 in aula Alfa (via Comelico)
(con pausa di circa 20 minuti)

Orario di ricevimento studenti

Mar 17.30 - 19.30
Stanza P121

Sito del corso

Pagina ufficiale del corso.

Materiale didattico

  • 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.

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).

Se si decide di dare l'esame dopo giugno bisognerà sostenere un orale durante il quale si dovrà presentare anche il proprio progetto.

Il testo del progetto 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 5del 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