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

Re: [HS] linux et Pipes



Bien, je ne suis pas sur d'avoir vraiment bien compris la differences entre les forks et les threads, le partage de memoire et les mutex ;) Par contre les pipes (ou fifos) ne posent pas de problème, si ce n'est une gestion plus complexe ? Donc ce n'est pas Linux qui pose problème, mais plutot le code du copain qui a essayé ca avant de décréter que finalement ca ne marchait pas correctement ?

Merci a tous pour vos réponses !

Jeremy

PS: je suis en train de lire un bouquin de prog sous unix, j'ai bon espoir de comprendre tout ca d'ici a la fin de l'été !

Yves Rutschle wrote:

On Wed, May 12, 2004 at 09:54:30AM +0200, Mickael Vera wrote:

Tu sera quand même obligé de forker à chaque fois que ton
select trouvera une socket de disponible si tu ne veux pas
que le traitement d'une socket bloque les autres. Et le fork
est assez gourmand il me semble par rapport à des implémentations
légères de threads.


"Si je ne veux pas": il faut donc faire le choix entre
traiter N connections en série à vitesse max V, ou bien
traiter N connections en parralèle à vitesse V/N: avec la
solution multi-process/multi-thread, on garanti qu'aucune
connection ne peut être traitée à vitesse maximale. Tout
dépend bien entendu de l'application et de la durée des
connections, mais le multi-process est plus souvent inutile
que le contraire.

Le fork est légèrement plus gourmant que le thread, mais pas
tellement plus sous Linux (essentiellement, il faut une
structure de mémoire virtuelle par process alors que tous
les threads d'un process partage la même, et il faut
également changer le contexte quand on change de process...
Une machine Linux change de contexte tout le temps de toute
façon, l'impact de performance n'est pas en général très
important).

Y.



--
------
Linux Registered User #317862

You want to use GNU/Linux or Windows ?
- You want to spend time or money ?

Why is Microsoft raising prices on you? Because they can !
- To take that power away from them, use Linux !



Reply to: