(Alberto Ceselli - alberto.ceselli at unimi.it)
News
Organizzazione del corso
- Mercoledì - Dalle ore 14:00 alle ore 16:00, aula 2 (teoria).
- Giovedì - Dalle ore 14:00 alle ore 16:00, aula 2 (teoria), oppure
dalle ore 11:30 alle ore 13:30, aula 5-6 (laboratorio).
Argomenti delle lezioni e slide
Materiale principalmente tratto dal
corso della prof. Patrizia Scandurra .
- Lezione 1 (9 Marzo 2016). Presentazione del corso (Slides) . Introduzione (Slides) .
- Lezione 2 (10 Marzo 2016). Architettura dei sistemi operativi (1). Slides .
- Lezione 3 (16 Marzo 2016). Architettura dei sistemi operativi (2). Slides . Esempio di codice con librerie che usano chiamate di sistema (usare con cautela).
- Lezione 4 (17 Marzo 2016). La gestione dei processi (introduzione). Slides .
- Lezione 5 (23 Marzo 2016). La gestione dei processi (meccanismi). Slides , Esempio di codice con librerie POSIX.
- Lezione 6 (6 Aprile 2016). Multithreading. Slides . Processi, thread ed utilizzo della memoria: codice per esperimenti con librerie POSIX.
- Laboratorio 1 (7 Aprile 2016). Multithreading in Java.
- Lezione 7 (13 Aprile 2016). La sincronizzazione di task: introduzione, problemi standard, race conditions. Slides ; esempio di codice per il calcolo di una sommatoria con librerie POSIX (V1: singolo thread, V2: possibili race conditions, V3: versione corretta con commenti).
- Lezione 8 (14 Aprile 2016). La sincronizzazione di task: sezioni critiche, mutua esclusione, cooperation e comperition synchronization, guardie e semafori. Slides .
- Lezione 9 (21 Aprile 2016). La sincronizzazione di task: monitor, supporto hardware per la sincronizzazione, problema del produttore e consumatore su buffer condiviso. Slides .
- Lezione 10 (22 Aprile 2016). Inter Process Communication: concetti generali, meccanismi shared memory e scambio di messaggi; sincronizzazione tramite scambio di messaggi. Slides . Esempio di codice in ambiente UNIX.
- Lezione 11 (27 Aprile 2016). Inter Process Communication: comunicazione in ambiente distribuito; Remote Procedure Call e Remote Method Invocation. Slides .
- Lezione 12 (28 Aprile 2016). Deadlock: prevenzione e gestione. Slides .
- Lezione 13 (04 Maggio 2016). Scheduling (parte 1). Slides .
- Lezione 14 (11 Maggio 2016). Scheduling (parte 2). Slides .
- Lezione 15 (18 Maggio 2016). Gestione della memoria centrale .
- Lezione 16 (01 Giugno 2016). Gestione della memoria virtuale.
- Non discussi a lezione. File system: concetti generali e implementazione .
Temi d'esame:
Risultati degli esami ed orari di convocazione:
Riferimenti:
- A. Silberschatz, P.B. Galvin, G. Gagne Sistemi Operativi - Concetti ed Esempi. Nona edizione, Pearson - 2014.