08-20-2004
If you have linux.
Search in the linux kernel c code for PIPE_SIZE
You will have to recompile the kernel, because there is no shell way to do this as far as I know.
10 More Discussions You Might Find Interesting
1. Programming
Could someone Help me with this code please?
#include <stdio.h>
#include <unistd.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <string.h>
#include <fcntl.h>
#define SIZE_B 256 /*buffer's size */
#define NUM_ARG 20 /* max number of args for any command */
int... (4 Replies)
Discussion started by: M3xican
4 Replies
2. Filesystems, Disks and Memory
Hello!
How I can increase or decrease predefined pipe buffer size?
System FreeBSD 4.9 and RedHat Linux 9.0
Thanks! (1 Reply)
Discussion started by: Jus
1 Replies
3. AIX
Hi:-
One of our users is getting an error: "There is no process to read data written to a pipe.”
I am trying to find out what the pipe buffer size is currently set to. How do I go about this?
Thanks, (0 Replies)
Discussion started by: janet
0 Replies
4. Shell Programming and Scripting
Hi!!
I have a problem reading from a fifo pipe in shell script.
The idea is simple, I have a C program with two pipe files:
An input pipe I use to send commands in shell script to the C program (echo "command" > input.pipe)
An output pipe that I read the result of the command also in... (4 Replies)
Discussion started by: victorin
4 Replies
5. UNIX for Dummies Questions & Answers
Can someone explain to me the working of fifo() system call using simple C programs so that I can implement them in the UNIX environement? (1 Reply)
Discussion started by: lvkchaitanya
1 Replies
6. UNIX for Advanced & Expert Users
Hi
This is a exercise question from Unix network programming vol2.
Why the SIGPIPE signal is generated only for writers when readers disappear.
why not it is generated for readers when writer disappears.
I guess, if the writer didn't get any response like the reader gets EOF,
it will... (4 Replies)
Discussion started by: kumaran_5555
4 Replies
7. UNIX for Advanced & Expert Users
Hi,
How do I know the max. size for FIFO(named pipe) on my system.
I'm using solaris 10 OS. Is there any comparison chart between message queues and named pipes.
Thanks in advance. (4 Replies)
Discussion started by: axes
4 Replies
8. Programming
Hi guys.
1. how much is the size of pipe?(i mean the buffer size)
2. is this size different in various UNIX derivations?
3. what happens if we write to a full pipe? does it block until get some free space(the other side receive data) or returns an error?
3. FIFO s are physical files on the... (2 Replies)
Discussion started by: majid.merkava
2 Replies
9. Shell Programming and Scripting
I'm trying to read a fifo using awk and comming across some problems. I'm writing to the fifo from multiple processes invoked by GNU Parallel:
mkfifo my_fifo
awk '{ a = a + $2 } END { for (i in a) print i, a }' my_fifo | sort -nk1 > sorted_output
grep -v '^@' massive_file | parallel... (3 Replies)
Discussion started by: nathanhaigh
3 Replies
10. Shell Programming and Scripting
I have created a fifo named pipe in solaris, which writes the content of a file, line by line, into pipe as below:
$ mkfifo namepipe
$ cat books.txt
"how to write unix code"
"how to write oracle code"
$ cat books.txt >> namepipe &
I have a readpipe.sh script which reads the named... (2 Replies)
Discussion started by: naveen mani
2 Replies
PIPE(2) System Calls Manual PIPE(2)
NAME
pipe - create an interprocess communication channel
SYNOPSIS
#include <unistd.h>
int pipe(int fildes[2])
DESCRIPTION
The pipe system call creates an I/O mechanism called a pipe. The file descriptors returned can be used in read and write operations. When
the pipe is written using the descriptor fildes[1] up to PIPE_MAX bytes of data are buffered before the writing process is suspended. A
read using the descriptor fildes[0] will pick up the data.
PIPE_MAX equals 7168 under Minix, but note that most systems use 4096.
It is assumed that after the pipe has been set up, two (or more) cooperating processes (created by subsequent fork calls) will pass data
through the pipe with read and write calls.
The shell has a syntax to set up a linear array of processes connected by pipes.
Read calls on an empty pipe (no buffered data) with only one end (all write file descriptors closed) returns an end-of-file.
The signal SIGPIPE is generated if a write on a pipe with only one end is attempted.
RETURN VALUE
The function value zero is returned if the pipe was created; -1 if an error occurred.
ERRORS
The pipe call will fail if:
[EMFILE] Too many descriptors are active.
[ENFILE] The system file table is full.
[ENOSPC] The pipe file system (usually the root file system) has no free inodes.
[EFAULT] The fildes buffer is in an invalid area of the process's address space.
SEE ALSO
sh(1), read(2), write(2), fork(2).
NOTES
Writes may return ENOSPC errors if no pipe data can be buffered, because the pipe file system is full.
BUGS
Should more than PIPE_MAX bytes be necessary in any pipe among a loop of processes, deadlock will occur.
4th Berkeley Distribution August 26, 1985 PIPE(2)