Informatica II mod. Sistemi Operativi
a.a. 2018-19

Feb 26, 2019

Lezioni frontali

Mercoledì 10.30 - 12.30

Esercitazioni in laboratorio

Due turni (da Aprile 2019): Lunedì 10.30-12.30 aule A103 A104, Giovedì 11.30-13.30 aule A103 A104

Ricevimento

 Venerdì mattina (indicativamente 9.30-12.30) o su appuntamento.

Modalità d'esame 

L'esame consta di una prova scritta e di una prova orale.  Non sono previste prove in itinere. La data fissata per l'appello è la data della prova scritta. Il voto della prova scritta varia da 0 a 30, e si considera superata solo se maggiore o uguale a 18.  La prova orale avrà luogo in una data successiva (ma sempre relativa allo stesso appello) dopo la comunicazione da parte del docente del superamento o meno della prova scritta.
Per maggiori dettagli vedi il file PDF della prima lezione sulla presentazione del corso.

Obiettivo del corso


  • Il corso analizza i principi, meccanismi e politiche di funzionamento del software di sistemi operativi orientati alle principali aree applicative (sistemi transazionali, interattivi, gestionali, multimediali, robotici, embedded, ecc..).
  • Il corso propone anche lo studio della programmazione concorrente e multi-thread mediante il linguaggio di programmazione Java.

Programma

Argomenti del corso: evoluzione storica dei sistemi operativi, architettura, funzionalità, gestione dei processi, sincronizzazione e comunicazione tra processi, scheduling della CPU, gestione del deadlock, gestione della memoria, gestione dell'I/O, memorie di massa, implementazione del file system, programmazione concorrente e distribuita in linguaggio Java, esempi di sistemi operativi.

Materiale didattico (lucidi/dispense) ed esiti esami

Viene distribuito mediante una cartella Dropbox. Il link di condivisione di questa cartella è recuperabile dal file PDF della prima lezione sulla presentazione del corso.

Libri di testo

  • A. Silberschatz, P. B. Galvin, G. Gagne, Sistemi operativi: concetti ed esempi Pearson Education, nona edizione (2014) o decima edizione (Feb 2019).
Per approfondimenti:
  • Tanenbaum Andrew S. I Moderni Sistemi Operativi, Pearson Education, quarta edizione, 2016
  • Java Concurrency in Practice. Tim Peierls, Joshua Bloch, Joseph Bowbeer, David Holmes, and Doug Lea. Addison-Wesley, 2006