Есть ли разница между демоном и службой?
Или они оба в основном являются приложением, которое находится в памяти, привязано к определенному порту и слушает / отвечает на запросы?
демоны и службы - это одно и то же.
Однако ни один из них не должен быть привязан к порту. HALd - это демон, который отслеживает подключенное оборудование и правильно его монтирует. crond - это демон, который держит поезда вовремя.
Демоны и Сервисы - это не одно и то же.
«Служба» может относиться к демону или службе.
Демон - это подмножество служб, которые всегда выполняются в памяти в ожидании обслуживания запроса.
Службы, не являющиеся демонами, обычно обрабатываются xinetd. xinetd прослушивает запрос, а затем запускает необходимую службу для обработки запроса. После того, как запрос был обработан, обслуживание снова останавливается.
Типичные не-демонические службы: rsync vsftpd
Типичные демонизированные службы: MySQL Apache
да - демоны запускаются на Unix-подобных устройствах, а службы работают в Windows.
Когда-то десять лет назад демоны работали бесконечно, а службы - нет.
Когда-то пару десятилетий назад демоны тоже не существовали бесконечно.
Так что я имел в виду Нет - нет существенной разницы между сервисами и демонами.
Обратите внимание, что cron - это демон; он вообще не привязан к сети.
Поскольку сегодня все основные дистрибутивы Linux используют systemd, можно посмотреть, что говорит о нем systemd:
из man systemd
systemd - это системный и сервисный менеджер для операционных систем Linux.
...
Сервисные блоки, которые запускают и управляют демонами и процессами, из которых они состоят. Подробнее см. Systemd.service (5).
...
systemctl daemon-reexec (перезапускает systemd)