[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

threads (Re: Multi xxx)



> 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.


Reply to: