Лабораторная работа №2.
Параллельный эхо-сервер.
... pid_t pid; int listenfd, connfd; listenfd = socket( ... ); bind(listenfd, ... ); listen(listenfd, LISTENQ); for (;;) { connfd = accept(listenfd, ...); // подключение клиента, получение присоединенного сокета if ((pid = fork() == 0) { close(listenfd); /* дочерний процесс закрывает прослушиваемый сокет */ doit(connfd); /* обработка запроса на присоединенном сокете */ close(connfd); /* с этим клиентом закончено */ exit(0); /* дочерний процесс завершен */ } close(connfd); /* родительский процесс закрывает присоединенный сокет */ } ...