Corsi di Laurea Corsi di Laurea Magistrale Corsi di Laurea Magistrale
a Ciclo Unico
Scuola di Scienze
INFORMATICA
Insegnamento
SISTEMI CONCORRENTI E DISTRIBUITI
SCP6076340, A.A. 2017/18

Informazioni valide per gli studenti immatricolati nell'A.A. 2017/18

Principali informazioni sull'insegnamento
Corso di studio Corso di laurea magistrale in
INFORMATICA
SC1176, ordinamento 2014/15, A.A. 2017/18
N0
porta questa
pagina con te
Crediti formativi 6.0
Tipo di valutazione Voto
Denominazione inglese CONCURRENT AND DISTRIBUTED SYSTEMS
Sito della struttura didattica http://informatica.scienze.unipd.it/2017/laurea_magistrale
Dipartimento di riferimento Dipartimento di Matematica
Obbligo di frequenza No
Lingua di erogazione ITALIANO
Sede PADOVA
Corso singolo È possibile iscriversi all'insegnamento come corso singolo
Corso a libera scelta È possibile utilizzare l'insegnamento come corso a libera scelta

Docenti
Responsabile TULLIO VARDANEGA INF/01

Dettaglio crediti formativi
Tipologia Ambito Disciplinare Settore Scientifico-Disciplinare Crediti
CARATTERIZZANTE Discipline Informatiche INF/01 6.0

Organizzazione dell'insegnamento
Periodo di erogazione Primo semestre
Anno di corso I Anno
Modalità di erogazione frontale

Tipo ore Crediti Ore di
didattica
assistita
Ore Studio
Individuale
LEZIONE 6.0 48 102.0

Calendario
Inizio attività didattiche 02/10/2017
Fine attività didattiche 19/01/2018
Visualizza il calendario delle lezioni Lezioni 2018/19 Ord.2014

Commissioni d'esame
Commissione Dal Al Membri
2 a.a. 2018/2019 01/10/2018 28/02/2020 VARDANEGA TULLIO (Presidente)
CRAFA SILVIA (Membro Effettivo)
BALDAN PAOLO (Supplente)
BUJARI ARMIR (Supplente)
SPERDUTI ALESSANDRO (Supplente)
1 a.a. 2017/2018 01/10/2017 28/02/2019 VARDANEGA TULLIO (Presidente)
BALDAN PAOLO (Membro Effettivo)
BUJARI ARMIR (Membro Effettivo)
CRAFA SILVIA (Membro Effettivo)
SPERDUTI ALESSANDRO (Membro Effettivo)

Syllabus
Prerequisiti: L’insegnamento assume familiarità con l’architettura degli elaboratori tradizionali, con la struttura e le attività dei loro sistemi operativi, particolarmente per quanto attiene a concorrenza, sincronizzazione e gestione dell’I/O, e dei fondamenti delle reti. L’insegnamento non prevede propedeuticità.
Conoscenze e abilita' da acquisire: Il corso si propone di:
- illustrare problematiche e modelli di base e avanzati di concorrenza (intesa come parallelismo potenziale) realizzata a software, illustrando e studiando, dal punto di vista del sistema a run-time, le soluzioni proposte da Java e Ada, in quanto linguaggi riccamente dotati di supporto diretto alla concorrenza, come strumenti di sperimentazione e di confronto;
- analizzare i principi costruttivi e i paradigmi architetturali e realizzativi che stanno alla base dei sistemi distribuiti, nella loro evoluzione da sistemi multiprocessori omogenei a sistemi multicomputer eterogenei, su larga o larghissima scala fino al paradigma del Cloud Computing, anch'essi studiati dal punto di vista del run-time support.
Modalita' di esame: L'esame di profitto consiste nella redazione e nella discussione di una relazione scritta che illustri le problematiche affrontate nello svolgimento di un tema didattico (pratico o teorico) assegnato dal docente, e le soluzioni tecniche adottate per risolverle.
Criteri di valutazione: Il lavoro assegnato dal docente in sede d'esame viene accompagnato da intenso dialogo con il docente stesso, che consente allo studente di approfondire le principali problematiche affrontate a lezione e associate alla realizzazione del progetto. La stesura della relazione tecnica mette alla prova la capacità di sintesi e di astrazione dello studente; le argomentazioni tecniche sostenute nella relazione consentono di completare la valutazione il grado di apprendimento complessivo dello studente rispetto ai principali temi della materia.
Contenuti: Problematiche di concorrenza
- Introduzione storica e metodologica
- Nozione di processo e modalità di sincronizzazione
- Un modello concreto e sue progressive estensioni
- La dimensione temporale
- Cenni sulla virtualizzazione
Problematiche di distribuzione
- Definizioni fondamentali
- Comunicazione e sincronizzazione in distribuito
- Il sistema dei nomi
- Soluzioni concrete: Java RMI, Ada DSA, CORBA
- La frontiera del Cloud Computing
Attivita' di apprendimento previste e metodologie di insegnamento: Il corso si compone di due segmenti complementari. Nel primo segmento si prendono in esame modelli e paradigmi di programmazione concorrente, concentrandosi sulla concorrenza direttamente esprimibile a linguaggio (ossia senza ricorso a librerie esterne), utilizzando Java e Ada come linguaggi di sperimentazione.
Nel secondo segmento si affronta invece l'evoluzione architetturale tecnologica dei sistemi distribuiti, toccando CORBA come paradigma di interconnessione di sistemi eterogenei secondo il modello cliente-servente, per culminare con l'illustrazione di approcci particolarmente avanzati come virtualizzazione e cloud computing. Nell'ambito di entrambi i segmenti del corso, il docente propone allo studente esercizi da realizzare in proprio in laboratorio per sperimentare direttamente le problematiche progettuali e realizzative e i paradigmi di soluzione illustrati a lezione.
Eventuali indicazioni sui materiali di studio: Il docente pubblica regolarmente tutte le diapositive utilizzate a lezione e anche materiale supplementare utile per l'approfondimento dei temi trattati in aula.
Testi di riferimento:
  • Alan Burns and Andy Wellings, Concurrent and Real-Time Programming in Ada. --: Cambridge University Press, 2007. Cerca nel catalogo
  • Andrew S Tanenbaum, Maarten van Steen, Distributed Systems - Principles and paradigms. --: Pearson Education International, 2006. Cerca nel catalogo