? No sistema operacional Unix, um tubo é um dispositivo de sistema lógico que se comunica entre dois processos Unix. Desde há transfere dados de tubulação entre dois processos em uma base First-In -First -Out, eles também são chamados tubos FIFO . Existem dois tipos de tubos em Unix - nomeados e tubos sem nome. Eles são os mesmos no comportamento e semântica exceto que pipes nomeados tem um nome e uma entrada no diretório , como um arquivo . Pipes nomeados oferecem a vantagem de segurança com permissões de leitura e escrita , bem como a proteção automática pelo sistema quando eles são compartilhados por vários processos . Crie um pipe nomeado com a linha de comando
Os programas " mknod " e " mkfifo " criar um pipe nomeado no prompt shell. A primeira letra na entrada é de "p ", indicando que o dispositivo é um tubo . " 0666 " é o modo usado , que é modificado com o valor atual de umask . Execute o programa de "homem" para entradas manuais detalhados sobre " mknod " e " mkfifo " em seu sistema. " mknod " é um comando genérico para todos os tipos de dispositivos
$ mknod nmpipe_multiway POR $ mkfifo nmpipe_multiway 0666
Veja o tubo como uma listagem de diretório : . $ ls-l
< br >
Crie um pipe nomeado em um programa C
Chame o mkfifo função do sistema Unix () para criar o pipe nomeado em um primeiro parâmetro programa.A é o nome do tubo eo caminho para isso . "Mode" especifica as permissões de acesso com o qual você deseja criar o pipe nomeado. A função assume o O_CREATE