[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [linux] pipes
Salut,
J-C Hendrickx wrote:
>
> Bonjour,
>
> Quelqu'un pourrait-il m'éclairer sur ce qu'est et comment
> utiliser un _pipe nommé_ ?
tu veux dire un tuyau nommé ? ;)
un tuyau de base ne peut être utilisé que si les processus sont parents au 1ier
degré (enfants et forkés-)
un named pipe sous linux on appelle ça une FIFO, cà permet donc faire un pipe
avec des processus quelconques (et plus).
pour l'utiliser il faut que le premier processus crée la fifo avec mkfifo et
ecrive dedans, puis qu'un second processus vienne la lire (et ainsi la vider).
FIFO signifie first in first out, en pratique c'est un buffer (sous la forme
d'un device je crois je sais pas où il met ça) où les données vont sortir dans
le même ordre que celui dans lequel elles sont entrées.
il faut faire attention que le processus qui ecrit ne remplisse pas plus vite
que le processus qui lit ne vide
on peut gerer la taille d'un fifo, ce qui permet de bien garder tout en mémoire
pour un max de performances (et peut être d'autres trucs, c'est l'avantage que
j'y ai vu...).
je ne m'en suis servi qu'une fois, un peu par hasard, avec mkisofs sur un 486
avec 32 Mo de memoire et pas de place sur le disque en utilisant ça et ça
marchait nickel (c'était dans les options de mkisofs si je me souviens bien, je
suis pas sûr ça commence à dater)
j'espère que ça aide, si je connais le principe, je sais pas vraiment quoi
faire avec...
man FIFO, pipe, fork
info mkfifo
a+
--
rno
http://www.noospot42.f2s.com/
[ Soyez précis dans vos sujets svp afin de déterminer directement ]
[ le type de demande... ]
[ Pour vous (dés)inscrire, aller sur http://linuxbe.org/ml.php ]
[ http://LinuxBe.org Contact: listmaster@linuxbe.org ]