Sistemi operativi avanzati (2007/2008)

Corso a esaurimento

Codice insegnamento
4S00067
Crediti
5
Coordinatore
Graziano Pravadelli
L'insegnamento è organizzato come segue:
Modulo Crediti Settore disciplinare Periodo Docenti
Teoria 4 ING-INF/05-SISTEMI DI ELABORAZIONE DELLE INFORMAZIONI 2° Q Graziano Pravadelli
Laboratorio 1 ING-INF/05-SISTEMI DI ELABORAZIONE DELLE INFORMAZIONI 2° Q Graziano Pravadelli

Obiettivi formativi

Modulo: Teoria
-------
Il corso presenta gli aspetti teorici e implementativi avanzati di speciali classi di sistemi operativi, con particolare riguardo a sistemi operativi distribuiti e sistemi operativi real-time. Tali aspetti verranno approfonditi con esercitazioni pratiche di laboratorio.
Il corso viene svolto in 44 ore tra lezioni (32 ore) ed esercitazioni in laboratorio (12 ore), distribuite in un unico periodo didattico.
Il materiale didattico verrà distribuito dal docente sotto forma di dispense e articoli.


Modulo: Laboratorio
-------
Il corso è costituito da 12 ore di esercitazioni pratiche in laboratorio riguardanti problematiche legate alla programmazione su cluster e su sistemi operativi embedded.

Programma

Modulo: Teoria
-------
* Introduzione:
- Classi di sistemi operativi non convenzionali
° sistemi operativi distribuiti
° sistemi operativi multiprocessore
° sistemi real-time
° sistemi operativi embedded
- Strutture di sistemi operativi non convenzionali
° microkernel
° exokernel
° cluster
- Esempi di sistemi operativi dei vari tipi

* Sistemi Operativi Distribuiti:
- Problematiche
- Architetture HW e SW
- Metriche di progetto (trasparenza, flessibilità, affidabilità, scalabilità)
- La comunicazione nei sistemi distribuiti
° protocolli
° modello client-server

* La sincronizzazione nei sistemi distribuiti:
- Sincronizzazione dei clock
- Mutua esclusione e transazioni atomiche
- Deadlock

* Gestione dei processi nei sistemi distribuiti:
- Allocazione dei processi
- Migrazione dei processi
- Scheduling dei processi

* File system distribuiti:
- Problematiche ed implementazione
- Naming e caching
- Caso di studio: NFS

* Memoria Condivisa Distribuita:
- Modello concettuale
- Implementazioni
- Problema della consistenza e relativi modelli

*Sistemi operativi real-time
- Problematiche e vincoli
° determinismo
° reattività
° affidabilità
- Esempi di sistemi real-time

* Scheduling nei sistemi operativi real-time:
- Concetto di clock, deadline, e timeout
- Scheduling a priorità
- Deadline scheduling
- Scheduling di task aperiodi e periodici


Modulo: Laboratorio
-------
* Esercitazioni di laboratorio:
- Programmazione distribuita su cluster
- Implementazione di alcune funzionalità su un sistema operativo embedded open source

Modalità d'esame

Modulo: Teoria
-------
L'esame consiste in una prova scritta (orale) per la parte di teoria e nella realizzazione di
un progetto per la parte di laboratorio.
La prova scritta contiene domande teoriche ed esercizi. La prova è superata con un voto maggiore o uguale a 18/30 e permette di ottenere un voto massimo pari a 30/30. L'orale è facoltativo.
Per la parte di laboratorio è richiesta la realizzare di 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 di laboratorio permette di ottenere al massimo 4/30 punti da sommare al voto della prova di teoria.


Modulo: Laboratorio
-------
L'esame nella realizzazione di un progetto per la parte di laboratorio.
Il progetto di laboratorio permette di ottenere al massimo 4/30 punti da sommare al voto della prova di teoria.

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 52.85% 27 4
Respinti 7.14%
Assenti 34.28%
Ritirati 5.71%
Annullati --
Distribuzione degli esiti positivi
18 19 20 21 22 23 24 25 26 27 28 29 30 30 e Lode
8.1% 2.7% 2.7% 5.4% 5.4% 0.0% 0.0% 0.0% 5.4% 10.8% 10.8% 10.8% 10.8% 27.0%

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