SISTEMI OPERATIVI
cod. 05613

Anno accademico 2011/12
2° anno di corso - Secondo semestre
Docente
Settore scientifico disciplinare
Informatica (INF/01)
Field
Attività formative affini o integrative
Tipologia attività formativa
Affine/Integrativa
48 ore
di attività frontali
6 crediti
sede: PARMA
insegnamento
in - - -

Obiettivi formativi

Obiettivi formativi del corso

Il corso introduce i principi ed i concetti fondamentali su cui si basano i sistemi operativi. In particolare, vengono analizzate le tecniche che consentono di coordinare e gestire le risorse di un sistema di elaborazione e che permettono di trasformare la macchina fisica in una macchina astratta, dotata di funzionalità più convenienti per l'utente.

Prerequisiti

Architetture degli elaboratori

Contenuti dell'insegnamento

Introduzione.
Richiami sulla struttura del calcolatore
Processi e Thread.
Modello a processi, stato, generazione e terminazione. Il modello a thread, uso e implementazione. Paradigmi di interazione: condivisione, sincronizzazione, comunicazione. Scheduling di thread e processi.
Le Risorse.
Modelli di gestione delle risorse. Politiche elementari di gestione. Il problema dello stallo: caratterizzazione, metodi per evitarlo, impedirlo, riconoscerlo ed eliminarlo. Attesa indefinita. Alcuni problemi classici.
Gestione della memoria.
Il problema di base. Swapping. Paginazione. Algoritmi di sostituzione. Cenni sulla tecnica di segmentazione ed sulle problematiche implementative.
Gestione dei dispositivi di Ingresso/Uscita.
Dispositivi e processi controller. Caratteristiche del software di I/O, vari livelli di gestione: interruzioni, driver dei dispositivi, I/O software indipendente dai dispositivi. Gestione di alcuni dispositivi: dispositivi a caratteri, dischi magnetici.
File System.
Modello logico del sistema di archiviazione, file, directory. Implementazione di un file system. Esempi di file system.

La shell di Unix. La shell Bash, shell scripting, i filtri.
Programmazione di Sistema in C. Chiamate e librerie di sistema, controllo dei processi, comunicazioni tra processi, thread e multithreading, accesso al file-system e I/O.

Programma esteso

- - -

Bibliografia

A. Silberschatz. Sistemi Operativi, (concetti ed esempi). Ottava Edizione. Pearson.

Metodi didattici

Lezione frontale e laboratorio

Modalità verifica apprendimento

Esame scritto ed orale

Altre informazioni

- - -