Organizzazione dei processi e thread in Windows Microsoft. Le lezioni saranno tenute dal Dott. Andrea Dell'Amico (Microsoft Student Partner), in date successive.
Ripasso di SO1: esempi di processi, thread, signal e shell Bash
Introduzione ai Sistemi Distribuiti:
Tassonomia, sistemi di indirizzamento, primitive di comunicazione.
Il modello ISO/OSI: protocolli e indirizzi.
Funzioni Unix e Windows per la comunicazione su socket.
Esempi
sull'instradamento dei messaggi: router, switch e bridge.
Gestione dell'I/O: schedulazione del disco, gestione clock e terminali.
Remote Procedure Call: cenni
File System distribuiti: NFS e Coda file System.
Condivisione di risorse in un Workgroup (Protocollo Samba)
Problemi e soluzioni per la gestione dei Processi Distribuiti: Algoritmi per la sincronizzazione dei clock, Clock logico
Mutua Esclusione Distribuita.
Algoritmi centralizzato, token passing a ring, interamente distribuito
con clock logico, token passing senza strutturazione di Ring. Algoritmi
di elezione: il Bully algorithm.
Transazioni Atomiche.
Cenni generali, Deadlock sequenziale e distribuito: deadlock avoidanc,
prevention, detection, algoritmi ditribuiti Wait-Die e Wound-Wait,
wait-for-graph distribuito.
Mercoledi' 20 maggio verra' tenuto un seminario sul neworking di
Windows, da parte di Andrea Dell'Amico, membro dell'organizzazione
Microsoft Student Partners.
Prerequisiti
del Corso
E' indispensabile saper svolgere semplici esercizi di programmazione C
(corsi di Programmazione e Algoritmi e strutture dati) e aver seguito
(e capito) il corso di Sistemi Operativi I.
Testi
di riferimento
* Appunti del corso.
* Manuali Unix in linea.
* A.S.Tanenbaum, Modern Operating Systems, Prentice Hall Int. (anche in
edizione italiana: I moderni sistemi operativi)
* W. Stallings, Sistemi Operativi, Jackson Libri Universita', 2000.
Esame
Parte di laboratorio, da svolgersi in gruppi. Si tratta di
scrivere programmi distribuiti, in C sotto Linux, con uso
di primitive di comunicazioni di sistema e s3emplici script
bash.
La valutazione sara' fatto con una domanda specifica durante l'esame
orale.
Vedere il file "modalita' d'esame di laboratorio".
Per questa parte sara' attribuito un voto da 1 a 6 punti.
Chi ha superato tale prova potra' continuare l'esame orale.
All'esame orale sara' attribuito un voto da 1 a 26 punti.
Il voto complessivo sara' la somma dei 2 voti riportati. I punti
eccedenti il 30 danno luogo alla lode.
Per essere ammessi all'esame orale e' necessario aver conseguito la
sufficienza (3 punti) nell'esame di Laboratorio.
Per passare l'esame e' necessario aver conseguito la sufficienza anche
nell'esame orale (15 punti).