// Именованные каналы в Linux // Программа из учебника "Системное программирование в среде Linux", Гунько А.В., стр. 77 // Название: server_main.c // Описание: взаимодействие неродственных процессов // через именованные каналы //pipe/server_main.с #include "fifo.h" #include "server.c" void server(int, int); int main(int argc, char **argv) { int readfd, writefd; /* создание двух FIFO, OK. если они существуют */ if ((mkfifo(FIFO1, FILE_MODE) < 0) && (errno != EEXIST)) { printf("can't create %s", FIFO1); exit(-1); } if ((mkfifo(FIFO2, FILE_MODE) < 0) && (errno != EEXIST)) { unlink(FIFO1); printf("can't create %s", FIFO2); exit(-2); } readfd = open(FIFO1, O_RDONLY, 0); writefd = open(FIFO2, O_WRONLY, 0); server(readfd, writefd); exit(0); }