Universitatea Babeş-Bolyai Cluj-Napoca
Facultatea de Matematică şi Informatică
Ciclul de studii: Licenţă
Domeniul: Calculatoare şi tehnologia informaţiei
Programul de studii: Ingineria informatiei - in limba romana
Limba de predare: Română

SYLLABUS

I. Date generale
Codul	Disciplina	
MID0033	Paradigme de programare nesecvenţială	

Semestrul	Ore: C+S+L+P	Categoria	Statutul	
8	2+1+2+1	specialitate	obligatorie	

II. Cadre didactice cu norma de bază în Universitate
Numele şi	Titlul	Gradul	Departamentul	Tipul activităţii	
prenumele	ştiinţific	didactic		C	S	L	
BOIAN Rares Florin	Dr. 	Lect.	Informatică	*			

Cadre didactice asociate
Numele şi	Titlul	Instituţia	Tipul	Tipul activităţii	
prenumele	ştiinţific		postului	C	S	L	

III. Obiectivele disciplinei
Invatarea aspectelor fundamentale teoretice si practice despre calculul concurent, paralel si distribuit. 	

IV. Conţinutul disciplinei
1. Introducere in paradigme computationale din domeniile calculului concurent, paralel si distribuit.
2. Calcul concurent: thread-uri
3. Calcul concurent: excludere mutuala, mutex, read-write lock
4. Calcul concurent: variabile conditionale
5. Calcul concurent: semafoare; mecanisme de sincronizare specifice Java, C#, C++
6. Calcul paralel: introducere, taxonomia lui Flynn, arhitecturi hardware
7. Calcul paralel: NVIDIA CUDA
8. Calcul paralel: ATI Stream
9. Calcul distribuit: introducere, schimb de mesaje, client-server, RPC
10. Calcul distribuit: algoritmi distribuiti
11. Calcul distribuit: point-to-point, publish/subscribe,
12. Calcul distribuit: obiecte distribuite - RMI, CORBA, JavaSpaces
13. Calcul distribuit: agenti mobili, servicii distribuite
14. Calcul distribuit: aplicatii colaborative.	

V. Bibliografie
1. BACON J., Concurrent Systems, Addison-Wesley, England, 1998 
2. BARRY A., Concurrent Programming, http://www.csm.uwe.ac.uk/personal/am-barry/Q2H611/concprog.html 
3. BOIAN F.M., FRENTIU M., KASA Z., Effieciency in Parallel Evaluation of Arithmetic Expressions, Universitatea Babes-Bolyai, Facultatea de Matematica, Seminar on Complexity, Preprint no. 10/1989 
4. BOIAN F.M., Programare distribuita în Internet; metode si aplicatii, Editura Albastra, Cluj, 1998 
5. BOIAN F.M., Sisteme de operare interactive, Editura Libris, Cluj, 1994 
6. BOIAN F.M., FERDEAN C. M., BOIAN R.F. DRAGOS R.C. Programare concurenta pe platforme Unix, Windows, Editura Albastra - grupul Microinformatica, Cluj, 2002 
7. BOIAN F.M., VANCEA A., IURIAN S., IURIAN M., Arhitectura 80x86, Limbaj de asamblare, Legatura între limbaje, vol. I si II, Lito. Universitatea "Babes-Bolyai", Cluj, 1994 
8. FLYNN M. J., Some Computer Organizations and their Effectiveness, IEEE Transactions on Computers, C-21, 1972 
9. IGNAT I., KACSO A., Gestionarea proceselor, Editura Albastra, grupul Microinformatica, Cluj, 1995 
10. STALLINGS W., Operating Systems: Internals and Design Principles, Prentice Hall, SUA, 1997 	

VI. Tematica activităţilor didactice pe săptămâni
Saptamana 1-4. Calcul concurent: proiect thread-uri 
Saptamana 5-8. Calcul paralel: proiect NVIDIA CUDA/ATI Stream
Saptamana 9-14. Calcul distribuit: proiect point-to-point 	

VII. Metode didactice folosite

VIII. Evaluare
Nota finala va fi calculata ca media ponderata a evaluarilor de mai jos:
Referat 20%
Proiecte 40%
Examen scris 40%

URL: http://www.cs.ubbcluj.ro/~rares/course/ie/nspp	

IX. Bibliografie suplimentară

	Decan,							Director departament,,

	Data,							Titular curs,
								Lect. Dr.  BOIAN Rares Florin