SISTEMI OPERATIVI
Stampa
Anno immatricolazione
2019/2020
Anno offerta
2021/2022
Normativa
DM270
SSD
ING-INF/05 (SISTEMI DI ELABORAZIONE DELLE INFORMAZIONI)
Dipartimento
DIPARTIMENTO DI INGEGNERIA INDUSTRIALE E DELL'INFORMAZIONE
Corso di studio
INGEGNERIA ELETTRONICA E INFORMATICA
Curriculum
Informatica
Anno di corso
Periodo didattico
Secondo Semestre (07/03/2022 - 17/06/2022)
Crediti
6
Ore
45 ore di attività frontale
Lingua insegnamento
ITALIANO
Tipo esame
SCRITTO E ORALE CONGIUNTI
Docente
LOMBARDI LUCA (titolare) - 6 CFU
Prerequisiti


Nozioni base introdotte nei corsi di Fondamenti di Informatica e Calcolatori elettronici.

Obiettivi formativi

Il corso si propone di fornire la conoscenza di base della struttura e delle strategie di gestione delle risorse dei moderni sistemi operativi, acquisendo familiarità con concetti nuovi (come lo scheduling dei processi e i relativi algoritmi) e approfondendo quelli già posseduti dai corsi precedenti, come la gestione della memoria (centrale e di massa) e le relative strutture dati. Lo studente sarà in grado di costruire una approfondita capacità di analisi e valutazione d'impiego dei più diffusi sistemi operativi e delle strategie relative alla sicurezza dei sistemi informatici.


Programma e contenuti


Introduzione ai sistemi operativi
Evoluzione storica, modello di sistema operativo, multiprogrammazione, classificazione dei sistemi operativi. Le chiamate di sistema: classificazione e utilizzo. Uso di pipe e generazione di processi. I sistemi operativi per la multimedialità (cenni).

Gestione di memoria e CPU
Lo stato del processore, il concetto di processo e schedulazione. Stati del processo, funzioni di kernel e algoritmi di schedulazione. Deadlock e semafori. Gestione fisica della memoria principale, swapping, partizione, segmentazione e paginazione. La memoria virtuale (implementazione e gestione).

La sicurezza e i sistemi operativi
Compiti dei moderni sistemi operativi nella gestione della sicurezza. Attacchi storici alla sicurezza di sistemi informatici. Programmi perniciosi (virus, bombe logiche, trapdoor ecc?). Strategie di gestione della sicurezza da parte del sistema operativo. La gestione della protezione del sistema in Unix. Crittografia (cenni).

La gestione di dati permanenti
File, metodi di allocazione, directory e metodi di accesso. Il file system: struttura e gestione. La gestione dei dispositivi di I/O, algoritmi di scheduling per richieste di I/O su disco.

Programmazione di processi
Programmo tramite script (uso della shell). Programmazione concorrente in C e Java.

Metodi didattici


Lezioni frontali svolte mediante presentazioni proiettate su schermo (disponibili agli studenti) e approfondimenti usando la lavagna.

Testi di riferimento


Sono disponibili i lucidi delle lezioni svolte in classe.

Silberschatz Abraham; Galvin P. Baer; Gagne Greg. . Sistemi operativi. Concetti ed esempi. . Pearson Education Italia.

Andrew S. Tanenbaum. I moderni sistemi operativi. . Pearson Education Italia. .

Modalità verifica apprendimento


Verrà svolta al termine del corso una prova scritta che verterà su tutti gli argomenti trattati allo scopo di verificare la conoscenza del candidato delle problematiche relative ai sistemi operativi. La prova consiste in domande teoriche aperte ed esercizi pratici.

Altre informazioni
Obiettivi Agenda 2030 per lo sviluppo sostenibile