.\" This file was generated with po4a. Translate the source file.
.\"
.\"*******************************************************************
-.TH SIGACTION 2 2013\-02\-12 Linux "Linux Programmer's Manual"
+.TH SIGACTION 2 2013\-04\-19 Linux "Linux Programmer's Manual"
.SH 名前
sigaction \- シグナルの動作の確認と変更
.SH 書式
glibc 2.3.2 and earlier) */
int si_fd; /* File descriptor */
short si_addr_lsb; /* Least significant bit of address
- (since kernel 2.6.32) */
+ (since Linux 2.6.32) */
}
.fi
.in
Linux では一般的には使用されない)。 構造体の残りの部分は、共用体 (union) になっているかもしれない。
その場合は該当するシグナルにおいて意味のあるフィールドのみを読み込む ことができる。
.IP * 2
-Signals sent with \fBkill\fP(2) and \fBsigqueue\fP(3) fill in \fIsi_pid\fP and
-\fIsi_uid\fP. In addition, signals sent with \fBsigqueue\fP(3) fill in \fIsi_int\fP
-and \fIsi_ptr\fP with the values specified by the sender of the signal; see
-\fBsigqueue\fP(3) for more details.
+\fBkill\fP(2) や \fBsigqueue\fP(3) で送信されたシグナルでは \fIsi_pid\fP と \fIsi_uid\fP が設定される。
+さらに、 \fBsigqueue\fP(3) で送信されたシグナルでは \fIsi_int\fP と \fIsi_pid\fP
+にシグナルの送信者により指定された値が設定される。詳細は \fBsigqueue\fP(3) を参照。
.IP *
POSIX.1b タイマ (Linux 2.6 以降) は \fIsi_overrun\fP と \fIsi_timerid\fP を
設定する。 \fIsi_timerid\fP フィールドはカーネルがタイマを特定するのに
これは \fBtimer_getoverrun\fP(2) の呼び出しで取得できる情報と同じである。
これらのフィールドは非標準で Linux による拡張である。
.IP *
-Signals sent for message queue notification (see the description of
-\fBSIGEV_SIGNAL\fP in \fBmq_notify\fP(3)) fill in \fIsi_int\fP/\fIsi_ptr\fP, with the
-\fIsigev_value\fP supplied to \fBmq_notify\fP(3); \fIsi_pid\fP, with the process ID
-of the message sender; and \fIsi_uid\fP, with the real user ID of the message
-sender.
+メッセージキューの通知用に送信されたシグナル (\fBmq_notify\fP(3) の \fBSIGEV_SIGNAL\fP の説明を参照) では、
+\fIsi_int\fP/\fIsi_ptr\fP に \fBmq_notify\fP(3) に渡された \fIsigev_value\fP が設定される。 \fIsi_pid\fP
+にはメッセージ送信者のプロセス ID が設定され、 \fIsi_uid\fP にはメッセージ送信者の実ユーザ ID が設定される。
.IP *
.\" FIXME .
.\" When si_utime and si_stime where originally implemented, the
.\" info.si_code = exit_code;
.\" info.si_pid = task_pid_vnr(current);
.\" info.si_uid = current_uid(); /* Real UID */
-\fBSIGILL\fP, \fBSIGFPE\fP, \fBSIGSEGV\fP, \fBSIGBUS\fP, and \fBSIGTRAP\fP fill in
-\fIsi_addr\fP with the address of the fault. On some architectures, these
-signals also fill in the \fIsi_trapno\fP filed. Some suberrors of \fBSIGBUS\fP,
-in particular \fBBUS_MCEERR_AO\fP and \fBBUS_MCEERR_AR\fP, also fill in
-\fIsi_addr_lsb\fP. This field indicates the least significant bit of the
-reported address and therefore the extent of the corruption. For example,
-if a full page was corrupted, \fIsi_addr_lsb\fP contains
-\fIlog2(sysconf(_SC_PAGESIZE))\fP. \fBBUS_MCERR_*\fP and \fIsi_addr_lsb\fP are
-Linux\-specific extensions.
+\fBSIGILL\fP, \fBSIGFPE\fP, \fBSIGSEGV\fP, \fBSIGBUS\fP, \fBSIGTRAP\fP では、 \fIsi_addr\fP に
+fault が発生したアドレスが設定される。 いくつかのアーキテクチャでは \fIsi_trapno\fP も設定される。 \fBSIGBUS\fP
+が発生するエラーのいくつか、特に \fBBUS_MCEERR_AO\fP と \fBBUS_MCEERR_AR\fP では、 \fIsi_addr_lsb\fP
+も設定される。 このフィールドは報告されるアドレスの最下位ビットを示し、 これによりメモリ破壊の程度を知ることができる。
+例えば、ページ全体が壊れている場合には \fIsi_addr_lsb\fP には \fIlog2(sysconf(_SC_PAGESIZE))\fP が入る。
+\fBBUS_MCERR_*\fP と \fIsi_addr_lsb\fP は Linux 固有の拡張である。
.IP *
-\fBSIGIO\fP/\fBSIGPOLL\fP (the two names are synonyms on Linux) fills in
-\fIsi_band\fP and \fIsi_fd\fP. The \fIsi_band\fP event is a bit mask containing the
-same values as are filled in the \fIrevents\fP field by \fBpoll\fP(2). The
-\fIsi_fd\fP field indicates the file descriptor for which the I/O event
-occurred.
+\fBSIGIO\fP/\fBSIGPOLL\fP (2 つの名前は Linux では同義語) では \fIsi_band\fP と \fIsi_fd\fP が設定される。
+\fIsi_band\fP イベントは、 \fBpoll\fP(2) が \fIrevents\fP フィールドに設定するのと同じ値が入ったビットマスクである。
+\fIsi_fd\fP フィールドは I/O イベントが発生したファイルディスクリプタを示す。
.PP
-\fIsi_code\fP ã\81¯ã\80\81ã\81\9dã\81®ã\82·ã\82°ã\83\8aã\83«ã\81\8cé\80\81ä¿¡ã\81\95ã\82\8cã\81\9fç\90\86ç\94±ã\82\92示ã\81\99å\80¤ã\81§ã\81\82ã\82\8b (ã\83\93ã\83\83ã\83\88ã\83\9eã\82¹ã\82¯ã\81§ã\81¯ã\81ªã\81\84)ã\80\82 以ä¸\8bã\81®ã\83ªã\82¹ã\83\88ã\81«ã\80\81ã\81©ã\81®ã\82·ã\82°ã\83\8aã\83«ã\81®å ´å\90\88ã\81§ã\82\82
-\fIsi_code\fP に入りうる値を、シグナルが生成された理由とともに記載する。
+\fIsi_code\fP ã\81¯ã\80\81ã\81\9dã\81®ã\82·ã\82°ã\83\8aã\83«ã\81\8cé\80\81ä¿¡ã\81\95ã\82\8cã\81\9fç\90\86ç\94±ã\82\92示ã\81\99å\80¤ã\81§ã\81\82ã\82\8b (ã\83\93ã\83\83ã\83\88ã\83\9eã\82¹ã\82¯ã\81§ã\81¯ã\81ªã\81\84)ã\80\82 以ä¸\8bã\81¯ã\80\81ã\81©ã\81®ã\82·ã\82°ã\83\8aã\83«ã\81®å ´å\90\88ã\81§ã\82\82 \fIsi_code\fP
+に入りうる値のリストである。シグナルが生成された理由も記載している。
.RS 4
.TP 15
\fBSI_USER\fP
非同期 IO (AIO) が完了した
.TP
\fBSI_SIGIO\fP
-Queued \fBSIGIO\fP (only in kernels up to Linux 2.2; from Linux 2.4 onward
-\fBSIGIO\fP/\fBSIGPOLL\fP fills in \fIsi_code\fP as described below).
+\fBSIGIO\fP がキューイングされた (Linux 2.2 以下のカーネルのみ; Linux 2.4 以降では以下で説明する
+\fBSIGIO\fP/\fBSIGPOLL\fP の \fIsi_code\fP が入る)。
.TP
\fBSI_TKILL\fP
.\" SI_DETHREAD is defined in 2.6.9 sources, but isn't implemented
\fBtkill\fP(2) または \fBtgkill\fP(2) (Linux 2.4.19 以降)
.RE
.PP
-\fBSIGILL\fP ã\82·ã\82°ã\83\8aã\83«ã\81®å ´å\90\88ã\80\81 \fIsi_code\fP ã\81«ã\81¯ä»¥ä¸\8bã\81®å\80¤ã\82\92æ\8c\87å®\9aã\81§ã\81\8dる:
+\fBSIGILL\fP ã\82·ã\82°ã\83\8aã\83«ã\81®å ´å\90\88ã\80\81 \fIsi_code\fP ã\81«ã\81¯ä»¥ä¸\8bã\81®å\80¤ã\81\8cå\85¥ã\82\8bå\8f¯è\83½æ\80§ã\81\8cã\81\82る:
.RS 4
.TP 15
\fBILL_ILLOPC\fP
内部スタックエラー
.RE
.PP
-\fBSIGFPE\fP ã\82·ã\82°ã\83\8aã\83«ã\81®å ´å\90\88ã\80\81 \fIsi_code\fP ã\81«ã\81¯ä»¥ä¸\8bã\81®å\80¤ã\82\92æ\8c\87å®\9aã\81§ã\81\8dる:
+\fBSIGFPE\fP ã\82·ã\82°ã\83\8aã\83«ã\81®å ´å\90\88ã\80\81 \fIsi_code\fP ã\81«ã\81¯ä»¥ä¸\8bã\81®å\80¤ã\81\8cå\85¥ã\82\8bå\8f¯è\83½æ\80§ã\81\8cã\81\82る:
.RS 4
.TP 15
\fBFPE_INTDIV\fP
範囲外の添字 (subscript)
.RE
.PP
-\fBSIGSEGV\fP ã\82·ã\82°ã\83\8aã\83«ã\81®å ´å\90\88ã\80\81 \fIsi_code\fP ã\81«ã\81¯ä»¥ä¸\8bã\81®å\80¤ã\82\92æ\8c\87å®\9aã\81§ã\81\8dる:
+\fBSIGSEGV\fP ã\82·ã\82°ã\83\8aã\83«ã\81®å ´å\90\88ã\80\81 \fIsi_code\fP ã\81«ã\81¯ä»¥ä¸\8bã\81®å\80¤ã\81\8cå\85¥ã\82\8bå\8f¯è\83½æ\80§ã\81\8cã\81\82る:
.RS 4
.TP 15
\fBSEGV_MAPERR\fP
マッピングされたオブジェクトに対するアクセス許可がない
.RE
.PP
-\fBSIGBUS\fP ã\82·ã\82°ã\83\8aã\83«ã\81®å ´å\90\88ã\80\81 \fIsi_code\fP ã\81«ã\81¯ä»¥ä¸\8bã\81®å\80¤ã\82\92æ\8c\87å®\9aã\81§ã\81\8dる:
+\fBSIGBUS\fP ã\82·ã\82°ã\83\8aã\83«ã\81®å ´å\90\88ã\80\81 \fIsi_code\fP ã\81«ã\81¯ä»¥ä¸\8bã\81®å\80¤ã\81\8cå\85¥ã\82\8bå\8f¯è\83½æ\80§ã\81\8cã\81\82る:
.RS 4
.TP 15
\fBBUS_ADRALN\fP
オブジェクト固有のハードウェアエラー
.TP
\fBBUS_MCEERR_AR\fP (Linux 2.6.32 以降)
-Hardware memory error consumed on a machine check; action required.
+マシンチェックで使用中のハードウェアメモリのエラーが検出された。対応が必須。
.TP
\fBBUS_MCEERR_AO\fP (Linux 2.6.32 以降)
-Hardware memory error detected in process but not consumed; action optional.
+実行中にハードウェアメモリエラーが検出されたが、使用中のメモリではない。対応は必須ではない。
.RE
.PP
-\fBSIGTRAP\fP ã\82·ã\82°ã\83\8aã\83«ã\81®å ´å\90\88ã\80\81 \fIsi_code\fP ã\81«ã\81¯ä»¥ä¸\8bã\81®å\80¤ã\82\92æ\8c\87å®\9aã\81§ã\81\8dる:
+\fBSIGTRAP\fP ã\82·ã\82°ã\83\8aã\83«ã\81®å ´å\90\88ã\80\81 \fIsi_code\fP ã\81«ã\81¯ä»¥ä¸\8bã\81®å\80¤ã\81\8cå\85¥ã\82\8bå\8f¯è\83½æ\80§ã\81\8cã\81\82る:
.RS 4
.TP 15
\fBTRAP_BRKPT\fP
プロセスのトレース・トラップ
.TP
\fBTRAP_BRANCH\fP (Linux 2.4 以降)
-process taken branch trap
+プロセスのブランチ・トラップ
.TP
\fBTRAP_HWBKPT\fP (Linux 2.4 以降)
-hardware breakpoint/watchpoint
+ハードウェア・ブレークポイント/ウォッチポイント
.RE
.PP
-\fBSIGCHLD\fP ã\82·ã\82°ã\83\8aã\83«ã\81®å ´å\90\88ã\80\81 \fIsi_code\fP ã\81«ã\81¯ä»¥ä¸\8bã\81®å\80¤ã\82\92æ\8c\87å®\9aã\81§ã\81\8dる:
+\fBSIGCHLD\fP ã\82·ã\82°ã\83\8aã\83«ã\81®å ´å\90\88ã\80\81 \fIsi_code\fP ã\81«ã\81¯ä»¥ä¸\8bã\81®å\80¤ã\81\8cå\85¥ã\82\8bå\8f¯è\83½æ\80§ã\81\8cã\81\82る:
.RS 4
.TP 15
\fBCLD_EXITED\fP
停止していた子プロセスが再開した (Linux 2.6.9 以降)
.RE
.PP
-\fBSIGIO\fP/\fBSIGPOLL\fP シグナルの場合、 \fIsi_code\fP には以下の値を
-指定できる:
+\fBSIGIO\fP/\fBSIGPOLL\fP シグナルの場合、 \fIsi_code\fP には以下の値が入る可能性がある:
.RS 4
.TP 15
\fBPOLL_IN\fP
デバイスが接続されていない
.RE
.SH 返り値
-\fBsigaction\fP() は成功すれば 0 を返し、エラーならば \-1 を返す。
+\fBsigaction\fP() 関数は成功すると 0 を返す。 エラーの場合、\-1 を返し、 \fIerrno\fP にエラーを示す値をセットする。
.SH エラー
.TP
\fBEFAULT\fP
\fBsigqueue\fP(3), \fBsigsetops\fP(3), \fBsigvec\fP(3), \fBcore\fP(5),
\fBsignal\fP(7)
.SH この文書について
-この man ページは Linux \fIman\-pages\fP プロジェクトのリリース 3.50 の一部
+この man ページは Linux \fIman\-pages\fP プロジェクトのリリース 3.52 の一部
である。プロジェクトの説明とバグ報告に関する情報は
http://www.kernel.org/doc/man\-pages/ に書かれている。