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

Re: Pipe problems



Tommy Reynolds wrote:

Uttered "Ovidiu Donciu" <ovidiud apropo ro>, spake thus:



The pipe maximum size is 4096 bytes . It is any solutions to enlarge the
maximum size of the pipes ?



Nope. By definition, pipes have _no_ storage capacity. They function as a rendevous-type syncronization point for data transfer between two processes. Pipes are for conveniently building functionality chains, linking several small simple programs together to make a throw-away complex program.

If you are really asking about improving the performance of data
transfer between to processes, then pipes are the wrong choice
because pipes are implemented as filesystem objects and bring
along all that overhead.

Looking for performance? Then check out using shared memory, perhaps
by using either a shared mmap(2) region or, blech, System V IPC
shmget() and friends.



If you're stuck with pipes, you could always do something insane like build buffering into the application on the receiving end of the pipe.


Jeremy



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