opensolaris man page for pipe

Query: pipe

OS: opensolaris

Section: 2

Format: Original Unix Latex Style Formatted with HTML and a Horizontal Scroll Bar

pipe(2) 							   System Calls 							   pipe(2)

NAME
pipe - create an interprocess channel
SYNOPSIS
#include <unistd.h> int pipe(int fildes[2]);
DESCRIPTION
The pipe() function creates an I/O mechanism called a pipe and returns two file descriptors, fildes[0] and fildes[1]. The files associated with fildes[0] and fildes[1] are streams and are both opened for reading and writing. The O_NDELAY, O_NONBLOCK, and FD_CLOEXEC flags are cleared on both file descriptors. The fcntl(2) function can be used to set these flags. A read from fildes[0] accesses the data written to fildes[1] on a first-in-first-out (FIFO) basis and a read from fildes[1] accesses the data written to fildes[0] also on a FIFO basis. Upon successful completion pipe() marks for update the st_atime, st_ctime, and st_mtime fields of the pipe.
RETURN VALUES
Upon successful completion, 0 is returned. Otherwise, -1 is returned and errno is set to indicate the error.
ERRORS
The pipe() function will fail if: EMFILE More than {OPEN_MAX} file descriptors are already in use by this process. ENFILE The number of simultaneously open files in the system would exceed a system-imposed limit.
ATTRIBUTES
See attributes(5) for descriptions of the following attributes: +-----------------------------+-----------------------------+ | ATTRIBUTE TYPE | ATTRIBUTE VALUE | +-----------------------------+-----------------------------+ |Interface Stability |Standard | +-----------------------------+-----------------------------+ |MT-Level |Async-Signal-Safe | +-----------------------------+-----------------------------+
SEE ALSO
sh(1), fcntl(2), fstat(2), getmsg(2), poll(2), putmsg(2), read(2), write(2), attributes(5), standards(5), streamio(7I)
NOTES
Since a pipe is bi-directional, there are two separate flows of data. Therefore, the size (st_size) returned by a call to fstat(2) with argument fildes[0] or fildes[1] is the number of bytes available for reading from fildes[0] or fildes[1] respectively. Previously, the size (st_size) returned by a call to fstat() with argument fildes[1] (the write-end) was the number of bytes available for reading from fildes[0] (the read-end). SunOS 5.11 23 Apr 2002 pipe(2)
Related Man Pages
dup2(3c) - opensolaris
dup2(3c) - sunos
pipe(3p) - centos
pipe(3) - linux
pipe(2) - ultrix
Similar Topics in the Unix Linux Community
LP error
broken pipe
insert pipe in file to separate values
Threads with pipe and select?
How to replace the first and last character which is pipe symbol in all files within a folder?