Только начал постигать юниксвей, так что не пинайте.
В общем, рассмотрим программу Х, которая осуществляет передачу файлов по протоколу SMTP; сделана стандартным фильтром; принимает нечто на вход и отдает что-то на выход. На выходе, как водится, самое важное (неважно, что). И засерать всё это информационными соощениями типа: "2 из 10 кб отправлено" как-то не очень правильно.
Между тем, такую программу хотелось бы совместить с ГУИ (который, среди прочего, показывал бы процент отправки сообщения). Опыт mpd и xmms2 подсказывает, что состояние программы (или команды к ней) можно было бы передавать по сети. Мне важно состояние, которое можно было бы передавать UDP пакетами. ГУИ бы их принимал и отображал. Рядом со мной находится внешний радиомодем с Ethernet интерфейсом и линуксами на борту, который так и поступает (выдает состояние буферов в UDP-пакетах).
Вопрос такой: насколько всё это правильно/неправильно; какие есть другие способы реализации "градусников" для консольных утилит? Как реализуют подобные задачи в web-интерфейсах, в частности, на PHP?