|
|
1.1 root 1: .TH KILL 2 "27 July 1983"
2: .UC 4
3: .SH NAME
4: kill \- send signal to a process
5: .SH SYNOPSIS
6: .ft B
7: kill(pid, sig)
8: .br
9: int pid, sig;
10: .SH DESCRIPTION
11: .I Kill
12: sends the signal \fIsig\fP
13: to a process, specified by the process number
14: .IR pid .
15: .I Sig
16: may be one of the signals specified in
17: .IR sigvec (2),
18: or it may be 0, in which case
19: error checking is performed but no
20: signal is actually sent.
21: This can be used to check the validity of
22: .IR pid .
23: .PP
24: The sending and receiving processes must
25: have the same effective user ID, otherwise
26: this call is restricted to the super-user.
27: A single exception is the signal SIGCONT which may always be sent
28: to any child or grandchild of the current process.
29: .PP
30: If the process number is 0,
31: the signal is sent to all other processes in the
32: sender's process group; this is a variant of
33: .IR killpg (2).
34: .PP
35: If the process number is \-1, and the user is the super-user,
36: the signal is broadcast universally
37: except to system processes
38: and the process sending the signal.
39: .PP
40: Processes may send signals to themselves.
41: .SH "RETURN VALUE
42: Upon successful completion, a value of 0 is returned.
43: Otherwise, a value of \-1 is returned and
44: .I errno
45: is set to indicate the error.
46: .SH "ERRORS
47: .I Kill
48: will fail and no signal will be sent if any of the following
49: occur:
50: .TP 15
51: [EINVAL]
52: \fISig\fP is not a valid signal number.
53: .TP 15
54: [ESRCH]
55: No process can be found corresponding to that specified by \fIpid\fP.
56: .TP 15
57: [EPERM]
58: The sending process is not the super-user and its effective
59: user id does not match the effective user-id of the receiving process.
60: .SH "SEE ALSO"
61: getpid(2), getpgrp(2), killpg(2), sigvec(2)
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.