Questa è una vecchia versione del documento!
Indice
Anno Accademico 2012-13
Polo Didattico La Spezia
Docente: Laura Ricci
Orario del Corso
Giovedì ore 9.00-11.00, Lezione in Aula, Aula 4, Polo Marconi
Giovedì ore 11.00-13.00, Laboratorio, Laboratorio 2, Polo Marconi
Le ultime 2 lezioni si terranno
giovedì 23 maggio, ore 9.00-13.00. In tale data verrà anche consegnato il progetto di fine corso.
Orario di Ricevimento
Giovedì ore 15.00-18.00, Pisa presso il mio Studio
Per qualsiasi problema potete contattarmi in qualsiasi momento via e-mail ([email protected]), oppure su skype (contatto: lauraemiliaricci)
Programma
Thread Programming
- Attivazione di threads. La classe Runnable
- Pool di threads: Politiche per la Gestione dei Pool
- Politiche di Saturazione
- Thread che restituiscono risultati: la classe Callable
- Stati di un thread, metodi Join, Interrupt
- Sincronizzazione, concetto di Monitor
- Metodi Synchronized, sezioni critiche, wait(), notify(), notifyall()
- Programmazione Concorrente: Problemi Classici
- Produttore/COnsumatore
- Filosofi a Tavola: deadlock
- Scrittori/Lettori: starvation
- Semaphore
Gestione di indirizzi IP
- Classe InetAddress
Sockets TCP
- Le classi Socket, ServerSocket
- Stream: concetti generali
- Invio di dati strutturati su Stream: Stream di Oggetti
- Serializzazione
- Attributi Transient, Grafo dei Riferimenti
- Caching di Oggetti
- Versioni
- Scenari di Deadlock
- Implementazione di socket TCP
- Stati di un Socket
- Demultiplexing
- Proprietà di Socket TCP: Timeout, NoDelay, Size, SoLinger, Keep-Alive
Sockets UDP
- DatagramSockets, DatagramPackets
- Generazione di pacchetti UDP: Le classi ByteArrayInputStream, ByteArrayOutputStream
Multicast UDP
- Multicast Scoping
- API JAva
Remote Method Invocation
- Creazione di Registry
- Gerarchie di Registry
- Esportazione di oggetti remoti
- RMI Callbacks
- RMI: Supporto Concorrente
Modalità d'esame
Progetto+Orale
Progetto L'esame si svolge presso il Laboratorio del Polo Marconi, circa una settimana dopo la consegna del codice e della relazione
Gli studenti che non hanno frequentato le lezioni di laboratorio (studenti lavoratori) sono pregati di mettersi in contatto con me prima dell'inizio dello svolgimento del progetto.
Il prossimo progetto verra' consegnato alla fine del mese di aprile 2013.
Orale: verte sulla discussione del progetto e in generale sugli argomenti trattati nel corso.
Tutti gli studenti che consegneranno una soluzione corretta degli esercizi assegnati a lezione, entro 15 giorni dal loro assegnamento, otterranno un 'bonus' per l'esame finale
Progetti proposti
Il progetto proposto per l'anno accademico 2012/13 è il seguente:
Testo del Progetto | Riferimenti | |
---|---|---|
Reduced dynamo: DHT-based Distributed Storage System | Reduced Dynamo |
- Il progetto rimane valido fino alla fine di Aprile 2014.
Giorno | Argomenti | Lucidi | Materiale Integrativo |
---|---|---|---|
21/02/2013 | MultiThreading: Attivazione ed Interruzione di Threads | Thread: Attivazione, Interruzione | |
28/02/2013 | Thread Pooling, Gestione indirizzi IP | Pool, InetAddress | |
07/03/2013 | Socket: Concetti introduttivi, Socket TCP | Classi Socket, ServerSocket | |
14/03/2013 | Thread: Accesso a Risorse Condivise | Sincronizzazione Implicita ed Esplicita | |
21/03/2013 | Socket TCP: Interazione con il Supporto | Implementazione Socket TCP | |
28/03/2013 | Il Meccanismo della Serializzazione | Serializzazione | |
11/04/2013 | Socket UDP: Spedizione di Pacchetti | Socket UDP | |
16/04/2013 | Correzione di Esercizi alla lavagna | ||
02/05/2013 | Multicast IP, Lettori Scrittori | Multicast UDP | |
09/05/2013 | Remote Method Invocation | RMI | |
23/05/2013 | Il Meccanismo delle Callbacks | CallBacks |