⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 signal.h.html

📁 IEEE 1003.1-2003, Single Unix Specification v3
💻 HTML
📖 第 1 页 / 共 3 页
字号:
<td align="left"><p class="tent">&nbsp;</p></td><td align="left"><p class="tent">CLD_KILLED</p></td><td align="left"><p class="tent">Child has terminated abnormally and did not create a <b>core</b> file.</p></td></tr><tr valign="top"><td align="left"><p class="tent">&nbsp;</p></td><td align="left"><p class="tent">CLD_DUMPED</p></td><td align="left"><p class="tent">Child has terminated abnormally and created a <b>core</b> file.</p></td></tr><tr valign="top"><td align="left"><p class="tent">&nbsp;</p></td><td align="left"><p class="tent">CLD_TRAPPED</p></td><td align="left"><p class="tent">Traced child has trapped.</p></td></tr><tr valign="top"><td align="left"><p class="tent">&nbsp;</p></td><td align="left"><p class="tent">CLD_STOPPED</p></td><td align="left"><p class="tent">Child has stopped.</p></td></tr><tr valign="top"><td align="left"><p class="tent">&nbsp;</p></td><td align="left"><p class="tent">CLD_CONTINUED</p></td><td align="left"><p class="tent">Stopped child has continued.</p></td></tr><tr valign="top"><td align="left"><p class="tent">SIGPOLL</p></td><td align="left"><p class="tent">POLL_IN</p></td><td align="left"><p class="tent">Data input available.</p></td></tr><tr valign="top"><td align="left"><p class="tent">&nbsp;</p></td><td align="left"><p class="tent">POLL_OUT</p></td><td align="left"><p class="tent">Output buffers available.</p></td></tr><tr valign="top"><td align="left"><p class="tent">&nbsp;</p></td><td align="left"><p class="tent">POLL_MSG</p></td><td align="left"><p class="tent">Input message available.</p></td></tr><tr valign="top"><td align="left"><p class="tent">&nbsp;</p></td><td align="left"><p class="tent">POLL_ERR</p></td><td align="left"><p class="tent">I/O error.</p></td></tr><tr valign="top"><td align="left"><p class="tent">&nbsp;</p></td><td align="left"><p class="tent">POLL_PRI</p></td><td align="left"><p class="tent">High priority input available.</p></td></tr><tr valign="top"><td align="left"><p class="tent">&nbsp;</p></td><td align="left"><p class="tent">POLL_HUP</p></td><td align="left"><p class="tent">Device disconnected. <img src="../images/opt-end.gif" alt="[Option End]" border="0"></p></td></tr><tr valign="top"><td align="left"><p class="tent"><sup>[<a href="javascript:open_code('CX')">CX</a>]</sup> <img src="../images/opt-start.gif" alt="[Option Start]"border="0"> Any</p></td><td align="left"><p class="tent">SI_USER</p></td><td align="left"><p class="tent">Signal sent by <i>kill</i>().</p></td></tr><tr valign="top"><td align="left"><p class="tent">&nbsp;</p></td><td align="left"><p class="tent">SI_QUEUE</p></td><td align="left"><p class="tent">Signal sent by the <i>sigqueue</i>().</p></td></tr><tr valign="top"><td align="left"><p class="tent">&nbsp;</p></td><td align="left"><p class="tent">SI_TIMER</p></td><td align="left"><p class="tent">Signal generated by expiration of a timer set by <i>timer_settime</i>().</p></td></tr><tr valign="top"><td align="left"><p class="tent">&nbsp;</p></td><td align="left"><p class="tent">SI_ASYNCIO</p></td><td align="left"><p class="tent">Signal generated by completion of an asynchronous I/O request.</p></td></tr><tr valign="top"><td align="left"><p class="tent">&nbsp;</p></td><td align="left"><p class="tent">SI_MESGQ</p></td><td align="left"><p class="tent">Signal generated by arrival of a message on an empty messagequeue. <img src="../images/opt-end.gif" alt="[Option End]" border="0"></p></td></tr></table></center><p><sup>[<a href="javascript:open_code('XSI')">XSI</a>]</sup> <img src="../images/opt-start.gif" alt="[Option Start]" border="0">Implementations may support additional <i>si_code</i> values not included in this list, may generate values included in this listunder circumstances other than those described in this list, and may contain extensions or limitations that prevent some valuesfrom being generated. Implementations do not generate a different value from the ones described in this list for circumstancesdescribed in this list.</p><p>In addition, the following signal-specific information shall be available:</p><center><table border="1" cellpadding="3" align="center"><tr valign="top"><th align="center"><p class="tent"><b>Signal</b></p></th><th align="center"><p class="tent"><b>Member</b></p></th><th align="center"><p class="tent"><b>Value</b></p></th></tr><tr valign="top"><td align="left"><p class="tent">SIGILL</p></td><td align="left"><p class="tent"><b>void * <i>si_addr</i></b></p></td><td align="left"><p class="tent">Address of faulting instruction.</p></td></tr><tr valign="top"><td align="left"><p class="tent">SIGFPE</p></td><td align="left"><p class="tent"><b>&nbsp;</b></p></td><td align="left"><p class="tent">&nbsp;</p></td></tr><tr valign="top"><td align="left"><p class="tent">SIGSEGV</p></td><td align="left"><p class="tent"><b>void * <i>si_addr</i></b></p></td><td align="left"><p class="tent">Address of faulting memory reference.</p></td></tr><tr valign="top"><td align="left"><p class="tent">SIGBUS</p></td><td align="left"><p class="tent"><b>&nbsp;</b></p></td><td align="left"><p class="tent">&nbsp;</p></td></tr><tr valign="top"><td align="left"><p class="tent">SIGCHLD</p></td><td align="left"><p class="tent"><b>pid_t <i>si_pid</i></b></p></td><td align="left"><p class="tent">Child process ID.</p></td></tr><tr valign="top"><td align="left"><p class="tent">&nbsp;</p></td><td align="left"><p class="tent"><b>int <i>si_status</i></b></p></td><td align="left"><p class="tent">Exit value or signal.</p></td></tr><tr valign="top"><td align="left"><p class="tent">&nbsp;</p></td><td align="left"><p class="tent"><b>uid_t <i>si_uid</i></b></p></td><td align="left"><p class="tent">Real user ID of the process that sent the signal.</p></td></tr><tr valign="top"><td align="left"><p class="tent">SIGPOLL</p></td><td align="left"><p class="tent"><b>long <i>si_band</i></b></p></td><td align="left"><p class="tent">Band event for POLL_IN, POLL_OUT, or POLL_MSG.</p></td></tr></table></center><p>For some implementations, the value of <i>si_addr</i> may be inaccurate. <img src="../images/opt-end.gif" alt="[Option End]"border="0"></p><p>The following shall be declared as functions and may also be defined as macros:</p><pre><tt><sup>[<a href="javascript:open_code('XSI')">XSI</a>]</sup><img src="../images/opt-start.gif" alt="[Option Start]" border="0">void (*bsd_signal(int, void (*)(int)))(int);<img src="../images/opt-end.gif" alt="[Option End]" border="0"><sup>[<a href="javascript:open_code('CX')">CX</a>]</sup><img src="../images/opt-start.gif" alt="[Option Start]" border="0">int    kill(pid_t, int);<img src="../images/opt-end.gif" alt="[Option End]" border="0"><sup>[<a href="javascript:open_code('XSI')">XSI</a>]</sup><img src="../images/opt-start.gif" alt="[Option Start]" border="0">int    killpg(pid_t, int);<img src="../images/opt-end.gif" alt="[Option End]" border="0"><sup>[<a href="javascript:open_code('THR')">THR</a>]</sup><img src="../images/opt-start.gif" alt="[Option Start]" border="0">int    pthread_kill(pthread_t, int);int    pthread_sigmask(int, const sigset_t *, sigset_t *);<img src="../images/opt-end.gif" alt="[Option End]" border="0">int    raise(int);<sup>[<a href="javascript:open_code('CX')">CX</a>]</sup><img src="../images/opt-start.gif" alt="[Option Start]" border="0">int    sigaction(int, const struct sigaction *restrict,           struct sigaction *restrict);int    sigaddset(sigset_t *, int);<img src="../images/opt-end.gif" alt="[Option End]" border="0"><sup>[<a href="javascript:open_code('XSI')">XSI</a>]</sup><img src="../images/opt-start.gif" alt="[Option Start]" border="0">int    sigaltstack(const stack_t *restrict, stack_t *restrict);<img src="../images/opt-end.gif" alt="[Option End]" border="0"><sup>[<a href="javascript:open_code('CX')">CX</a>]</sup><img src="../images/opt-start.gif" alt="[Option Start]" border="0">int    sigdelset(sigset_t *, int);int    sigemptyset(sigset_t *);int    sigfillset(sigset_t *);<img src="../images/opt-end.gif" alt="[Option End]" border="0"><sup>[<a href="javascript:open_code('XSI')">XSI</a>]</sup><img src="../images/opt-start.gif" alt="[Option Start]" border="0">int    sighold(int);int    sigignore(int);int    siginterrupt(int, int);<img src="../images/opt-end.gif" alt="[Option End]" border="0"><sup>[<a href="javascript:open_code('CX')">CX</a>]</sup><img src="../images/opt-start.gif" alt="[Option Start]" border="0">int    sigismember(const sigset_t *, int);<img src="../images/opt-end.gif" alt="[Option End]" border="0">void (*signal(int, void (*)(int)))(int);<sup>[<a href="javascript:open_code('XSI')">XSI</a>]</sup><img src="../images/opt-start.gif" alt="[Option Start]" border="0">int    sigpause(int);<img src="../images/opt-end.gif" alt="[Option End]" border="0"><sup>[<a href="javascript:open_code('CX')">CX</a>]</sup><img src="../images/opt-start.gif" alt="[Option Start]" border="0">int    sigpending(sigset_t *);int    sigprocmask(int, const sigset_t *restrict, sigset_t *restrict);<img src="../images/opt-end.gif" alt="[Option End]" border="0"><sup>[<a href="javascript:open_code('RTS')">RTS</a>]</sup><img src="../images/opt-start.gif" alt="[Option Start]" border="0">int    sigqueue(pid_t, int, const union sigval);<img src="../images/opt-end.gif" alt="[Option End]" border="0"><sup>[<a href="javascript:open_code('XSI')">XSI</a>]</sup><img src="../images/opt-start.gif" alt="[Option Start]" border="0">int    sigrelse(int);void (*sigset(int, void (*)(int)))(int);<img src="../images/opt-end.gif" alt="[Option End]" border="0"><sup>[<a href="javascript:open_code('CX')">CX</a>]</sup><img src="../images/opt-start.gif" alt="[Option Start]" border="0">int    sigsuspend(const sigset_t *);<img src="../images/opt-end.gif" alt="[Option End]" border="0"><sup>[<a href="javascript:open_code('RTS')">RTS</a>]</sup><img src="../images/opt-start.gif" alt="[Option Start]" border="0">int    sigtimedwait(const sigset_t *restrict, siginfo_t *restrict,           const struct timespec *restrict);<img src="../images/opt-end.gif" alt="[Option End]" border="0"><sup>[<a href="javascript:open_code('CX')">CX</a>]</sup><img src="../images/opt-start.gif" alt="[Option Start]" border="0">int    sigwait(const sigset_t *restrict, int *restrict);<img src="../images/opt-end.gif" alt="[Option End]" border="0"><sup>[<a href="javascript:open_code('RTS')">RTS</a>]</sup><img src="../images/opt-start.gif" alt="[Option Start]" border="0">int    sigwaitinfo(const sigset_t *restrict, siginfo_t *restrict);<img src="../images/opt-end.gif" alt="[Option End]" border="0"></tt></pre><p><sup>[<a href="javascript:open_code('CX')">CX</a>]</sup> <img src="../images/opt-start.gif" alt="[Option Start]" border="0">Inclusion of the <i>&lt;signal.h&gt;</i> header may make visible all symbols from the <a href="../basedefs/time.h.html"><i>&lt;time.h&gt;</i></a> header. <img src="../images/opt-end.gif" alt="[Option End]" border="0"></p></blockquote><hr><div class="box"><em>The following sections are informative.</em></div><h4><a name="tag_13_43_04"></a>APPLICATION USAGE</h4><blockquote><p>None.</p></blockquote><h4><a name="tag_13_43_05"></a>RATIONALE</h4><blockquote><p>None.</p></blockquote><h4><a name="tag_13_43_06"></a>FUTURE DIRECTIONS</h4><blockquote><p>None.</p></blockquote><h4><a name="tag_13_43_07"></a>SEE ALSO</h4><blockquote><p><a href="errno.h.html"><i>&lt;errno.h&gt;</i></a> , <a href="stropts.h.html"><i>&lt;stropts.h&gt;</i></a> , <a href="sys/types.h.html"><i>&lt;sys/types.h&gt;</i></a> , <a href="time.h.html"><i>&lt;time.h&gt;</i></a> , <a href="ucontext.h.html"><i>&lt;ucontext.h&gt;</i></a> , the System Interfaces volume of IEEE&nbsp;Std&nbsp;1003.1-2001, <a href="../functions/alarm.html"><i>alarm</i>()</a>, <a href="../functions/bsd_signal.html"><i>bsd_signal</i>()</a>, <a href="../functions/ioctl.html"><i>ioctl</i>()</a>, <a href="../functions/kill.html"><i>kill</i>()</a>, <a href="../functions/killpg.html"><i>killpg</i>()</a>, <a href="../functions/raise.html"><i>raise</i>()</a>, <a href="../functions/sigaction.html"><i>sigaction</i>()</a>, <a href="../functions/sigaddset.html"><i>sigaddset</i>()</a>, <a href="../functions/sigaltstack.html"><i>sigaltstack</i>()</a>, <a href="../functions/sigdelset.html"><i>sigdelset</i>()</a>, <a href="../functions/sigemptyset.html"><i>sigemptyset</i>()</a>, <a href="../functions/sigfillset.html"><i>sigfillset</i>()</a>, <a href="../functions/siginterrupt.html"><i>siginterrupt</i>()</a>, <a href="../functions/sigismember.html"><i>sigismember</i>()</a>, <ahref="../functions/signal.html"><i>signal</i>()</a>, <a href="../functions/sigpending.html"><i>sigpending</i>()</a>, <a href="../functions/sigprocmask.html"><i>sigprocmask</i>()</a>, <a href="../functions/sigqueue.html"><i>sigqueue</i>()</a>, <a href="../functions/sigsuspend.html"><i>sigsuspend</i>()</a>, <a href="../functions/sigwaitinfo.html"><i>sigwaitinfo</i>()</a>, <a href="../functions/wait.html"><i>wait</i>()</a>, <a href="../functions/waitid.html"><i>waitid</i>()</a></p></blockquote><h4><a name="tag_13_43_08"></a>CHANGE HISTORY</h4><blockquote><p>First released in Issue 1.</p></blockquote><h4><a name="tag_13_43_09"></a>Issue 5</h4><blockquote><p>The DESCRIPTION is updated for alignment with the POSIX Realtime Extension and the POSIX Threads Extension.</p><p>The default action for SIGURG is changed from i to iii. The function prototype for <i>sigmask</i>() is removed.</p></blockquote><h4><a name="tag_13_43_10"></a>Issue 6</h4><blockquote><p>The Open Group Corrigendum U035/2 is applied. In the DESCRIPTION, the wording for abnormal termination is clarified.</p><p>The Open Group Corrigendum U028/8 is applied, correcting the prototype for the <a href="../functions/sigset.html"><i>sigset</i>()</a> function.</p><p>The Open Group Corrigendum U026/3 is applied, correcting the type of the <i>sigev_notify_function</i> function member of the<b>sigevent</b> structure.</p><p>The following new requirements on POSIX implementations derive from alignment with the Single UNIX Specification:</p><ul><li><p>The SIGCHLD, SIGCONT, SIGSTOP, SIGTSTP, SIGTTIN, and SIGTTOU signals are now mandated. This is also a FIPS requirement.</p></li><li><p>The <b>pid_t</b> definition is mandated.</p></li></ul><p>The RT markings are changed to RTS to denote that the semantics are part of the Realtime Signals Extension option.</p><p>The <b>restrict</b> keyword is added to the prototypes for <a href="../functions/sigaction.html"><i>sigaction</i>()</a>, <ahref="../functions/sigaltstack.html"><i>sigaltstack</i>()</a>, <a href="../functions/sigprocmask.html"><i>sigprocmask</i>()</a>, <ahref="../functions/sigtimedwait.html"><i>sigtimedwait</i>()</a>, <a href="../functions/sigwait.html"><i>sigwait</i>()</a>, and <ahref="../functions/sigwaitinfo.html"><i>sigwaitinfo</i>()</a>.</p><p>IEEE PASC Interpretation 1003.1 #85 is applied, adding the statement that symbols from <a href="../basedefs/time.h.html"><i>&lt;time.h&gt;</i></a> may be made visible when <i>&lt;signal.h&gt;</i> is included.</p><p>Extensions beyond the ISO&nbsp;C standard are marked.</p><p>IEEE&nbsp;Std 1003.1-2001/Cor&nbsp;1-2002, item XBD/TC1/D6/14 is applied, changing the descriptive text for members of <b>structsigaction</b>.</p><p>IEEE&nbsp;Std 1003.1-2001/Cor&nbsp;1-2002, item XBD/TC1/D6/15 is applied, correcting the definition of the <i>sa_sigaction</i>member of <b>struct sigaction</b>.</p></blockquote><div class="box"><em>End of informative text.</em></div><hr><hr size="2" noshade><center><font size="2"><!--footer start-->UNIX &reg; is a registered Trademark of The Open Group.<br>POSIX &reg; is a registered Trademark of The IEEE.<br>[ <a href="../mindex.html">Main Index</a> | <a href="../basedefs/contents.html">XBD</a> | <a href="../utilities/contents.html">XCU</a> | <a href="../functions/contents.html">XSH</a> | <a href="../xrat/contents.html">XRAT</a>]</font></center><!--footer end--><hr size="2" noshade></body></html>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -