PIPE(3) PIPE(3)
NAME
pipe - two-way interprocess communication
SYNOPSIS
bind #| dir
dir/data
dir/data1
DESCRIPTION
An attach(5) of this device allocates two new cross-
connected I/O streams, dir/data and dir/data1.
Data written to one channel becomes available for reading at
the other. Write boundaries are preserved: each read termi-
nates when the read buffer is full or after reading the last
byte of a write, whichever comes first.
Writes are atomic up to a certain size, typically 32768
bytes, that is, each write will be delivered in a single
read by the recipient, provided the receiving buffer is
large enough.
If there are multiple writers, each write is guaranteed to
be available in a contiguous piece at the other end of the
pipe. If there are multiple readers, each read will return
data from only one write.
The pipe(2) system call performs an attach of this device
and returns file descriptors to the new pipe's data and
data1 files. The files are open with mode ORDWR.
SEE ALSO
pipe(2)
SOURCE
/sys/src/9/port/devpipe.c
Page 1 Plan 9 (printed 10/30/25)