Anar a: Buscar
FIB > Els estudis > Pla 91 > Pàgines de les assignatures > Departament LSI > PC Castellano | English
A
AD
AED
AIA
AP
BDA
CL1
CL2
DBD
DLP
EA
EDA
ES:D1
ES:D2
ES:E
FBD
FP
FPC
GC
GPI
GSI
IBD
IEA
IIA
IL
IP
LGA
LPO
MAC
MFES
MGC
PC
PD
PGSI
PM
PP
R
RESI
SGBD
SIO
TC
TMIA
VRC



Programació Concurrent (PC)




Professors Responsables: XAVIER MESSEGUER PEYPOCH (messeguerlsi.upc.edu)
Crèdits: 6.0 (3.0 T 1.5 P 1.5 L)

Departament: LSI

Tipus d'assignatura

Optativa per la EI , ETIG , ETIS

Requisits de l'assignatura

EDA - Pre-requisit per la EI , ETIG , ETIS
ISO - Pre-correquisit per la EI , ETIG , ETIS


Objectius docents

Aprendre a especificar, dissenyar i implementar algorismes paral.lels i
concurrents. Com a conseqüència es vol que els estudiants siguin capaços
de raonar amb rigor i elegància respecte als programes que realitzin. Per
això presentem amb cura els fonaments teòrics dels diferents
paradigmes existents. A més a més veiem com implementar aquests paradigmes
en JAVA .

Programa

1. Processos i Fils
- Modelat: prefix, no determinisme, indexació i parametrització.

- Implementació: fils en Java, cicle de vida, un exemple.

2. Execució concurrent
- Modelatge: composició, accions compartides, reetiquetament, ocultació.

- Diagrames d'estructura: un exemple.

- Programació multifil: un exemple.
3. Exclusió mútua
- Interferència: un exemple.

- Exclusió mútua en Java.

- Modelatge de l'exclusió mútua.
4. Monitors
- Condicions de sincronització: un exemple.

- Condicions de sincronització en Java: un exemple.

- Semàfors: Modelatge de semàfors.

- Semàfors en Java.

- Buffers fitats.

- "Nested monitors".
5. Blocatge
- Anàlisi per blocatges.

- El dinars dels filòsofs: disseny i implementació.
6. Propietats de seguretat i vivacitat
- Seguretat: propietats de seguretat, exlusió mútua.

- Problema del pont d'una sola via: model i implementació.

- Vivacitat: propietats de progrés, anàlisi pel progrés, prioritats.

- Problemes de vivacitat en el pont.

- Lectors escriptors: seguretat, progrés i implementació.
7. Diseny basat en models
- Dels requeriments al model: un exemple.

- Del model a la implementació.
8. Pas de missatges
- Síncrons: model, modelatge en Java, un exemple.

- Asíncron: ports, modelatge en Java, un exemple.

- Petició-resposta (rendezvous).

Avaluació


La nota és sobre 10 i dependrà de:
- Un 25% donada per les pràctiques.
- Un 75% com a resultat d'una prova que es realitzarà al final del
quadrimestre.
La nota pot ser corregida per la informació recollida pel professor en
la classe de problemes.
Cas que els estudiants ho desitgin, a mitjans del quadrimestre, es farà
una prova curta. En aquest cas el resultat servirà per ponderar la nota
final.

Càrrega

El curs està separat en tres parts que es van intercalant en el temps.
- Classes de teoria. Es preveu que es podran fer unes 13 classes
de 2 hores setmanals cadascuna. Es presentarà el corpus teòric
bàsic necessari per a la construcció i anàlisi de
programes senzills en els diferents paradigmes.
- Classes de problemes.Es preveu que es podran fer unes 6
classes (quinzenals) de 2 hores setmanals cadascuna. S'intentarà que
siguin els mateixos estudiants els que resolguin els problemes encara que sigui
parcialment o amb incorreccions. La feina del professor serà completar i
corretgir les errades que puguin aparèixer.
- Classes de laboratori.Es preveu que es podran fer unes
6 classes (quinzenals) de 2 hores setmanals cadascuna. D'una part, es
presentarà l'entorn informàtic necessari per a poder desenvolupar
els diferents paradigmes amb fluidesa. D'altra part es donaran als estudiants
pràctiques de talla petita que cladrà programar.

Bibliografia

Bibliografia bàsica

- MAGEE, J . i KRAMER, J. Concurrency, State models and Java Programs Wiley, 1999
- ANDREWS, G Concurrent Programming The Benjamin Cummings, 1991
- ARNOLD, K i GOSLING, J. The Java Programming Language, Second Edition Addison Wesley, 1998
- LEA, D. Programación concurrente en Java Addison Wesley, 1997

Bibliografia complementària

- BEN-ARI, M Principles of Concurrent and Distributed Programming Prentice-Hall International, 1990
- ABAT, M.T Composición de Esquemas Paralelos Dept. LLenguatges i Sistemes Informàtics, Report LSI-94-1-T.
- MESSEGUER, X Manual de Laboratori de Programació Concurrent sobre Ada Dept. LLenguatges i Sistemes Informàtics, Report LSI-94-12.
- MONTERO, J.L.; NAVARRO SOTO, A.; VILLAR, A. Curs d'Introducció i Cerca d'Informació a Internet Lab. Càlcul de L.S.I., 1998

Informació complementària

Altres professors: Joaquim Gabarro, Josep Vilaplana


versió per imprimir