мета-данные страницы
Это старая версия документа!
IPC
IPC - inter-process communications - межпроцессное взаимодействие
signals
Сигналы - часть стандарта POSIX, удобны для межпроцессного взаимодействия в unix-like системах.
Их может посылать как пользователь программе напрямую1), так и master процесс: когда основная программа - демон, называемый worker, а сигналы ему шлет master, как, например, у ntpd и ntpdc.
Мастер должен найти процесс-воркер, что бы слать ему сигналы.
pid
PID (process identifier) - уникальный числовой идентификатор процесса. Чтобы master'у получить PID worker'а:
- Использовать команды, такие как ps или pgrep. Например, команда ps aux выводит список всех процессов с их PID, что позволяет мастеру определить, какой процесс-воркер необходимо адресовать. Но для этого надо взаимодействовать с shell'ом. Надежднее, но заморочнее.
- Прочитать его из файла2) в условленном месте, куда worker при старте записывает свой PID. Если файла в условленном месте нет - master считает, что worker не запущен.
примеры
socket
Сокеты - еще один способ межпроцессного взаимодействия. Сокеты могут быть как «локальными», использующими файловую систему, так и «сетевыми», использующими сетевые протоколы. Сокеты могут использовать различные протоколы3).
примеры
named pipe