Я хочу знать, каковы различия в поведении демона, процесса и службы, работающих в Ubuntu.
Я хочу знать, каковы различия в поведении демона, процесса и службы, работающих в Ubuntu.
Ответы:
Деймоны - Демон не расшифровывается как Disk и Execution Monitor ( http://www.takeourword.com/TOW146/page4.html ). Это процессы, которые работают в фоновом режиме и не являются интерактивными. У них нет управляющего терминала.
Они выполняют определенные действия в заранее определенное время или в ответ на определенные события. В * NIX имена демонов заканчиваются на d .
Сервисы - в Windows демоны называются сервисами .
Если вам интересно, почему * NIX имеет команду с именем service , она просто используется для запуска сценариев инициализации (сокращение для инициализации scriptrunlevel ).
Процесс - Процесс - это запущенная программа. В определенный момент времени это может быть либо бег , либо сон , либо зомби (завершенный процесс, но ожидающий, пока его родительский процесс не заберет возвращаемое значение).
Источники и дополнительная информация :
Демон является фон, неинтерактивная программой . Он отсоединен от клавиатуры и дисплея любого интерактивного пользователя. Слово «демон» для обозначения фоновой программы происходит из культуры Unix; это не универсально.
Услуга является программой , которая отвечает на запросы от других программ в течение некоторого межпроцессного механизма связи (обычно через сеть). Сервис - это то, что предоставляет сервер. Например, служба сопоставления портов NFS предоставляется как отдельная служба сопоставления портов, которая реализована как portmapd
демон.
Служба не обязательно должна быть демоном, но обычно это так. Пользовательское приложение с графическим интерфейсом может иметь встроенную службу: например, приложение для обмена файлами. Другим примером является служба X Window, которая работает не только в фоновом режиме: она захватывает ваш экран, клавиатуру и указывающее устройство. Это сервис, потому что он отвечает на запросы от приложений (для создания и управления окнами и т. Д.), Которые могут быть даже в других местах сети. Но служба X также реагирует на каждое нажатие клавиши и движения мыши.
Процесс - это один или несколько потоков выполнения вместе с их общим набором ресурсов, наиболее важными из которых являются адресное пространство и дескрипторы открытых файлов. Процесс создает среду для этих потоков выполнения, которая выглядит так, словно у них есть целая машина: это виртуальная машина.
Внутри процесса ресурсы других процессов и ядра невидимы и недоступны напрямую (по крайней мере, не для потока, выполняющего код пользовательского пространства). Например, нет способа сослаться на открытые файлы другого процесса или их пространство памяти; как будто эти вещи даже не существуют.
Процесс и его отношение к ядру и другим процессам, возможно, составляют наиболее важную абстракцию в Unix-подобных операционных системах. Ресурсы системы разделены на процессы, и почти все понимается как происходящее внутри того или иного процесса.