int
kill(
pid_t pid
, int sig
)
)
function sends the signal given by
sig
to
pid
,
a
process or a group of processes.
sig
may be one of the signals specified in
sigaction(2)
or it may be 0, in which case
error checking is performed but no
signal is actually sent.
This can be used to check the validity of
pid
.
For a process to have permission to send a signal to a process designated
by
pid
,
the real or effective user ID of the receiving process must match
that of the sending process or the user must have appropriate privileges
(such as given by a set-user-ID program or the user is the super-user).
A single exception is the signal SIGCONT, which may always be sent
to any descendant of the current process.
pid
is greater than zero
sig
is sent to the process whose ID is equal to
pid
.
pid
is zero
sig
is sent to all processes whose process group ID is equal
to the process group ID of the sender, and for which the
process has permission;
this is a variant of
killpg(3).
pid
is -1For compatibility with System V, if the process number is negative but not -1, the signal is sent to all processes whose process group ID is equal to the absolute value of the process number. This is a variant of killpg(3).
)
will fail and no signal will be sent if:
EINVAL
]
sig
is not a valid signal number.
ESRCH
]
pid
.
ESRCH
]
EPERM
]
)
function is expected to conform to
ISO/IEC 9945-1:1990 (``POSIX.1'') .