SISTEMI OPERATIVI

(A.A. 2010/11)

Corso di Studi in Informatica - Universita' degli Studi di Napoli Federico II

 

Orario:  Lunedi 8.30-10.30,   Mercoledi 16.30 - 18.30  

 

 

Programma :

 

Cos’e’ un sistema operativo, Sistemi di calcolo, evoluzione e funzionalita' dei sistemi operativi. Funzionamento di un sistema di calcolo, e interazione con i sistemi operativi. Supporto hardware per i sistemi operativi. Componenti e servizi dei sistemi operativi. Progettazione e struttura dei sistemi operativi.

 

I processi: concetto e sua realizzazione. operazioni sui processi, comunicazione tra processi. I threads. Modelli di implementazione di threads. Esempi di realizzazione di processi e threads nei sistemi operativi. Scheduling dei processi. Algoritmi di scheduling: FCFS, SJF, RR, con priorita'. Scheduling per sistemi in tempo reale.

 

Programmazione concorrente: il problema della sincronizzazione e della sezione critica. Supporto hardware per  sincronizzazione. I semafori. Problemi significativi di sincronizzazione dei processi

 

Lo stallo dei processi. La prevenzione dello stallo, il concetto di stato sicuro. L'algoritmo del banchiere. Il ripristino dopo uno stallo.

 

La gestione della memoria: avvicendamento dei processi. Assegnazione contigua. Assegnazione non contigua: paginazione e segmentazione. La gestione della memoria virtuale: paginazione su richiesta, creazione dei processi, assegnazione della memoria, paginazione. Esempi di gestione della memoria nei sistemi operativi.

 

Il file system: file e directory. metodi di accesso. Montaggio dei file system, condivisione e protezione. Realizzazione e gestione del file system. Gestione dello spazio libero.

 

La memoria secondaria: struttura e caratteristiche. Gli algoritmi di scheduling del disco. I sistemi RAID.

 

Due  casi di studio: Linux e Windows.

 

I sistemi di I/O: architettura, dispositivi, interfaccia e sottosistema per l'I/O.

 

Un esempio di sistema operativo special purpose: i sistemi multimediali. Scheduling dei processi, organizzazione del file system e gestione della memoria secondaria

 

Cenni ai sistemi operativi per sistemi distribuiti. organizzazione hardware e software, gestione dei processi e della memoria, sincronizzazione e coordinamento distribuito, file system distribuiti.

 

 

 

Libri di testo consigliati:

 

Titolo [copertina]

Sistemi operativi Titolo [copertina]

 

nota: uno qualunque dei quattro  libri va bene, nel senso che, con le ovvie differenze, tutti gli argomenti del corso sono coperti. comunque:

 

Materiale didattico A.A. 2009/2010

Le copie dei lucidi non sostituiscono i libri di testo. Essi hanno lo scopo primario di tenere traccia delle lezioni, in maniera da fornire alla fine del corso una panoramica completa degli argomenti da studiare con relativi esercizi. I lucidi riportati di seguito si riferiscono alle lezioni tenute negli anni precedenti e pertanto possono differire da quelli effettivamente proiettati a lezione.

 

 lezione 1

introduzione ai S.O.
 lezione 2 funzioni, servizi e struttura  dei S.O.

 lezione 3

interazione tra hardware e S.O.
 lezione 4 il sottosistema di I/O

 lezione 5

i processi 
 lezione 6 i threads
 esercitazione 1 esercizi su processi e trheads
 lezione 7 scheduling dei processi
 esercitazione 2 esercizi su scheduling dei processi
 lezione 8 la sincronizzazione dei processi
 esercitazione 3 esercizi su sincronizzazione dei processi
 lezione 9 gestione della memoria
 esercitazione 4 esercizi sulla memoria
 lezione 10 la memoria virtuale
 esercitazione 5 esercizi sulla memoria virtuale
 lezione 11 la memoria secondaria
 esercitazione 6 esercizi su memoria secondaria
 lezione 12 il file system
 esercitazione 7 esercizi sul file system
 lezione 13 Case study 1: Linux
 lezione 14 Case study 2: Windows
 esercitazione 8 esercizi su windows e linux
 lezione 15 lo stallo dei processi
 esercitazione 9 esercizi sullo stallo dei processi
 lezione 16 sistemi operativi multimediali
 esercitazione 10 esercizi su sistemi multimediali
 lezione 17 introduzione ai s.o. distribuiti
 lezione 18 lo scheduling dei processi e la gestione della memoria nei s.o. distribuiti
 lezione 19 coordinazione distribuita
 lezione 20 file system distribuiti
 lezione 21 cenni alla sicurezza

NEW!!!  Sul sito del progetto di E-learning dell'Universita di Napoli Federico II  http://www.federica.unina.it/corsi/sistemi-operativi-2/ sono presenti le lezioni registrate in formato  mp4 (audio e video) da scaricare in podcast !!! Utile per studenti lavoratori, per chi intende ripetere la lezione  o per chi OCCASIONALMENTE salta la lezione.

 

ESAMI

 

modalita':  DA DEFINIRE

 

prossime date appelli:  controllare il sito del corso di laurea

 

mettiti alla prova! un esempio di compito scritto (dell'A.A. 2005/06 !! ) per l'esame puoi trovarlo qui