Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ kill(S) — OpenDesktop Software Development System 1.0.0d

Media Vault

Software Library

Restoration Projects

Artifacts Sought



     KILL(S)                   UNIX System V                   KILL(S)



     Name
          kill - send a signal to a process or a group of processes

     Syntax
          #include <signal.h>

          int kill (pid, sig)
          int pid, sig;

     Description
          The kill system call sends a signal to a process or a group
          of processes.  The process or group of processes to which
          the signal is to be sent is specified by pid.  The signal
          that is to be sent is specified by sig and is either one
          from the list given in signal(S) or 0.  If sig is 0 (the
          null signal), error checking is performed but no signal is
          actually sent.  This can be used to check the validity of
          pid.

          The real or effective user ID of the sending process must
          match the real or effective user ID of the receiving
          process, unless the effective user ID of the sending process
          is super-user.

          The processes with a process ID of 0 and a process ID of 1
          are special processes (see intro(S)) and will be referred to
          below as proc0 and proc1, respectively.

          If pid is greater than zero, sig will be sent to the process
          whose process ID is equal to pid.  pid may equal 1.

          If pid is 0, sig will be sent to all processes excluding
          proc0 and proc1 whose process group ID is equal to the
          process group ID of the sender.

          If pid is -1 and the effective user ID of the sender is not
          super-user, sig will be sent to all processes excluding
          proc0 and proc1 whose real user ID is equal to the effective
          user ID of the sender.

          If pid is -1 and the effective user ID of the sender is
          super-user, sig will be sent to all processes excluding
          proc0 and proc1.

          If pid is negative but not -1, sig will be sent to all
          processes whose process group ID is equal to the absolute
          value of pid.

          The kill system call will fail and no signal will be sent if
          one or more of the following is true:

          [EINVAL]       sig is not a valid signal number.

          [EINVAL]       sig is SIGKILL and pid is 1 (proc1).

          [ESRCH]        No process can be found corresponding to that
                         specified by pid.

          [EPERM]        The user ID of the sending process is not
                         super-user, and its real or effective user ID
                         does not match the real or effective user ID
                         of the receiving process.

     See Also
          getpid(S), setpgrp(S), signal(S), sigset(S), kill(C)

     Diagnostics
          Upon successful completion, a value of 0 is returned.
          Otherwise, a value of -1 is returned, and errno is set to
          indicate the error.

     Standards Conformance
          kill is conformant with:
          AT&T SVID Issue 2, Select Code 307-127;
          The X/Open Portability Guide II of January 1987;
          IEEE POSIX Std 1003.1-1988 with C Standard Language-
          Dependent System Support;
          and NIST FIPS 151-1.


                                             (printed 6/20/89)



Typewritten Software • bear@typewritten.org • Edmonds, WA 98026