Obiettivi
Formativi :
Il corso si propone di fornire gli strumenti concettuali
fondamentali per poter programmare ed utilizzare
le più attuali architetture multiprocessore
e/o distribuite. Questri strumenti rientrano nell'ambito
della programmazione concorrente e dei sistemi
operativi distribuiti.
Programma :
Introduzione: Breve richiamo sulle
architetture dei sistemi multiprocessore e dei
sistemi distribuiti.
Programmazione concorrente: Concetto di processo
e di thread – Processi concorrenti –
Comunicazione tra processi in sistemi mono e multi-processore
– Sincronizzazione dei processi in sistemi
mono e multi-processore – Stallo dei processi
in sistemi mono e multi-processore – Comunicazione
tra processi in sistemi ditribuiti – Sincronizzazione
dei processi in sistemi ditribuiti – Stallo
dei processi in sistemi ditribuiti.
Sistemi operativi distribuiti: Sistemi operativi
di rete e Sistemi operativi distribuiti –
File system distribuiti – Memoria condivisa
distribuita – Sistemi fault-tolerant.
Testi di Riferimento :
Tanenbaum, van Steen, “Distributed
Systems: Principles and Paradigms”,
Prentice Hall, 2002.
Silberschatz, Galvin, “Sistemi Operativi”
VI° Ed., Addison-Wesley, 2002.
Modalità di svolgimento
dell’esame :
Progetto più colloquio orale.
Ricevimento Studenti :
Martedi 11.30-13.30 |