SISTEMI OPERATIVI - MOD.1

Anno accademico 2018/2019 Programmi anni precedenti
Titolo corso in inglese OPERATING SYSTEMS - PART 1
Codice insegnamento CT0125 (AF:248796 AR:136454)
Modalità Convenzionale
Crediti formativi universitari 6 su 12 di SISTEMI OPERATIVI
Livello laurea Laurea
Settore scientifico disciplinare INF/01
Periodo Annuale
Anno corso 2
Sede VENEZIA
Inquadramento dell'insegnamento nel percorso del corso di studio
Illustrare la struttura e le funzioni di un moderno sistema operativo multiprogrammato.
Il corso, dopo aver introdotto i concetti di base relativi ai sistemi operativi moderni,
illustra i modelli teorici e le tecniche realizzative per la gestione dei processi, della memoria, del file system, dei sistemi di I/O e della memoria secondaria.
Introduce i principi della programmazione concorrente e insegna i concetti e le tecniche relative alla sincronizzazione tra processi e thread, con sperimentazioni pratiche in laboratorio in C e
Java. Come casi di studio vengono analizzati i sistemi operativi Unix/Linux e Windows.
Risultati di apprendimento attesi
- conoscenza:
dei concetti di base relativi ai sistemi operativi moderni;
dei modelli teorici e delle tecniche per la gestione di processi, memoria, file system, I/O e memoria secondaria;
dei principi della programmazione concorrente;
- competenze su programmazione concorrente basate su tecniche di sincronizzazione tra processi e thread in C e Java.
Prerequisiti
Conoscenze di programmazione e di architetture dei calcolatori.
Contenuti
Funzioni e struttura di un sistema operativo; macchine virtuali. I sistemi a processi;
proprietà di processi e thread. Principi di programmazione concorrente. La gestione
dell'unità centrale; algoritmi di scheduling. La gestione della memoria; memoria virtuale,
paginazione e segmentazione. Il file system; funzioni e implementazione. La memoria
secondaria e i dispositivi di I/O; le architetture RAID. I sistemi operativi Unix/Linux e
Windows. Laboratorio: programmazione concorrente in C e Java.
Testi di riferimento
Andrew S. Tanenbaum, Herbert Bos. I moderni sistemi operativi (quarta edizione), Pearson 2016.
William Stallings. Operating Systems: Internals and Design Principles (9th edition), Pearson 2018.
Richard Stevens, Stephen A. Rago, Advanced Programming in the UNIX Environment (terza edizione), Addison Weseley, 2013.
Modalità di verifica dell'apprendimento
Sono proposti esercizi a lezione.
La prova scritta della prima parte consiste in domande aperte e può essere sostituita da due prove intermedie analoghe.
Una prova orale potrebbe essere richiesta in casi particolari.
L'esame valuta:
1. la conoscenza di concetti di base, modelli teorici e tecniche di implementazione per sistemi operativi moderni;
2. i metodi di gestione delle componenti del sistema operativo (processori, memoria, dispositivi I/O, file system);
3. la competenza dei casi di studio di sistemi operativi moderni.
Metodi didattici
Lezioni frontali, esercitazioni in aula, laboratorio
Lingua di insegnamento
Italiano
Altre informazioni
L'esame consiste in una prova scritta e in alcuni progetti di laboratorio svolti durante
l'anno.
Le informazioni contenute in questa pagina si riferiscono all'intero corso annuale di
Sistemi Operativi.
Modalità di esame
scritto
Programma definitivo.
Data ultima modifica programma
13/02/2019