На выполнение Лабораторной работы 2 дается 4 недели.
Срок – Последняя неделя октября.
Тема: Параллельный (мультипроцессный) сервер.
Задание:
1. Написать программу (на языке C/C++, консольное приложение) обеспечивающую параллельную работу севера, принимающего файлы от клиента по сети. Условие: мультипроцессная организация на основе функции fork, транспортный протокол – TCP.
2. Обеспечить в сервере завершение «зомби-процессов».
3. Написать клиентскую программу, передающую файл по сети серверу.
4. Продемонстрировать реализованные возможности программ согласно заданию.
Серверная программа должна находить номер свободного порта и выводить его на экран (см., например, [1], стр. 338-342: функции bind, getsockname). При запуске клиентской программы задавать со строки IP адрес сервера и порт.
Полезные ссылки:
1. Фейт С. TCP/IP: Архитектура, протоколы, реализация (включая IP версии 6 и IP Security). – М.: Лори, 2000. – 424 с.