KILL.2
资源名称:os_source.zip [点击查看]
上传用户:datang2001
上传日期:2007-02-01
资源大小:53269k
文件大小:2k
源码类别:
操作系统开发
开发平台:
C/C++
- ." Copyright (c) 1980 Regents of the University of California.
- ." All rights reserved. The Berkeley software License Agreement
- ." specifies the terms and conditions for redistribution.
- ."
- ." @(#)kill.2 6.5 (Berkeley) 5/14/86
- ."
- .TH KILL 2 "May 14, 1986"
- .UC 4
- .SH NAME
- kill - send signal to a process
- .SH SYNOPSIS
- .nf
- .ft B
- #include <sys/types.h>
- #include <signal.h>
- int kill(pid_t fIpidfP, int fIsigfP)
- .ft R
- .fi
- .SH DESCRIPTION
- .B Kill
- sends the signal fIsigfP
- to a process, specified by the process number
- .IR pid .
- .I Sig
- may be one of the signals specified in
- .BR 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
- .IR pid .
- .PP
- The sending and receiving processes must
- have the same effective user ID, otherwise
- this call is restricted to the super-user.
- .ig
- A single exception is the signal SIGCONT, which may always be sent
- to any descendant of the current process.
- ..
- .PP
- If the process number is 0,
- the signal is sent to all processes in the
- sender's process group.
- .PP
- If the process number is -1
- and the user is the super-user,
- the signal is broadcast universally
- except to
- .B init
- and the process sending the signal.
- If the process number is -1
- and the user is not the super-user,
- the signal is broadcast universally to
- all processes with the same uid as the user
- except the process sending the signal.
- No error is returned if any process could be signaled.
- .PP
- 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.
- .PP
- Processes may send signals to themselves.
- .SH "RETURN VALUE
- Upon successful completion, a value of 0 is returned.
- Otherwise, a value of -1 is returned and
- .B errno
- is set to indicate the error.
- .SH "ERRORS
- .B Kill
- will fail and no signal will be sent if any of the following
- occur:
- .TP 15
- [EINVAL]
- fISigfP is not a valid signal number.
- .TP 15
- [ESRCH]
- No process can be found corresponding to that specified by fIpidfP.
- .TP 15
- [ESRCH]
- The process id was given as 0
- but the sending process does not have a process group.
- .TP 15
- [EPERM]
- The sending process is not the super-user and its effective
- user id does not match the effective user-id of the receiving process.
- When signaling a process group, this error was returned if any members
- of the group could not be signaled.
- .SH "SEE ALSO"
- .BR getpid (2),
- .BR getpgrp (2),
- .BR sigaction (2),
- .BR raise (3).