Sistemi operativi avanzati (2009/2010)

Codice insegnamento
4S00067
Docente
Graziano Pravadelli
Coordinatore
Graziano Pravadelli
crediti
6
Altri corsi di studio in cui è offerto
Settore disciplinare
ING-INF/05 - SISTEMI DI ELABORAZIONE DELLE INFORMAZIONI
Lingua di erogazione
Italiano
Periodo
I semestre dal 1-ott-2009 al 31-gen-2010.

Orario lezioni

I semestre
Giorno Ora Tipo Luogo Note
mercoledì 8.30 - 10.30 lezione Aula C  
mercoledì 16.30 - 18.30 lezione Aula C, Gamma  

Obiettivi formativi

Il corso presenta gli aspetti teorici e implementativi avanzati di speciali classi di sistemi operativi, con particolare riguardo a sistemi operativi distribuiti, real-time, ed embedded. L’obiettivo principale del corso è quindi quello di evidenziare le principali differenze tra sistemi operativi convenzionali e non convenzionali nell’ambito della gestione dei processi, della memoria e del file system.

Programma

Teoria:
-------

* Introduzione: classificazione HW/SW, architettura dei sistemi operativi non convenzionali.
* Introduzione ai sistemi operativi distribuiti: obiettivi e problematiche.
* Comunicazione nei sistemi operativi distribuiti: modello client-server, chiamata a procedura remota, comunicazione di gruppo.
* Sincronizzazione nei sistemi operativi distribuiti: sincronizzazione dei clock logici e fisici, identificazione dello stato globale, mutua esclusione distribuita, transazioni atomiche, gestione dei deadlock, algoritmi di elezione.
* Gestione dei processi nei sistemi operativi distribuiti: allocazione e migrazione dei processi, algoritmi di scheduling.
* Memoria condivisa distribuita: definizione e implementazione, meccanismi di consistenza.
* File system distribuiti: modello di accesso, semantica della condivisione, implementazione, migrazione e replicazione dei dati, meccanismi di consistenza.
* Introduzione ai sistemi operativi real-time: definizione, problematiche e vincoli in ambiente real-time.
* Scheduling nei sistemi operativi real-time: scheduling per task periodici, aperiodici e misti.


Laboratorio:
------------
* Sistemi operativi distribuiti: Introduzione a Openmosix e Beowulf.
* Sistemi operativi embedded: Introduzione al sistema operativo eCos.
* La comunicazione nei sistemi embedded: Introduzione al protocollo di comunicazione ZigBee.
* Terminali mobili: Introduzione agli ambienti di sviluppo.

Modalità d'esame

L'esame consiste in una prova scritta contenente domande ed esercizi di teoria e laboratorio. La prova è superata con un voto maggiore o uguale a 18/30 e permette di ottenere un voto massimo pari a 30/30.

E' possibile, ma non obbligatorio, realizzare un progetto pratico (a gruppi di 2/3 persone) che può consistere in:
- implementazione/modifica di una o più funzionalità di un sistema operativo real-time
- implementazione di una applicazione per cluster di computer
- analisi, valutazione e presentazione di nuove tecnologie nell'ambito di sistemi operativi distribuiti o real-time.
Il progetto permette di ottenere al massimo 4/30 punti da sommare al voto dello scritto.

Materiale didattico

Documenti

Statistiche per i requisiti di trasparenza (Attuazione Art. 2 del D.M. 31/10/2007, n. 544)

Statistiche esiti
Esiti Esami Esiti Percentuali Media voti Deviazione Standard
Positivi 100.0% 20 2
Respinti --
Assenti --
Ritirati --
Annullati --
Distribuzione degli esiti positivi
18 19 20 21 22 23 24 25 26 27 28 29 30 30 e Lode
50.0% 0.0% 0.0% 0.0% 50.0% 0.0% 0.0% 0.0% 0.0% 0.0% 0.0% 0.0% 0.0% 0.0%

Valori relativi all'AA 2009/2010 calcolati su un totale di 2 iscritti. I valori in percentuale sono arrotondati al numero intero più vicino.