Термин · Глоссарий B2B-ПО

Демон (Daemon)

Демон (Daemon) – фоновый процесс операционной системы Unix/Linux, работающий без взаимодействия с пользователем. Запускается при старте системы, выполняет системные сервисы (веб-серверы, базы данных, планировщики задач) и управляется через сигналы ОС или системный менеджер systemd.

Буква «Д» В категориях: 4 Платформ: 6+

Введение

Демон (Daemon) – это фоновый процесс операционной системы, работающий непрерывно без прямого взаимодействия с пользователем. Демоны запускаются автоматически при загрузке ОС и остаются активными до явной остановки или выключения системы. Они выполняют системные и сервисные задачи: ответ на сетевые запросы, управление устройствами, планирование заданий, мониторинг состояния системы.

Название «daemon» заимствовано из греческой мифологии (δαίμων – дух-помощник). В Unix-системах принято соглашение: имена демонов заканчиваются на «d» (например, httpd, sshd, crond, mysqld). В Windows аналогом являются службы Windows (Windows Services).

История и контекст

Концепция фоновых системных процессов возникла при разработке Multics и Unix в Bell Labs в конце 1960-х годов. Первые демоны обеспечивали базовые сетевые сервисы и планирование заданий. Термин «daemon» был введён командой Проекта MAC Массачусетского технологического института (MIT), вдохновившись понятием «Maxwell's demon» из физики.

В современных Linux-системах управление демонами осуществляется через системный менеджер systemd (заменил SysVinit). В контейнерных средах понятие трансформировалось: DaemonSet в Kubernetes запускает один экземпляр пода на каждом узле кластера, реализуя паттерн системного агента.

Как это работает

Жизненный цикл демона в Unix/Linux включает следующие шаги:

  1. Fork от родительского процесса – дочерний процесс отделяется.
  2. Создание новой сессии (setsid()) – разрыв связи с управляющим терминалом.
  3. Изменение рабочей директории (обычно в /) и установка umask.
  4. Перенаправление стандартных потоков (stdin/stdout/stderr) в /dev/null или лог-файл.
  5. Основной цикл обработки – ожидание событий (сигналы, сетевые запросы, таймеры) и реакция на них.

При использовании systemd демон описывается unit-файлом, определяющим тип запуска, зависимости, параметры перезапуска и ограничения ресурсов (cgroups). Управление осуществляется командами systemctl start/stop/restart/status.

Где применяется

  • Веб-серверы – nginx, Apache httpd.
  • Базы данных – mysqld, postgresql, mongod.
  • Сетевые сервисы – sshd, named (DNS), ntpd (синхронизация времени).
  • Мониторинг и сбор метрик – prometheus-node-exporter, zabbix-agent.
  • Контейнерная инфраструктура – dockerd (Docker daemon), kubelet (Kubernetes).

Преимущества и ограничения

Преимущества: непрерывная работа сервисов без участия пользователя; автоматический запуск при старте системы; изоляция системных задач от пользовательских процессов; гибкое управление через сигналы Unix и systemd.

Ограничения: потребление ресурсов даже при низкой нагрузке; сложность отладки (нет интерактивного вывода); при некорректной реализации – утечки памяти или блокировки; зависание может потребовать ручного вмешательства.

Связь с другими понятиями

Демоны тесно связаны с DaemonSet в Kubernetes – механизмом запуска агентных процессов на каждом узле кластера. В Windows аналогом служат службы Windows Services. Системный менеджер systemd управляет жизненным циклом большинства Linux-демонов через unit-файлы. Демон crond является основой автоматизации задач по расписанию в Unix. DBMS-серверы (mysqld, postgresql) являются типичным примером долгоживущих демонов.

Понятия из глоссария Цифрового маркетплейса, которые часто встречаются вместе с термином «Демон».

Платформы класса «Демон»

Решения из каталога Цифрового маркетплейса, относящиеся к этому классу ПО. Карточки ведут на полные карточки платформ с тарифами, обзорами и кейсами внедрения.

ПрограмБанк.БизнесАнализ

ПрограмБанк.БизнесАнализ

Управление предприятием
ПрограмБанк.БизнесАнализ — российская BI-платформа в архитектуре хранилища данных для финансовых организаций....
Цена по запросу
★ 4.7
Подробнее →

Категории каталога

Разделы каталога Цифрового маркетплейса, в которые входят решения, использующие «Демон».

Где применяется

Отрасли, в которых «Демон» используется на практике. Откройте отраслевой раздел Цифрового маркетплейса, чтобы увидеть подходящие решения, кейсы и новости.

Частые вопросы про Демон

Что такое демон в Unix/Linux?

Фоновый системный процесс, работающий без пользовательского интерфейса. Обеспечивает работу веб-серверов, баз данных, планировщиков и сетевых сервисов.

Почему демоны называются «daemon»?

Название взято из греческой мифологии (дух-помощник). Термин ввела команда MIT, вдохновившись понятием Maxwell's demon из физики.

Чем демон отличается от обычного процесса?

Демон не связан с управляющим терминалом, запускается при загрузке ОС и работает непрерывно в фоне без пользовательского ввода.

Что такое systemd?

Современный системный менеджер Linux, управляющий запуском, остановкой и мониторингом демонов через unit-файлы и команду systemctl.

Как связаны демоны и DaemonSet в Kubernetes?

DaemonSet – объект Kubernetes, запускающий один экземпляр пода на каждом узле кластера, реализуя тот же паттерн системного агента, что и Unix-демон.

Каков аналог демонов в Windows?

Службы Windows (Windows Services), управляемые через Service Control Manager (SCM) и запускаемые как LocalSystem или выделенные учётные записи.