View Full Version : [UNIX] Info "tecnica" sulle PIPE...
Fire Fox II
17-07-2005, 17:05
Salve raga :)
qualcuno potrebbe spiegarmi il motivo per cui due processi non imparentati siano impossibilitati nell'usare la Pipe e debbano di conseguenza usare la FIFO?
Thanks :)
ilsensine
18-07-2005, 06:56
Innanzitutto, pipe e fifo ("named" pipe) sono sostanzialmente la stessa cosa. Cambia perņ il modo con cui sono creati.
Un fifo č un file speciale, creato con il comando mkfifo. I programmi possono aprirlo come un file normale; quello che viene scritto da un lato viene letto dall'altro.
Un pipe viene creato dalla syscall pipe; questa syscall crea due file descriptor, uno per la lettura e uno per la scrittura. I file descriptor sono specifici solo per un processo; perņ se un processo ne crea un altro (ad es. tramite fork), il padre puņ passare al figlio alcuni suoi file descriptor. Per questo due processi imparentati possono condividere i file descriptor (siano essi pipe, socket, file aperti o altro), mentre due processi generici non possono.
Fire Fox II
18-07-2005, 10:51
Come sempre disponibile! :ave:
Thanks :)
vBulletin® v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.