Documente Academic
Documente Profesional
Documente Cultură
FIRE DE EXECUTIE
PROGRAMARE CONCURENTA
Notiunea de fir de executie
Avantajele utilizarii firelor
Tipuri de fire
Modele de implementare a firelor
Fork, Exec şi fire, terminare fire
Laborator
Bibliografie
CE ESTE UN PROCES ?
Printing Thread
Editing Thread
AVANTAJELE UTILIZARII FIRELOR
Viteza de reactie
Partajarea resourselor
Economie
Utilizare eficienta a platformei
hardware
FIRE USER MODE
Gestiunea firelor este realizata în cadrul unei
biblioteci cu functii ce ruleaza în user mode
Client Process
Server
Threads
Client Process
User Mode
Kernel Mode
Message Passing
Facility
FIRE KERNEL MODE
Exemple
Windows XP/2000
Solaris
Linux (task)
Tru64 UNIX
Mac OS X
MODELE DE MULTITHREADING
• Many-to-One
• One-to-One
• Many-to-Many
• Hibrid
MANY TO ONE
Exemple:
Solaris Green Threads
GNU Portable Threads
MANY TO ONE
ONE TO ONE
Exemple:
Windows NT/XP/2000
Linux(clone)
Solaris 9 şi urmatoarele
ONE TO ONE
MANY TO MANY
Exemple
IRIX
HP-UX
Tru64 UNIX
Solaris 8 şi mai vechi
MODEL HIBRID
FORK, EXEC ŞI TERMINARE
Terminare:
1. Imediata – termina firul imediat
2. Intarziata – permite firului sa verifice
periodic conditia de oprire şi daca
aceasta se schimba atunci firul se poate
opri într-un mod coerent
LABORATOR
1. #include <pthread.h>
2. pthread_t tid;
3. pthread_attr_t attr; //optional
return 0;
}
BIBLIOGRAFIE
Multumim