1. Требуются разработчики и тестеры для проекта codebyOS. Требования для участия в проекте: Знание принципов работы ОС на базе Linux; Знание Bash; Крайне желательное знание CPP, Python, Lua; Навыки системного администрирования. Подробнее ...

    Скрыть объявление

Fork демона из Perl скрипта с получением Pid. Как получить правильное

Тема в разделе "Perl программирование", создана пользователем accessdenied, 26 ноя 2008.

  1. accessdenied

    accessdenied Гость

    Репутация:
    0
    Есть задача: из перлового скрипта запустить линуксового демона, записать PID и использовать его потом для остановки демона.
    Для запуска демона используется комбинация fork/exec.

    Проблема: запускаемый демон внутри себя форкает еще один процесс, отрубает ему ввод-вывод и становится собственно демоном.
    Таким образом PID, сохраненный в Perl скрипте, не соответствует реальному PID, под которым демон запустился.

    При небольшой загрузке новый номер можно посчитать, он на 1 больше.
    Но ориентироваться на это, думаю, не стоит.

    Не могу найти решения проблемы. Кажется, оно должно существовать, ведь и перлу и демонам уже много лет, кто-нибудь уже должен был этим заниматься.
     
  2. Vovochka

    Vovochka Гость

    Репутация:
    0
    Вообще-то обычно запускаемый процесс сам пишет свой пид в файл, а остальные смотрят этот файл. Что то типа /var/run/proc.pid или /tmp/proc.pid
     

Поделиться этой страницей