Programma e registro 2015/2016

Programma dell’insegnamento
Concetti introduttivi
Richiami di Sistemi Operativi. Processi e thread. Scheduling della CPU. Esemplificazione su UNIX.

Programmazione Concorrente
Elaborazioni concorrenti. Grafo di precedenza e vincoli di sincronizzazione. Interazioni fra processi. Modello a memoria comune e a scambio di messaggi. Libreria Pthread. Sviluppo di applicazioni concorrenti.

Programmazione Distribuita
Reti e sistemi distribuiti. Elaborazioni distribuite. Modello client-server e peer-to-peer. Interfaccia socket. Sviluppo di applicazioni distribuite.

Sicurezza
Minacce e attacchi. Programmi dolosi. Attacchi tramite rete. Crittografia a chiave segreta e a chiave pubblica. Segretezza delle comunicazioni. Autenticazione della controparte. Firme digitali. Distribuzione di chiavi e certificazioni. Applicazioni sicure (PGP e SSL). Difese di sicurezza (controllo degli accessi, antivirus, firewall, ecc.).

Sistemi Embedded
Caratteristiche di un sistema embedded. Sistemi embedded real time. Sistemi operativi real time. Sistemi dedicati distribuiti. Reti di sensori wireless. Applicazioni basate su reti di sensori.

Registro delle lezioni
Registro 2015/2016