Sistemi Operativi I a.a. 2003/2004
Docente
Giorgio Delzanno
Ufficio 104 (I piano) D.I.S.I.
Tel. 010-3536638
e-mail: giorgio<at>disi.unige.it
(sostituisci <at> con @)
Scopo del corso
Introduzione ad aspetti fondamentali dei
sistemi operativi
[1]
I Moderni
Sistemi Operativi
Andrew S. Tannenbaum
Jackson-Libri Universita'
Modern Operating Systems
Andrew S. Tanenbaum
Prentice Hall Int.
Possibili alternative
[2]
Sistemi Operativi: Concetti ed
Esempi - 6a ed. -
Slberschatz-Galvin-Gagne
Addison-Wesley
+
[3]
Unix: Architettura di un sistema
Maurice J. Bach
Jackson
(utile comunque anche per S.O. 2)
o altro libro di introduzione a Unix
Nota:
Il libro:
Sistemi Operativi: Progetto ed implementazione
Tanenbaum e Woodhull
UTET
contiene la parte di teoria del Tanenbaum "Moderni Sistemi Operativi".
Tuttavia usa come esempio molto dettagliato "MINIX" che non vedremo a
lezione.
Il libro di Silberschatz-Galvin-Gagne è più introduttivo
(confronta tra loro vari esempi quali Windows e Solaris)
Attenzione: in data 6/10/03 sono state apportate alcune
modifiche ai lucidi di questa parte
(che ora hanno 2 pagine in piu)
rispetto ai lucidi mesi in linea prima del 6/10
(vedi lucidi vecchi su cooperazione processi).
Seguendo la numerazione dei nuovi
lucidi le modifiche riguardano i lucidi:
orale sulla parte di laboratorio con
discussione
dell'esercitazione pratica
scritto sulla parte di teoria (vedi lezioni e materiale) con
"domande" ed "esercizi"
Compitino di novembre
Il primo compitino sara' composto di diverse domande sulla
parte
iniziale
del programma:
Dall'introduzione ai sistemi
operativi fino allo scheduling della CPU: intro, processi e threads,
cooperazione tra processi, CPU scheduling (vedi calendario del corso)
Vi saranno domande di teoria
ed esercizi (su algoritmi di mutua esclusione, CPU scheduling)
Compitino di gennaio e primo appello
Il secondo compitino sara' composto di diverse domande ed
esercizi sulla seconda parte del programma
gestione della memoria principale
memoria virtuale
gestione della memoria in Unix e Windowd
file system
file system in Unix, Dos/Windows, CdRom, CP/M
introduzione ai sistemi distribuiti (parte svolta dalla prof.
Gianuzzi)
La parte di laboratorio verra' trattata separatamente con
un'orale + pratica in laboratorio.
Si potranno recuperare dal I compitino:
una domanda orale sulla prima parte di corso (fino a
CPU scheduling)
Linux_Journal
Una rivista mensile interamente dedicata al sistema
operativo Linux. Una parte degli articoli presenti nella versione
cartacea sono disponibili anche in linea.
Linux
Magazine Un'altra rivista mensile interamente dedicata al sistema
operativo Linux. Una parte degli articoli presenti nella versione
cartacea sono disponibili anche in linea. Interessante la sezione Gearheads Only
Libri on-line
M. Mitchell, J. Oldham, e A. Samuel, Advanced Linux
Programming Un libro in inglese sulla programmazione di sistema in
ambiente Linux.
S. Piccardi, Guida alla
Programmazione in Linux Un libro in italiano sulla programmazione
di sistema in ambiente Linux ancora in fase di sviluppo.
T. Aivazian,
Linux 2.4 Internals Un libro introduttivo in inglese ai kernel 2.4
di Linux.
A. Rubini e J. Corbet, Linux Device
Drivers, 2nd Edition Un libro in inglese su come implementare
driver di dispositivo per kernel 2.4 di Linux.
Pagine web interessanti
Leonardo Giordani,
Programmazione concorrente: Principi e introduzione ai processi. LinuxFocus fornisce
articoli di supporto e documentazione su Linux nei paesi non aglofoni.
Il presente articolo introduce alla multiprogrammazione ed alla sua
implementazione nel sistema operativo Linux. La versione in italiano
è disponibile qui.
VX
Heavens. Un sito in inglese interamente dedicato ai virus, con
tutorial, articoli, eseguibili e sorgenti. Le informazioni contenute
possono aiutare a capire meglio come difendersi.
Farsite. Un
progetto della Microsoft per la realizzazione di un file system
distribuito.