#include <unistd.h> int pipe(int desc[2]);
Valor de retorno: 0 se a criação tiver sucesso, e -1 em caso de falha.
A primitiva pipe() cria um par de descritores, apontando para um i-node, e coloca-os num vetor apontado por desc:
Assim, a escrita sobre desc[1] introduz dados no tubo, e a leitura em desc[0] extrai dados do tubo.