On Fri, Feb 08, 2002 at 03:27:27PM, Jean-Francois Dive wrote: > Vais encore faire mon picky mais, > > - chaque thread a un stack different au sein d'un meme process. (sinon, l'execution > parallele serait un casse tete pour s'y retrouver dans le stack). c'est bien ce que j'ai dit : > > Un thread est un espece de fork _sauf_ que l'os ne lui donne qu'une > > stack
> - sous linux, un thread EST un process partagant leur heap. > > Les registres sont sauvegardes de la meme maniere lors du context > swithcing d'un process ou d'un thread. > > donc, thread plus lege que process, oui, mais cela depends bcp de l'OS, linux > est un mauvais exemple pour cela. yep, mais c'est parce que l'implémentation des threads et de POSIX 1c n'est pas encore parfaite sous nux. Il suffit de faire un petit `ps m` pour s'en convaincre ;) binny@storia:~$ ps m ps: error: Thread display not implemented. > fork n'est pas exactement un appel systeme: c'est une couche autour de _clone() qui >est > l'appel system. De plus, il n'y a pas d'autres moyen de creer des nouveau process. >Le kernel ouais, ok, mais perso, __clone(), je l'utilise pas des masses voire meme jamais ;) A ce propos, je viens de voir un truc amusant dans la man page de clone : SEE ALSO fork(2), pthread_create(3thr) comme quoi ;) > quand il demarre appel la version kernel de _clone() pour creer le process init qui >lui meme > va forker tout les nouveaux process qui se lanceront. > > JeF > ---end quoted text--- binny -- Le but du mathématicien est de comprendre le sens de ce qu'il dit. -- Unknown °v° Benjamin Michotte <[EMAIL PROTECTED]> _o_ web : http://www.baby-linux.net