61801 - Sistemi di Elaborazione dell'Informazione II (A.A. 2010/2011) Stampa

Informazioni generali

Sistemi di Elaborazione dell'Informazione II (SEI2, codice 61801) vale 6 crediti e si svolge nel primo semestre dei seguenti anni: 2° L-31.
Ulteriori dettagli sono disponibili sulla homepage dell'insegnamento.
Per gli studenti iscritti, il materiale didattico è disponibile su AulaWeb.

Propedeuticità

Introduzione alla programmazione, Sistemi di Elaborazione dell'Informazione I

Obiettivi formativi

Raggiungere un'approfondita conoscenza da utente delle problematiche legate alla realizzazione dei sistemi operativi e delle caratteristiche dei sistemi attualmente più usati, completando lo studio iniziato nel corso di SEI I. Vengono inoltre fornite le conoscenze di base relative alla programmazione di sistema con chiamate di Unix/POSIX.

Programma dell'insegnamento

Introduzione.
Richiami struttura del calcolatore ed elementi di sistemi operativi già visti a SEI I.
Processi e Thread
Paradigmi di interazione: condivisione, sincronizzazione, comunicazione. Scheduling di thread e processi. Processi e thread in Unix/Windows.
Gestione della memoria
Paginazione. Algoritmi di sostituzione. La gestione della memoria in Unix/Windows.
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, clock, dischi magnetici. Esempi di gestione dei dispositivi in Unix/Windows. File System
Modello logico del sistema di archiviazione, file, directory. Implementazione del sistema di archiviazione, file, directory. Implementazione di un file system. Esempi di file systems nei sistemi reali. Casi di Studio: Unix/Windows.
Struttura e caratteristiche dei sistemi Unix/Linux e Windows.
Programmazione con chiamate di sistema Unix/POSIX.
Introduzione alla shell. Funzionalità. Gestione file (open, read, write, close, dup, stat, seek). Gestione directory (opendir, readdir, closedir). Gestione processi (fork, exec, wait, exit, chiamate per pid/gruppi). Gestione interruzioni (signal, kill, alarm, pause).

Docente responsabile

Francesco Masulli
Orario di ricevimento: Giovedì ore 16.00-18.00 su appuntamento email

Altri docenti coinvolti

Stefano Rovetta
Orario di ricevimento: su appuntamento; disponibile anche senza appuntamento per questioni brevi

Testi di riferimento

Testo:

Andrew S. Tanenbaum, Modern Operating Systems (3rd Edition) Prentice Hall; 3 edition Prentice Hall, 2007, ISBN-10: 0136006639, ISBN-13: 978-0136006633 -  Traduzione italiana: I moderni sistemi operativi 3/Ed., Prentice Hall 2009, ISBN 9788871925400

Per  la programmazione sotto linux:

Advanced Linux Programming by CodeSourcery LLC, published by New Riders Publishing. Scaricabile gratuitamente: http://www.advancedlinuxprogramming.com/ .

Approfondimenti:
Daniel P. Bovet, Marco Cesati, Understanding the Linux Kernel, Third Edition, O'Reilly Media; 3 edition, 2005, ISBN-10: 0596005652, ISBN-13: 978-0596005658

Uresh Vahalia, UNIX Internals: The New Frontiers, Prentice Hall, 1995, ISBN-10: 0131019082, ISBN-13: 978-0131019089

Mark E. Russinovich and David A. Solomon, Windows Internals, Fifth Edition, Microsoft Press, 2009, ISBN 13:9780735625303, ISBN 10:0-73-56-2530-1

Graham Glass , King Ables, Linux for Programmers and Users, Prentice Hall, 2006, ISBN-10: 0131857487 ISBN-13: 978-0131857483

Modalità di erogazione dell'insegnamento

Tradizionale

Orario delle lezioni

Mercoledì: 9:00 - 11:00, aula 506
Giovedì: 9:00 - 11:00, aula 506

Modalità di frequenza

Facoltativa.
Frequenza consigliata. La frequenza verra' verificata e permettera' di accedere alle modalita' di esame previste per gli studenti frequentanti.

Metodo di valutazione

Prova scritta. Compiti a casa facoltativi ma valutabili.

Modalità di iscrizione agli esami

Attraverso Aulaweb.

Commissione di esame

Presidente:

Masulli Francesco

Membri:

Rovetta Stefano

Supplenti:

Verri Alessandro