Sistemi operativi

A.A. 2024/2025
6
Crediti massimi
48
Ore totali
SSD
INF/01
Lingua
Italiano
Obiettivi formativi
Questo insegnamento ha l'obiettivo di insegnare le funzionalità di base e l'architettura di un sistema operativo moderno. A questo scopo, vengono analizzati gli elementi di base che costituiscono i sistemi moderni e le modalità con cui questi interagiscono sia tra loro che con l'hardware di un sistema di calcolo.
Risultati apprendimento attesi
Lo studente dovrà essere in grado di illustrare in maniera efficace le strategie adottate da un sistema operativo per la gestione delle sue risorse e contestualizzarle nell'ambito dei sistemi operativi che vengono adottati oggi. Inoltre, lo studente dovrà essere in grado di presentare e applicare algoritmi di base per la gestione di memoria, processi e deadlock.
Corso singolo

Questo insegnamento può essere seguito come corso singolo.

Programma e organizzazione didattica

Edizione unica

Responsabile
Periodo
Primo semestre

Programma
I principali argomenti trattati sono:

- Introduzione ai sistemi operativi
- Elementi di base dei S.O.
- Processi e thread
- Gestione dei thread in Java
- Inter-Process Communication
- Politiche di schedulazione dei processi
- Gestione della memoria
- Memoria paginata e segmentata
- Implementazione della memoria virtuale
- File system
- Logical Volume Manager
- Implementazione dei file system
- Sistemi di virtualizzazione
- Gestione dell'I/O
- Gestione dei deadlock
- Cloud Computing
- Supporto per sistemi multimediali
Prerequisiti
È fortemente consigliato aver già sostenuto gli esami di architettura degli elaboratori e di programmazione.
Metodi didattici
Lezioni frontali
Materiale di riferimento
Sito web: http://sistemioperativif9x.ariel.ctu.unimi.it/

Libro di testo: Andrew S. Tanenbaum, "I moderni sistemi operativi", quinta edizione, ISBN 978-8891901019

Ulteriore materiale integrativo sarà reso disponibile sul sito web dell'insegnamento
Modalità di verifica dell’apprendimento e criteri di valutazione
L'esame si compone di tre prove.
La prima prova è un test a risposte multiple. Il candidato dovrà rispondere correttamente al 50% + 1 delle domande per essere ritenuto idoneo. Il superamento della prima prova non contribuisce al voto finale.
La seconda prova è una interrogazione orale in cui prima si richiede la soluzione di un esercizio numerico sulla schedulazione di processi o sull'avvicendamento delle pagine in una memoria virtuale e successivamente vengono fatte delle domande relative alla programmazione concorrente. Il superamento di questa prova contribuisce al voto finale fino a 6 punti.
La terza prova è una interrogazione orale su tutto il resto del programma svolto a lezione e contribuisce al voto finale fino a 26 punti.
La valutazione delle prove orali tiene conto del livello di conoscenza degli argomenti, della chiarezza espositiva e della proprieta' di linguaggio.
Per essere promosso, uno studente deve superare tutte e tre le prove.
Il voto finale, espresso in trentesimi, è la somma del voto della seconda e terza prova.
In caso di fallimento di una delle prove, lo studente sarà tenuto a ripetere tutto il procedimento in una sessione successiva.
INF/01 - INFORMATICA - CFU: 6
Lezioni: 48 ore
Turni:
Turno
Docente: Maggiorini Dario
Docente/i
Ricevimento:
giovedì 14:00 - 16:00 previo appuntamento via mail
Ufficio 3003