pipe man page on Ultrix

Man page or keyword search:  
man Server   3690 pages
apropos Keyword Search (all sections)
Output format
Ultrix logo
[printable version]

pipe(2)								       pipe(2)

Name
       pipe - create an interprocess channel

Syntax
       include <limits.h> /*Definition of PIPE_MAX*/
       pipe(fildes)
       int fildes[2];

Arguments
       fildes	 Passing  an address as an array of two integers into the sys‐
		 tem call.

Description
       The system call creates an I/O  mechanism  called  a  pipe.   The  file
       descriptors returned can be used in and operations.  Their integer val‐
       ues will be the two lowest available at the time of the function	 call.
       The O_NONBLOCK and FD_CLOEXEC flags will be clear on both file descrip‐
       tors.

       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] picks up the data.

       It is assumed that after the pipe has been set up, two (or more)	 coop‐
       erating	processes  (created by subsequent calls) pass data through the
       pipe with and calls.

       The shell has a syntax to set up a linear array of processes  connected
       by pipes.

       For further information on how and calls behave with pipes, see the and
       reference pages.

       A signal is generated if a write	 on  a	pipe  with  only  one  end  is
       attempted.

Restrictions
       Should  more  than  4096 bytes be necessary in any pipe among a loop of
       processes, deadlock may occur.

       The underlying implementation of pipes is no longer socket  based,  but
       rather implemented through the file system.  Any application that needs
       socket functionality from pipes should use the system call.

Return Values
       The function value zero is returned if the pipe was created; -1	if  an
       error occurred.

Diagnostics
       The call fails if:

       [EMFILE]	      Too many descriptors are active.

       [ENFILE]	      The system file table is full.

       [EFAULT]	      The fildes buffer is in an invalid area of the process's
		      address space.

Environment
       Differs from the System V definition in that ENFILE is not  a  possible
       error condition.

See Also
       sh(1), fork(2), read(2), socketpair(2), write(2)

								       pipe(2)
[top]

List of man pages available for Ultrix

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net