Ubuntu 12.04 против Ubuntu 14.04

Короче говоря, Daemon - это фоновый процесс.

Демоны могут быть обычными программами, которые работают в фоновом режиме, однако большинство из них создаются путем запуска процесса, разворачивания его и выхода из родителя.

Чтобы развить процесс, нужно создать точную копию. Родитель этого процесса, если настоящий родитель заканчивается сразу, теперь является процессом init на /sbin/init, что является первым, что началось в каждой операционной системе, подобной Unix. Теперь этот процесс называется Daemon, у него нет TTY, связанного с ним.

Вот пример Демона в Python:

import sys, os, time

pid = os.fork()

# there now exist two processes
if pid > 0: # If this is the parent,
    sys.exit(0) # quit.

# this is the background part:
time.sleep(5)
print "Hello, World!"

Это еще не один, строго говоря. Вам также необходимо будет изменить текущий рабочий каталог, отредактировать стандартный ввод и вывод в лог-файлы и так далее. Вы можете прочитать подробные сведения в этой статье в википедии.

Если вы запустите этот пример, вы заметите, что через две секунды он будет распечатан, даже если процесс, который вы начали в командной строке, завершен , Копия этого процесса запускается «по» init сейчас.

1
задан 28 July 2014 в 12:36

0 ответов

Другие вопросы по тегам:

Похожие вопросы: