SISTEMI OPERATIVI - MOD.2

Anno accademico
2021/2022 Programmi anni precedenti
Titolo corso in inglese
OPERATING SYSTEMS - PART 2
Codice insegnamento
CT0125 (AF:339893 AR:180724)
Modalità
In presenza
Crediti formativi universitari
6 su 12 di SISTEMI OPERATIVI
Livello laurea
Laurea
Settore scientifico disciplinare
INF/01
Periodo
II Semestre
Anno corso
2
Sede
VENEZIA
Spazio Moodle
Link allo spazio del corso
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.
- conoscenza dei concetti di base relativi ai sistemi operativi moderni;
- conoscenza dei modelli teorici e delle tecniche per la gestione di processi, memoria, file system, I/O e memoria secondaria;
- conoscenza dei principi della programmazione concorrente;
- competenze su tecniche di sincronizzazione tra processi e thread in C e Java.
Conoscenze di programmazione e di architetture dei calcolatori
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.
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.
La verifica dell'apprendimento avviene attraverso una prova scritta e alcune verifiche di laboratorio svolte durante il semestre.

La prova scritta è divisa in due parti corrispondenti ai due moduli del corso. La parte relativa al modulo 2 consiste di due esercizi da svolgere in 30 minuti, che mirano a verificare la conoscenza dei principi della programmazione concorrente e dei meccanismi di sincronizzazione tra processi e thread. Durante la prova scritta non è ammesso l'uso di libri, appunti, supporti elettronici. Non è possibile sostenere solamente una delle due parti dello scritto, a meno che non si siano superate le prove scritte intermedie del primo modulo (vedere modulo 1).

Le verifiche di laboratorio sono tre, vengono svolte durante il semestre e permettono di ottenere un bonus sul voto dello scritto.
Lezioni frontali, esercitazioni in aula, laboratorio
Italiano
Le informazioni contenute in questa pagina si riferiscono all'intero corso annuale di Sistemi Operativi.
Per questo insegnamento è attivo un servizio di tutorato specialistico.
scritto e orale

Questo insegnamento tratta argomenti connessi alla macroarea "Città, infrastrutture e capitale sociale" e concorre alla realizzazione dei relativi obiettivi ONU dell'Agenda 2030 per lo Sviluppo Sostenibile

Programma definitivo.
Data ultima modifica programma: 15/03/2021