[SOS] La pile des kernel threads

Thomas Petazzoni thomas.petazzoni at enix.org
Lun 22 Fév 20:07:58 CET 2010


Salut,

On Tue, 16 Feb 2010 14:18:47 +0100
Konstantin Tcholokachvili <tcholoka at gmail.com> wrote:

> J'ai consulté le code du threading (thread.c:
> sos_create_kernel_thread()) et remarqué que  la structure du thread et
> la pile sont alloués séparement.
> 
> La question que je me pose est: est-ce qu'on aurait pu mettre la pile
> directement dans la structure décrivant le thread (char stack[4096])
> et donc allouer le thread et sa pile en même temps avec sos_kmalloc.
> Ou il faut absolument allouer la pile séparement comme maintenant?

Je n'ai pas nécessairement bien tous les éléments en tête, mais a
priori, je ne vois pas pourquoi on ne pourrait pas allouer la pile
directement avec la structure décrivant chaque thread (en faisant la
supposition qu'on parle bien de la pile noyau, pas de la pile
utilisateur).

Quant au problème lié à l'agrandissement dynamique de la
pile évoqué par Geoffroy, ce n'est pas un puisque les piles noyau ont
une taille fixe et ne sont jamais agrandies.

Bonne soirée,

Thomas
-- 
Thomas Petazzoni                         http://thomas.enix.org
Promouvoir et défendre le Logiciel Libre http://www.april.org
Logiciels Libres à Toulouse              http://www.toulibre.org
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 197 bytes
Desc: not available
URL: <http://the-doors.enix.org/pipermail/sos/attachments/20100222/1f5973e5/attachment.pgp>


Plus d'informations sur la liste de diffusion Sos