Lines Matching +full:loss +full:- +full:of +full:- +full:signal

2 .\"	The Regents of the University of California.  All rights reserved.
7 .\" 1. Redistributions of source code must retain the above copyright
8 .\" notice, this list of conditions and the following disclaimer.
10 .\" notice, this list of conditions and the following disclaimer in the
12 .\" 3. Neither the name of the University nor the names of its contributors
18 .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
21 .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
22 .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
23 .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
25 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
33 The system defines a set of \fIsignals\fP that may be delivered
34 to a process. Signal delivery resembles the occurrence of a hardware
35 interrupt: the signal is blocked from further occurrence,
38 the \fIhandler\fP to which a signal is delivered, or specify that
39 the signal is to be \fIblocked\fP or \fIignored\fP. A process may
45 may be accompanied by creation of a \fIcore\fP image file, containing
46 the current memory image of the process for use in post-mortem debugging.
52 to a process is implementation specific. Signal routines execute
53 with the signal that caused their invocation \fIblocked\fP, but other
55 of code may protect themselves against the occurrence of specified signals.
57 Signal types
59 The signals defined by the system fall into one of
63 The set of signals is defined in the file \fI<signal.h>\fP.
70 area of memory, and SIGBUS for accesses that violate memory
72 Other, more cpu-specific hardware signals exist,
73 such as those for the various customer-reserved instructions on
77 SIGINT for the normal interrupt signal; SIGQUIT for the more
78 powerful \fIquit\fP signal, that normally causes a core image
82 signal which a process cannot catch or ignore.
86 indicate the expiration of interval timers.
88 A process can request notification via a SIGIO signal
90 on a descriptor, or when a \fInon-blocking\fP operation completes.
91 A process may request to receive a SIGURG signal when an
94 A process may be \fIstopped\fP by a signal sent to it or the members
95 of its process group. The SIGSTOP signal is a powerful stop
96 signal, because it cannot be caught. Other stop signals
99 A SIGCONT signal is sent to a process when it is
101 Processes may receive notification with a SIGCHLD signal when
108 Signal handlers
110 A process has a handler associated with each signal.
111 The handler controls the way the signal is delivered.
114 #include <signal.h>
126 assigns interrupt handler address \fIsv_handler\fP to signal \fIsigno\fP.
128 specifies either an interrupt routine for the signal, that the
129 signal is to be ignored,
131 if the signal occurs.
134 cause ignoring or defaulting of a condition.
136 signal mask to be used when the handler is invoked; it implicitly includes
137 the signal which invoked the handler.
138 Signal masks include one bit for each signal;
139 the mask for a signal \fIsigno\fP is provided by the macro
140 \fIsigmask\fP(\fIsigno\fP), from \fI<signal.h>\fP.
142 restarted if the signal handler returns and
143 whether the handler should operate on the normal run-time
144 stack or a special signal stack (see below). If \fIosv\fP
145 is non-zero, the previous signal vector is returned.
147 When a signal condition arises for a process, the signal
148 is added to a set of signals pending for the process.
149 If the signal is not currently \fIblocked\fP by the process
150 then it will be delivered. The process of signal delivery
151 adds the signal to be delivered and those signals
152 specified in the associated signal
153 handler's \fIsv_mask\fP to a set of those \fImasked\fP
155 and places the process in the context of the signal
156 handling routine. The call is arranged so that if the signal
157 handling routine exits normally the signal mask will be restored
160 it must arrange to restore the signal mask itself.
162 The mask of \fIblocked\fP signals is independent of handlers for
168 The signal handling routine \fIsv_handler\fP is called by a C call
174 The \fIsigno\fP gives the number of the signal that occurred, and
175 the \fIcode\fP, a word of information supplied by the hardware.
176 The \fIscp\fP parameter is a pointer to a machine-dependent
178 context before the signal.
182 A process can send a signal to another process or group of processes
191 Unless the process sending the signal is privileged,
192 it must have the same effective user id as the process receiving the signal.
200 To block a section of code against one or more signals, a \fIsigblock\fP
201 call may be used to add a set of signals to the existing mask, returning
216 and then to pause waiting for a signal and restoring the mask, by using:
222 Signal stacks
238 process is currently on the signal stack,
241 When a signal is to be delivered, the system checks whether
242 the process is on a signal stack. If not, then the process is switched
243 to the signal stack for delivery, with the return from the signal
246 If the process wishes to take a non-local exit from the signal routine,
247 or run code from the signal stack that uses a different stack,
248 a \fIsigstack\fP call should be used to reset the signal stack.