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

Répondre à