GNU/Linux |
RedHat 6.2(Zoot) |
|
![]() |
prctl(2) |
![]() |
prctl − operations on a process
#include <linux/prctl.h>
int prctl(int option, unsigned long arg2, unsigned long arg3 , unsigned long arg4, unsigned long arg5);
prctl is
called with a first argument describing what to do (with
values defined in <linux/prctl.h>), and further
parameters with a significance depending on the first one.
The first argument can be:
PR_SET_PDEATHSIG
(since Linux 2.1.57) Set the parent process death signal of the current process to arg2 (either a signal value in the range 1..maxsig, or 0 to clear). This is the signal that the current process will get when its parent dies. This value is cleared upon a fork().
PR_GET_PDEATHSIG
(since Linux 2.3.15) Read the current value of the parent process death signal into the (int *) arg2.
On success, zero is returned. On error, −1 is returned, and errno is set appropriately.
EINVAL |
The value of option is not recognized, or it is PR_SET_PDEATHSIG and arg2 is not zero or a signal number. |
This call is Linux-specific. IRIX has a prctl system call (also introduced in Linux 2.1.44 as irix_prctl on the MIPS architecture), with prototype
ptrdiff_t prctl(int option, int arg2, int arg3);
and options to get the maximum number of processes per user, get the maximum number of processors the calling process can use, find out whether a specified process is currently blocked, get or set the maximum stack size, etc., etc.
The prctl() systemcall was introduced in Linux 2.1.57. There is no prctl() library call as yet.
signal(2)
![]() |
prctl(2) | ![]() |