Узнайте больше о программировании на Linux, возможно, о старой книге ALP (расширенное программирование под Linux) (свободно скачивается ) или о чем-то более новом.Смотрите также список syscalls (2) .Вы хотите межпроцессное взаимодействие .
Вам нужно узнать больше о сокетах .Смотрите розетки (7) ;вы можете использовать Unix-сокеты, см. unix (7) (или использовать fifo (7) , pipe (7) и т. д. ...) или даже TCP/ IP-сокеты, см. tcp (7) (но тогда остерегайтесь враждебных соединений из Интернета).Вам необходимо использовать системный вызов мультиплексирования , например poll (2) .В простых случаях ваш пользователь может просто использовать telnet для подключения к вашему приложению (будьте осторожны, шифрование не требуется; вам нужно доверять соединению, например, подключиться к какой-либо внутренней локальной сети).
Вы можете решить добавить некоторый веб-интерфейс в вашу программу (который затем станет специализированным веб-сервером, например, обслуживающим несколько http://localhost:12345/
и аналогичных URL-адресов).Затем используйте библиотеку HTTP server , например, libonion или libhttp .Конечно, это требует знакомства с веб-технологиями ( HTTP , HTML5 & CSS , возможно JavaScript и AJAX ),Затем ваш пользователь будет использовать свой браузер для запроса состояния вашего приложения (или, возможно, взаимодействовать с ним) или использовать какую-либо HTTP-команду клиента, например curl .Я рекомендую этот маршрут, но он требует некоторой работы и знакомства с веб-методами.
Вам также может быть интересна библиотека libssh .
Вы можете решить, что вашприложение становится сервисом и связывает его с systemd .
PS.Вы должны посвятить несколько дней чтению материала перед кодированием.