prctl - оперирует процессами
НАЗВАНИЕprctl - оперирует процессами
СИНТАКСИС
#include
int prctl(int option, unsigned long arg2, unsigned long
arg3 , unsigned long arg4, unsigned long arg5);
ОПИСАНИЕ
Первый параметр prctl задает тип операции (значения типов
заданы в , а остальные параметры зависят от
соответствующего типа. Первый аргумент может принимать
следующие значения:
PR_SET_PDEATHSIG
(начиная с Linux 2.1.57) Установить значение
сигнала, приходящего процессу при завершении работы
родительского процесса, в arg2 (это значение может
быть равным значению сигнала из интервала 1..maxsig
или нулю). Это значение удаляется после выполнения
fork().
PR_GET_PDEATHSIG
(начиная с Linux 2.3.15) Прочитать текущий номер
сигнала о завершении работы родительского процесса
в (int *) arg2.
ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ
При удачном завершении вызова возвращается нулевое
значение. При ошибке возвращается -1, а переменной errno
присваивается номер ошибки.
КОДЫ ОШИБОК
EINVAL Неизвестное значение option, или задана опция
PR_SET_PDEATHSIG , а arg2 не является нулем и
номером сигнала.
СООТВЕТСТВИЕ СТАНДАРТАМ
prctl - это функция, специфичная для Linux. Не
рекомендуется использовать ее в программах, которые должны
быть переносимыми в другие системы. В IRIX есть системный
вызов prctl (он введен в Linux (начиная с версии 2.1.44),
как irix_prctl в архитектуру MIPS), с прототипом
ptrdiff_t prctl(int option, int arg2, int arg3);
, позволяющий получить максимальное количество процессов
для каждого пользователя, максимальное количество
процессоров, которое может использовать вызывающий
процесс; определить, блокирован ли заданный процесс,
получить и установить максимальный размер стека и т.д.
ДОСТУПНОСТЬ
Системный вызов prctl() впервые был реализован в Linux
версии 2.1.57. В библиотеках вызова prctl() в данный
момент нет.