| | | corso | | | | |
Laboratorio di programmazione concorrente C
Codice: | AA011 | Crediti: | 4 | Semestre: | 1 | Sigla: | LPc | |
|
Settore disciplinare: | INF/01 - Informatica |
Docente
Marco Danelutto
Tel. 0502212742Prerequisiti
Laboratorio 1 e 2
Obiettivi di apprendimento
Introduzione alla programmazione concorrente con Java (modelli ad ambiente
locale e ad ambiente globale)
Descrizione
Scopo del corso è quello di introdurre la programmazione concorrente in ambiente Java. Verranno trattati sia aspetti di ambiente locale, con l'utilizzo della libreria Java JCSP (implementazione come libreria Java di CSP, Università di Kent), che aspetti di ambiente globale, mediante l'utilizzo di Java Threads. Il corso mette in risalto gli aspetti pratici degli argomenti trattati. Le esercitazioni pratiche sono tenute in un'aula appositamente attrezzata con personal computer.
English Description
The course introduces to the concurrent programming under the JAVA framework. Both the shared memory and the message passing communication paradigms will be presented, referring to the JCSP library (a library implementing CSP under JAVA, developed by the University of Kent) and the JAVA Threads. Practical lectures will be taught in a laboratory equipped with linux machines.
Programma
- Programmazione concorrente a processi
Introduzione al concetto di processo, Attivazione di processi indipendenti
mediante comando parallelo. Comunicazione fra processi (sincrona,
simmetrica). Nondeterminismo e comando alternativo. Riconoscimento di forme
tipiche di cooperazione fra processi: cliente/servente, pipeline di
processi, produttore/consumatore.
- Programmazione concorrente con thread
Concetto di thread. Accesso alle informazioni condivise fra thread.
Meccanismi di sincronizzazione: monitor come classe synchronized, meccanismi
di wait e notify (notifyall).
- Processi e thread
Realizzazione di un processo parallelo mediante thread. Effetti della
coesistenza di cooperazione ad ambiente globale (intera al processo) e
locale (con gli altri processi).
Bibliografia
- Marco Danelutto, JCSP (Dispensa SEU).
- Gianluigi Ferrari, Java Threads: Una nota introduttiva.
- Wong Oaks, Java Thread. O'Reilly.
Modalità di esame
Scritto e orale