-
Notifications
You must be signed in to change notification settings - Fork 228
ДЗ FIFO
Цель задания - добавить в наш сервер еще один источник получения команд - именованный канал.
Программа минимум - мы должны поддержать входящий канал, в который нам будут посылать команды. Т.о. мы можем быстро локально записать в наш сервер какое-то образ с сохраненными значениями. Ответы посылать никуда не нужно (либо в /dev/null
).
Программа максимум - добавить выходной канал, в который мы будем писать ответы. Тут нужно позаботиться о корректной работе сервера в случае если читатель отвалился и присоединился заново.
Добавить параметры командной строки для сервера:
-
-r имя_канала
- отсюда мы читаем команды -
-w имя_канала
- сюда мы пишем ответы
Сервер должен создавать указанные именованные каналы и удалять их при завершении.
Для получения 10 баллов достаточно реализовать только чтение.
После запуска сервера (afina -r /tmp/input_pipe
) можно послать команду в канал и затем убедиться что данные сохранились в сторадже (через выходной канал, либо запросом по сети):
echo -ne "add foo 0 0 6\r\nfoobar\r\n" >> /tmp/input_pipe
Тестирование производится руками.