pipe - create pipe
int pipe(int filedes);
pipe creates a pair of file descriptors, pointing to a pipe
inode, and places them in the array pointed to by filedes.
filedes is for reading, filedes is for writing.
On success, zero is returned. On error, -1 is returned, and
errno is set appropriately.
EMFILE Too many file descriptors are in use by the process.
ENFILE The system file table is full.
EFAULT filedes is not valid.
SVr4, SVID, AT&T, POSIX, X/OPEN, BSD 4.3
read(2), write(2), fork(2),