> Pourtant, j'ai cru entendre dire quelque part que les threads
> utilisateurs �taient vu comme des processus par le noyau. On m'aurait
> menti ?

les threads natifs sont des threads noyau tout ce qu'il y a de
classique, donc le noyau voit bien des processus. ils partagent les
data, et c'est cens� commuter plus vite entre eux qu'entre process
distincts. on les programme avec la librairie pthread, incluse dans la 
glibc. et ce n'est pas forc�ment source-portable vers d'autres Un*ces
(qui n'ont peut-�tre pas de threads, ou pas la m�me API).

mais il y a aussi la possibilit� d'utiliser des threads qui sont g�r�s
depuis le processus, avec un ordonnanceur et tout �a. �a commute
beaucoup plus vite, vu que le noyau ne voit bien qu'un seul processus
(ce n'est plus vraiment une commutation � proprement parler). une
librairie (GNU) qui fait �a est PTh (Portable Threads), dispo �
<http://www.gnu.org/software/pth/> (il y a des liens vers d'autres si
besoin), et c'est source-portable partout o� elle compile (partout
quoi), puisque �a ne d�pend pas de l'existence des threads sur l'unix
donn�.

� noter qu'il y a de tr�s bonnes explications sur les threads dans le
manuel de PTh : <http://www.gnu.org/software/pth/pth-manual.html>


-- 
Samuel Landau
 (o-  Hi, I'm a deadly e-mail virus, please copy me into your .signature
 /\   file to help me spread. :: Bonjour, je suis un dangereux virus. SVP
Y_/_  copiez-moi dans votre fichier .signature pour m'aider � me propager.

Répondre à