kill - send signal to a process
int kill(pid_t pid, int sig);
The kill system call can be used to send any signal to any
process group or process.
If pid is positive, then signal sig is sent to pid.
If pid equals 0, then sig is sent to every process in the
process group of the current process.
If pid equals -1, then sig is sent to every process except
for the first one, from higher numbers in the process
table to lower.
If pid is less than -1, then sig is sent to every process
in the process group -pid.
If sig is 0, then no signal is sent, but error checking is
On success, zero is returned. On error, -1 is returned,
and errno is set appropriately.
EINVAL An invalid signal was specified.
ESRCH The pid or process group does not exist. Note that
an existing process might be a zombie, a process
which already committed termination, but has not
yet been wait()ed for.
EPERM The process does not have permission to send the
signal to any of the receiving processes. For a
process to have permission to send a signal to pro
cess pid it must either have root privileges, or
the real or effective user ID of the sending pro
cess must equal the real or saved set-user-ID of
the receiving process.
It is impossible to send a signal to task number one, the
init process, for which it has not installed a signal han
dler. This is done to assure the system is not brought
SVr4, SVID, POSIX.1, X/OPEN, BSD 4.3
_exit(2), exit(3), signal(2), signal(7)