​​процесс повторного родительства: контроль над тем, кто является новым родителем.

Всегда ли новый родитель "init" или есть ли способ контролировать, кто станет новым родителем ?

Википедия, кажется, указывает, что это всегда "init" . Я очень надеюсь, что это не так. Я пробовал все, что мог придумать, с setpgid и setsid, но безуспешно. И теперь, когда я вижу эту статью в Википедии, мне нужен совет.

В Unix-подобной операционной системе любая осиротевший процесс будет немедленно принят специальной системой инициализации обработать. Эта операция называется повторное родительство и происходит автоматически. Хотя технически процесс имеет родительский процесс "init", это до сих пор называют сиротским процессом поскольку процесс, который изначально создал его больше не существует. Взято из Википедии.

Я спрашиваю, потому что я делаю приложение для Mac, которое запускает ряд рабочих процессов. Я хочу, чтобы эти рабочие процессы отображались как дочерние по отношению к главному процессу в иерархии процессов диспетчера задач . Некоторые рабочие работают как разные пользователи, и в Mac OS X мне нужно дважды выполнить форк, чтобы передать права дочернему процессу. Поскольку я выполняю двойную вилку, рабочие в настоящее время работают как демоны, и при просмотре диспетчера задач я вижу, что рабочие имеют init в качестве родительского процесса.

8
задан alk 26 September 2015 в 10:38
поделиться