--- /dev/null
+.\" Copyright (C) 2008 Michael Kerrisk <mtk.manpages@gmail.com>
+.\"
+.\" This program is free software; you can redistribute it and/or modify
+.\" it under the terms of the GNU General Public License as published by
+.\" the Free Software Foundation; either version 2 of the License, or
+.\" (at your option) any later version.
+.\"
+.\" This program is distributed in the hope that it will be useful,
+.\" but WITHOUT ANY WARRANTY; without even the implied warranty of
+.\" MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+.\" GNU General Public License for more details.
+.\"
+.\" You should have received a copy of the GNU General Public License
+.\" along with this program; if not, write to the Free Software
+.\" Foundation, Inc., 59 Temple Place, Suite 330, Boston,
+.\" MA 02111-1307 USA
+.\"
+.\" FIXME: Linux 3.0: timerfd_settime() adds a TFD_TIMER_CANCEL_ON_SET flag.
+.\"
+.\"*******************************************************************
+.\"
+.\" This file was generated with po4a. Translate the source file.
+.\"
+.\"*******************************************************************
+.TH TIMERFD_CREATE 2 2011\-09\-14 Linux "Linux Programmer's Manual"
+.SH 名前
+timerfd_create, timerfd_settime, timerfd_gettime \- ファイルディスクリプタ経由で通知するタイマー
+.SH 書式
+.nf
+\fB#include <sys/timerfd.h>\fP
+.sp
+\fBint timerfd_create(int \fP\fIclockid\fP\fB, int \fP\fIflags\fP\fB);\fP
+.sp
+\fBint timerfd_settime(int \fP\fIfd\fP\fB, int \fP\fIflags\fP\fB,\fP
+\fB const struct itimerspec *\fP\fInew_value\fP\fB,\fP
+\fB struct itimerspec *\fP\fIold_value\fP\fB);\fP
+.sp
+\fBint timerfd_gettime(int \fP\fIfd\fP\fB, struct itimerspec *\fP\fIcurr_value\fP\fB);\fP
+.fi
+.SH 説明
+これらのシステムコールは、満了通知をファイルディスクリプタ経由で配送する タイマーの生成と操作を行う。 これらは、 \fBsetitimer\fP(2) や
+\fBtimer_create\fP(2) を用いる方法の代わりとなるものであり、このファイルディスクリプタを \fBselect\fP(2),
+\fBpoll\fP(2), \fBepoll\fP(7) で監視できるという利点がある。
+
+.\"
+これらのシステムコールを使うのは、それぞれ \fBtimer_create\fP(2), \fBtimer_settime\fP(2),
+\fBtimer_gettime\fP(2) を使うのと同様である (\fBtimer_getoverrun\fP(2)
+に対応するものはなく、以下で説明するように この機能は \fBread\fP(2) により提供される)。
+.SS timerfd_create()
+\fBtimerfd_create\fP() は新規のタイマーオブジェクトを生成し、そのタイマーを参照するファイル ディスクリプタを返す。
+\fIclockid\fP 引き数は、タイマーの進捗を管理するためのクロックを指定するもので、 \fBCLOCK_REALTIME\fP か
+\fBCLOCK_MONOTONIC\fP のいずれかでなければならない。 \fBCLOCK_REALTIME\fP
+はシステム全体で使用されるクロックで、このクロックは変更可能である。 \fBCLOCK_MONOTONIC\fP
+は変更されることのないクロックで、(システム時刻の手動での変更などの) システムクロックの不連続な変化の影響を受けない。 これらのクロックの現在の値は
+\fBclock_gettime\fP(2) を使って取得できる。
+
+Linux 2.6.27 以降では、 以下の値のいくつかをビット単位の論理和 (OR) で指定することで、 \fBtimerfd_create\fP()
+の振舞いを変更することができる。
+.TP 14
+\fBTFD_NONBLOCK\fP
+新しく生成されるオープンファイル記述 (open file description) の \fBO_NONBLOCK\fP
+ファイルステータスフラグをセットする。 このフラグを使うことで、 \fBO_NONBLOCK\fP をセットするために \fBfcntl\fP(2)
+を追加で呼び出す必要がなくなる。
+.TP
+\fBTFD_CLOEXEC\fP
+新しいファイルディスクリプタに対して close\-on\-exec (\fBFD_CLOEXEC\fP) フラグをセットする。
+このフラグが役に立つ理由については、 \fBopen\fP(2) の \fBO_CLOEXEC\fP フラグの説明を参照のこと。
+.PP
+バージョン 2.6.26 以前の Linux では、 \fIflags\fP 引き数は未使用であり、0 を指定しなければならない。
+.SS timerfd_settime()
+\fBtimerfd_settime\fP() は、ファイルディスクリプタ \fIfd\fP により参照されるタイマーを開始したり停止したりする。
+
+\fInew_value\fP 引き数は、タイマーの満了時間 (expiration) の初期値と間隔 (interval) を
+指定する。この引き数で使用されている \fIitimerspec\fP 構造体には 2 つのフィールドがあり、各フィールドは \fItimespec\fP
+型の構造体である。
+.in +4n
+.nf
+
+struct timespec {
+ time_t tv_sec; /* Seconds */
+ long tv_nsec; /* Nanoseconds */
+};
+
+struct itimerspec {
+ struct timespec it_interval; /* Interval for periodic timer */
+ struct timespec it_value; /* Initial expiration */
+};
+.fi
+.in
+.PP
+\fInew_value.it_value\fP はタイマーの満了時間の初期値を、秒とナノ秒で指定する。 \fInew_value.it_value\fP
+のフィールドのうち少なくとも一方に 0 以外の値を設定すると、 タイマーが開始される。 両方のフィールドに 0 を設定すると、タイマーが停止する。
+
+\fInew_value.it_interval\fP はタイマーの一回目の満了後に繰り返しタイマーの満了間隔を、秒とナノ秒で指定する。
+\fInew_value.it_interval\fP のフィールドのうち少なくとも一方に 0 以外の値を設定すると、 繰り返しタイマーが有効になる。
+両方のフィールドに 0 を設定した場合、タイマーは \fInew_value.it_value\fP で指定された時間後に、一回だけ満了して停止する。
+
+\fIflags\fP 引き数には 0 か \fBTFD_TIMER_ABSTIME\fP を指定する。 0 は相対時刻
+タイマーを意味し、 \fInew_value.it_value\fP では \fIclockid\fP で指定された
+クロックの現在の値からの相対的な時刻を指定する。 \fBTFD_TIMER_ABSTIME\fP
+は絶対時刻タイマーを意味し、 \fInew_value.it_interval\fP では \fIclockid\fP
+で指定されたクロックの絶対時刻を指定する。
+つまり、クロックの値が \fInew_value.it_interval\fP で指定された時刻に
+達したら、タイマーが満了する。
+
+.\"
+\fIold_value\fP 引き数が NULL でない場合、 \fIold_value\fP 引き数が指す
+\fIitimerspec\fP 構造体は、 \fBtimerfd_settime\fP() を呼び出した時点での
+タイマーの設定を返すのに使用される。
+下記の \fBtimerfd_gettime\fP() の説明を参照。
+.SS timerfd_gettime()
+\fBtimerfd_gettime\fP() は、ファイルディスクリプタ \fIfd\fP で参照されるタイマーの現在の設定が入った \fIitimerspec\fP
+構造体を、 \fIcurr_value\fP に格納して返す。
+
+\fIit_value\fP フィールドは、タイマーが次に満了するまでの残り時間を返す。 この構造体の両方のフィールドが 0
+であれば、タイマーは現在停止している。 タイマー設定時に \fBTFD_TIMER_ABSTIME\fP
+フラグが指定されたかに関わらず、このフィールドは常に相対値が格納される。
+
+\fIit_interval\fP フィールドは、タイマーの間隔を返す。 この構造体の両方のフィールドが 0 であれば、タイマーは
+\fInew_value.it_value\fP で指定された時間後に一回だけ満了して停止するように設定されている。
+.SS タイマー・ファイルディスクリプタに対する操作
+\fBtimerfd_create\fP() が返すファイルディスクリプタは以下の操作をサポートしている。
+.TP
+\fBread\fP(2)
+\fBtimerfd_settime\fP() を使ってタイマーの設定が最後変更されて以降、または \fBread\fP(2)
+の呼び出しに最後に成功して以降に、タイマーの満了が一回以上発生していれば、 \fBread\fP(2) に渡されたバッファに、タイマー満了回数を示す 8
+バイトの unsigned 型の整数 (\fIuint64_t\fP) が返される (返される値はホストバイトオーダ、つまりそのホストマシンにおける
+整数の通常のバイトオーダである)。
+.IP
+\fBread\fP(2) を行った時点でタイマーの満了が発生していなければ、 \fBread\fP(2) は停止 (block)
+する、もしくはファイルディスクリプタが 非停止 (nonblocking) に設定されている場合はエラー \fBEAGAIN\fP で失敗する
+(非停止モードにするには、 \fBfcntl\fP(2) の \fBF_SETFL\fP 命令で \fBO_NONBLOCK\fP フラグをセットする)。
+.IP
+渡されたバッファの大きさが 8 バイト未満の場合、 \fBread\fP(2) はエラー \fBEINVAL\fP で失敗する。
+.TP
+\fBpoll\fP(2), \fBselect\fP(2) (と同様の操作)
+一つ以上のタイマー満了が発生していれば、 ファイルディスクリプタは読み出し可能となる (\fBselect\fP(2) の \fIreadfds\fP 引き数や
+\fBpoll\fP(2) の \fBPOLLIN\fP フラグ)。
+.IP
+このファイルディスクリプタは、他のファイルディスクリプタ多重 API である \fBpselect\fP(2), \fBppoll\fP(2),
+\fBepoll\fP(7) もサポートしている。
+.TP
+\fBclose\fP(2)
+.\"
+ファイルディスクリプタがそれ以降は必要なくなった際には、クローズすべきである。 同じ timer
+オブジェクトに関連付けられたファイルディスクリプタが全て クローズされると、そのタイマーは解除され、
+そのオブジェクト用の資源がカーネルにより解放される。
+.SS "fork(2) での扱い"
+.\"
+\fBfork\fP(2) が行われると、子プロセスは \fBtimerfd_create\fP() により生成されたファイルディスクリプタのコピーを
+継承する。そのファイルディスクリプタは、親プロセスの対応する ファイルディスクリプタと同じタイマーオブジェクトを参照しており、 子プロセスの
+\fBread\fP(2) でも同じタイマーの満了に関する情報が返される。
+.SS "execve(2) での扱い"
+\fBexecve\fP(2) の前後で \fBtimerfd_create\fP() により生成されたファイルディスクリプタは保持され、
+タイマーが開始されていた場合にはタイマーの満了が発生し続ける。
+.SH 返り値
+成功すると、 \fBtimerfd_create\fP() は新しいファイルディスクリプタを返す。 エラーの場合、\-1 を返し、 \fIerrno\fP
+にエラーを示す値を設定する。
+
+\fBtimerfd_settime\fP() と \fBtimerfd_gettime\fP() は成功すると 0 を返す。 エラーの場合、\-1 を返し、
+\fIerrno\fP にエラーを示す値を設定する。
+.SH エラー
+\fBtimerfd_create\fP() は以下のエラーで失敗する可能性がある。
+.TP
+\fBEINVAL\fP
+\fIclockid\fP 引き数が \fBCLOCK_MONOTONIC\fP でも \fBCLOCK_REALTIME\fP でもない。
+.TP
+\fBEINVAL\fP
+\fIflags\fP が無効である。もしくは、Linux 2.6.26 以前の場合には \fIflags\fP が 0 以外である。
+.TP
+\fBEMFILE\fP
+オープン済みのファイルディスクリプタの数がプロセスあたりの上限に 達していた。
+.TP
+\fBENFILE\fP
+オープン済みのファイル総数がシステム全体の上限に達していた。
+.TP
+\fBENODEV\fP
+(カーネル内の) 無名 inode デバイスをマウントできなかった。
+.TP
+\fBENOMEM\fP
+タイマーを作成するのに十分なカーネルメモリがなかった。
+.PP
+\fBtimerfd_settime\fP() と \fBtimerfd_gettime\fP() は以下のエラーで失敗する可能性がある。
+.TP
+\fBEBADF\fP
+\fIfd\fP が有効なファイルディスクリプタでない。
+.TP
+\fBEFAULT\fP
+\fInew_value\fP, \fIold_value\fP, \fIcurr_value\fP が有効なポインタではない。
+.TP
+\fBEINVAL\fP
+\fIfd\fP が有効な timerfd ファイルディスクリプタでない。
+.PP
+\fBtimerfd_settime\fP() は以下のエラーで失敗することもある。
+.TP
+\fBEINVAL\fP
+\fInew_value\fP が適切に初期化されていない (\fItv_nsec\fP の一つが 0 から 999,999,999 までの範囲に入っていない)。
+.TP
+\fBEINVAL\fP
+.\" This case only checked since 2.6.29, and 2.2.2[78].some-stable-version.
+.\" In older kernel versions, no check was made for invalid flags.
+\fIflags\fP が無効である。
+.SH バージョン
+これらのシステムコールはカーネル 2.6.25 以降の Linux で利用可能である。 ライブラリ側のサポートはバージョン 2.8 以降の glibc
+で提供されている。
+.SH 準拠
+これらのシステムコールは Linux 固有である。
+.SH 例
+以下のプログラムは、タイマーを作成し、その進捗をモニターするものである。 このプログラムは最大で 3 個のコマンドライン引き数を取り、
+第一引き数ではタイマーの満了時間の初期値 (秒数単位) を、 第二引き数ではタイマーの間隔 (秒数単位) を、
+第三引き数ではタイマーが何回満了したらプログラムが終了するかを指定する。 第二引き数と第三引き数は省略可能である。
+
+以下のシェルのセッションはこのプログラムの使用例を示したものである。
+.in +4n
+.nf
+
+$\fB a.out 3 1 100\fP
+0.000: timer started
+3.000: read: 1; total=1
+4.000: read: 1; total=2
+\fB^Z \fP # type control\-Z to suspend the program
+[1]+ Stopped ./timerfd3_demo 3 1 100
+$ \fBfg\fP # Resume execution after a few seconds
+a.out 3 1 100
+9.660: read: 5; total=7
+10.000: read: 1; total=8
+11.000: read: 1; total=9
+\fB^C \fP # type control\-C to suspend the program
+.fi
+.in
+.SS プログラムのソース
+\&
+.nf
+.\" The commented out code here is what we currently need until
+.\" the required stuff is in glibc
+.\"
+.\"
+.\"/* Link with -lrt */
+.\"#define _GNU_SOURCE
+.\"#include <sys/syscall.h>
+.\"#include <unistd.h>
+.\"#include <time.h>
+.\"#if defined(__i386__)
+.\"#define __NR_timerfd_create 322
+.\"#define __NR_timerfd_settime 325
+.\"#define __NR_timerfd_gettime 326
+.\"#endif
+.\"
+.\"static int
+.\"timerfd_create(int clockid, int flags)
+.\"{
+.\" return syscall(__NR_timerfd_create, clockid, flags);
+.\"}
+.\"
+.\"static int
+.\"timerfd_settime(int fd, int flags, struct itimerspec *new_value,
+.\" struct itimerspec *curr_value)
+.\"{
+.\" return syscall(__NR_timerfd_settime, fd, flags, new_value,
+.\" curr_value);
+.\"}
+.\"
+.\"static int
+.\"timerfd_gettime(int fd, struct itimerspec *curr_value)
+.\"{
+.\" return syscall(__NR_timerfd_gettime, fd, curr_value);
+.\"}
+.\"
+.\"#define TFD_TIMER_ABSTIME (1 << 0)
+.\"
+.\"////////////////////////////////////////////////////////////
+#include <sys/timerfd.h>
+#include <time.h>
+#include <unistd.h>
+#include <stdlib.h>
+#include <stdio.h>
+#include <stdint.h> /* Definition of uint64_t */
+
+#define handle_error(msg) \e
+ do { perror(msg); exit(EXIT_FAILURE); } while (0)
+
+static void
+print_elapsed_time(void)
+{
+ static struct timespec start;
+ struct timespec curr;
+ static int first_call = 1;
+ int secs, nsecs;
+
+ if (first_call) {
+ first_call = 0;
+ if (clock_gettime(CLOCK_MONOTONIC, &start) == \-1)
+ handle_error("clock_gettime");
+ }
+
+ if (clock_gettime(CLOCK_MONOTONIC, &curr) == \-1)
+ handle_error("clock_gettime");
+
+ secs = curr.tv_sec \- start.tv_sec;
+ nsecs = curr.tv_nsec \- start.tv_nsec;
+ if (nsecs < 0) {
+ secs\-\-;
+ nsecs += 1000000000;
+ }
+ printf("%d.%03d: ", secs, (nsecs + 500000) / 1000000);
+}
+
+int
+main(int argc, char *argv[])
+{
+ struct itimerspec new_value;
+ int max_exp, fd;
+ struct timespec now;
+ uint64_t exp, tot_exp;
+ ssize_t s;
+
+ if ((argc != 2) && (argc != 4)) {
+ fprintf(stderr, "%s init\-secs [interval\-secs max\-exp]\en",
+ argv[0]);
+ exit(EXIT_FAILURE);
+ }
+
+ if (clock_gettime(CLOCK_REALTIME, &now) == \-1)
+ handle_error("clock_gettime");
+
+ /* Create a CLOCK_REALTIME absolute timer with initial
+ expiration and interval as specified in command line */
+
+ new_value.it_value.tv_sec = now.tv_sec + atoi(argv[1]);
+ new_value.it_value.tv_nsec = now.tv_nsec;
+ if (argc == 2) {
+ new_value.it_interval.tv_sec = 0;
+ max_exp = 1;
+ } else {
+ new_value.it_interval.tv_sec = atoi(argv[2]);
+ max_exp = atoi(argv[3]);
+ }
+ new_value.it_interval.tv_nsec = 0;
+
+ fd = timerfd_create(CLOCK_REALTIME, 0);
+ if (fd == \-1)
+ handle_error("timerfd_create");
+
+ if (timerfd_settime(fd, TFD_TIMER_ABSTIME, &new_value, NULL) == \-1)
+ handle_error("timerfd_settime");
+
+ print_elapsed_time();
+ printf("timer started\en");
+
+ for (tot_exp = 0; tot_exp < max_exp;) {
+ s = read(fd, &exp, sizeof(uint64_t));
+ if (s != sizeof(uint64_t))
+ handle_error("read");
+
+ tot_exp += exp;
+ print_elapsed_time();
+ printf("read: %llu; total=%llu\en",
+ (unsigned long long) exp,
+ (unsigned long long) tot_exp);
+ }
+
+ exit(EXIT_SUCCESS);
+}
+.fi
+.SH バグ
+.\" 2.6.29
+現在のところ、 \fBtimerfd_create\fP() が対応している clockid の種類は \fBtimer_create\fP(2)
+よりも少ない。
+.SH 関連項目
+\fBeventfd\fP(2), \fBpoll\fP(2), \fBread\fP(2), \fBselect\fP(2), \fBsetitimer\fP(2),
+\fBsignalfd\fP(2), \fBtimer_create\fP(2), \fBtimer_gettime\fP(2),
+\fBtimer_settime\fP(2), \fBepoll\fP(7), \fBtime\fP(7)
+.SH この文書について
+この man ページは Linux \fIman\-pages\fP プロジェクトのリリース 3.40 の一部
+である。プロジェクトの説明とバグ報告に関する情報は
+http://www.kernel.org/doc/man\-pages/ に書かれている。
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"POT-Creation-Date: 2012-05-01 04:22+0900\n"
-"PO-Revision-Date: 2012-05-01 04:53+0900\n"
+"PO-Revision-Date: 2012-05-04 04:23+0900\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"Language: \n"
#. type: TH
#: build/C/man2/eventfd.2:21
-#, fuzzy, no-wrap
-#| msgid "2010-09-20"
+#, no-wrap
msgid "2010-08-30"
-msgstr "2010-09-20"
+msgstr "2010-08-30"
#. type: TH
#: build/C/man2/eventfd.2:21 build/C/man2/getitimer.2:7 build/C/man2/kill.2:44
#. type: Plain text
#: build/C/man2/eventfd.2:43
-#, fuzzy
-#| msgid ""
-#| "Starting with Linux 2.6.27, the following values may be bitwise ORed in "
-#| "I<flags> to change the behaviour of B<eventfd>():"
msgid ""
"The following values may be bitwise ORed in I<flags> to change the behaviour "
"of B<eventfd>():"
msgstr ""
-"Linux 2.6.27 以降では、 以下の値のいくつかをビット単位の論理和 (OR) で指定す"
-"ることで、 B<eventfd>() の振舞いを変更することができる。"
+"以下の値のいくつかをビット単位の論理和 (OR) で指定することで、\n"
+"B<eventfd>() の振舞いを変更することができる。"
#. type: TP
#: build/C/man2/eventfd.2:43
-#, fuzzy, no-wrap
-#| msgid "B<PR_SET_SECCOMP> (since Linux 2.6.23)"
+#, no-wrap
msgid "B<EFD_CLOEXEC> (since Linux 2.6.27)"
-msgstr "B<PR_SET_SECCOMP> (Linux 2.6.23 以降)"
+msgstr "B<EFD_CLOEXEC> (Linux 2.6.27 以降)"
#. type: Plain text
#: build/C/man2/eventfd.2:53 build/C/man2/signalfd.2:94
#. type: TP
#: build/C/man2/eventfd.2:53
-#, fuzzy, no-wrap
-#| msgid "B<SA_SIGINFO> (since Linux 2.2)"
+#, no-wrap
msgid "B<EFD_NONBLOCK> (since Linux 2.6.27)"
-msgstr "B<SA_SIGINFO> (Linux 2.2 以降)"
+msgstr "B<EFD_NONBLOCK> (Linux 2.6.27 以降)"
#. type: Plain text
#: build/C/man2/eventfd.2:61 build/C/man2/signalfd.2:84
#. type: TP
#: build/C/man2/eventfd.2:61
-#, fuzzy, no-wrap
-#| msgid "B<PR_SET_SECCOMP> (since Linux 2.6.23)"
+#, no-wrap
msgid "B<EFD_SEMAPHORE> (since Linux 2.6.30)"
-msgstr "B<PR_SET_SECCOMP> (Linux 2.6.23 以降)"
+msgstr "B<EFD_SEMAPHORE> (Linux 2.6.30 以降)"
#. type: Plain text
#: build/C/man2/eventfd.2:65
#. type: Plain text
#: build/C/man2/eventfd.2:85
-#, fuzzy
-#| msgid ""
-#| "A B<read>(2) will fail with the error B<EINVAL> if the size of the "
-#| "supplied buffer is less than 8 bytes."
msgid ""
"Each successful B<read>(2) returns an 8-byte integer. A B<read>(2) will "
"fail with the error B<EINVAL> if the size of the supplied buffer is less "
"than 8 bytes."
msgstr ""
-"渡されたバッファの大きさが 8 バイト未満の場合、 B<read>(2) はエラー "
-"B<EINVAL> で失敗する。"
+"B<read>(2) は成功すると、8 バイトの整数を返す。\n"
+"渡されたバッファの大きさが 8 バイト未満の場合、\n"
+"B<read>(2) はエラー B<EINVAL> で失敗する。"
#. type: Plain text
#: build/C/man2/eventfd.2:90
#. type: Plain text
#: build/C/man2/eventfd.2:105
-#, fuzzy
-#| msgid ""
-#| "If the eventfd counter has a nonzero value, then a B<read>(2) returns 8 "
-#| "bytes containing that value, and the counter's value is reset to zero. "
-#| "(The returned value is in host byte order, i.e., the native byte order "
-#| "for integers on the host machine.)"
msgid ""
"If B<EFD_SEMAPHORE> was not specified and the eventfd counter has a nonzero "
"value, then a B<read>(2) returns 8 bytes containing that value, and the "
"counter's value is reset to zero."
msgstr ""
-"eventfd カウンタが 0 以外の値の場合、 B<read>(2) はカウンタ値を格納した 8 バ"
-"ã\82¤ã\83\88ã\81®å\80¤ã\82\92è¿\94ã\81\97ã\80\81 ã\82«ã\82¦ã\83³ã\82¿å\80¤ã\81¯ 0 ã\81«ã\83ªã\82»ã\83\83ã\83\88ã\81\95ã\82\8cã\82\8b (è¿\94ã\82\8aå\80¤ã\81¯ã\83\9bã\82¹ã\83\88ã\83»ã\83\90ã\82¤ã\83\88ã\82ªã\83¼"
-"ã\83\80ã\80\81ã\81¤ã\81¾ã\82\8a ã\83\9bã\82¹ã\83\88ã\83\9eã\82·ã\83³ã\81§æ\95´æ\95°è¡¨ç\8f¾ã\81«æ\9c¬æ\9d¥ä½¿ç\94¨ã\81\95ã\82\8cã\82\8bã\83\90ã\82¤ã\83\88ã\82ªã\83¼ã\83\80ã\81§æ ¼ç´\8dã\81\95ã\82\8cã\82\8b)。"
+"B<EFD_SEMAPHORE> が指定されておらず、eventfd カウンタが 0 以外の値\n"
+"ã\81®å ´å\90\88ã\80\81 B<read>(2) ã\81¯ã\82«ã\82¦ã\83³ã\82¿å\80¤ã\82\92æ ¼ç´\8dã\81\97ã\81\9f 8 ã\83\90ã\82¤ã\83\88ã\81®å\80¤ã\82\92è¿\94ã\81\97ã\80\81\n"
+"ã\82«ã\82¦ã\83³ã\82¿å\80¤ã\81¯ 0 ã\81«ã\83ªã\82»ã\83\83ã\83\88ã\81\95ã\82\8cã\82\8b。"
#. type: Plain text
#: build/C/man2/eventfd.2:112
-#, fuzzy
-#| msgid ""
-#| "If the eventfd counter has a nonzero value, then a B<read>(2) returns 8 "
-#| "bytes containing that value, and the counter's value is reset to zero. "
-#| "(The returned value is in host byte order, i.e., the native byte order "
-#| "for integers on the host machine.)"
msgid ""
"If B<EFD_SEMAPHORE> was specified and the eventfd counter has a nonzero "
"value, then a B<read>(2) returns 8 bytes containing the value 1, and the "
"counter's value is decremented by 1."
msgstr ""
-"eventfd カウンタが 0 以外の値の場合、 B<read>(2) はカウンタ値を格納した 8 バ"
-"イトの値を返し、 カウンタ値は 0 にリセットされる (返り値はホスト・バイトオー"
-"ダ、つまり ホストマシンで整数表現に本来使用されるバイトオーダで格納される)。"
+"B<EFD_SEMAPHORE> が指定されていて eventfd カウンタが 0 以外の値の場合、\n"
+"B<read>(2) は値 1 の 8 バイト値を返し、カウンタ値は 1 減算される。"
#. type: Plain text
#: build/C/man2/eventfd.2:122
#. type: Plain text
#: build/C/man2/eventfd.2:222
-#, fuzzy
-#| msgid ""
-#| "A copy of the file descriptor created by B<eventfd>() is inherited by "
-#| "the child produced by B<fork>(2). The duplicate file descriptor is "
-#| "associated with the same eventfd object. File descriptors created by "
-#| "B<eventfd>() are preserved across B<execve>(2)."
msgid ""
"A copy of the file descriptor created by B<eventfd>() is inherited by the "
"child produced by B<fork>(2). The duplicate file descriptor is associated "
"with the same eventfd object. File descriptors created by B<eventfd>() are "
"preserved across B<execve>(2), unless the close-on-exec flag has been set."
msgstr ""
-"B<fork>(2) で生成された子プロセスは、 B<eventfd>() で生成されたファイルディ"
-"スクリプタのコピーを継承する。 複製されたファイルディスクリプタは同じ "
-"eventfd オブジェクトに関連付けられる。 B<execve>(2) の前後で B<eventfd>() "
-"で生成されたファイルディスクリプタは保持される。"
+"B<fork>(2) で生成された子プロセスは、 B<eventfd>() で生成されたファイル\n"
+"ディスクリプタのコピーを継承する。 複製されたファイルディスクリプタは同\n"
+"じ eventfd オブジェクトに関連付けられる。\n"
+"close-on-exec フラグが設定されていない場合、 B<execve>(2) の前後で\n"
+"B<eventfd>() で生成されたファイルディスクリプタは保持される。"
#. type: Plain text
#: build/C/man2/eventfd.2:229
#. type: Plain text
#: build/C/man3/gsignal.3:35
-#, fuzzy, no-wrap
-#| msgid "B<int gsignal(int>I<signum>B<);>\n"
+#, no-wrap
msgid "B<int gsignal(int >I<signum>B<);>\n"
msgstr "B<int gsignal(int >I<signum>B<);>\n"
#. type: TH
#: build/C/man2/prctl.2:48
-#, fuzzy, no-wrap
-#| msgid "2009-03-15"
+#, no-wrap
msgid "2012-04-23"
-msgstr "2009-03-15"
+msgstr "2012-04-23"
#. type: Plain text
#: build/C/man2/prctl.2:51
#. type: TP
#: build/C/man2/prctl.2:303
-#, fuzzy, no-wrap
-#| msgid "B<PR_SET_DUMPABLE> (since Linux 2.3.20)"
+#, no-wrap
msgid "B<PR_TASK_PERF_EVENTS_DISABLE> (since Linux 2.6.31)"
-msgstr "B<PR_SET_DUMPABLE> (Linux 2.3.20 以降)"
+msgstr "B<PR_TASK_PERF_EVENTS_DISABLE> (Linux 2.6.31 以降)"
#. type: Plain text
#: build/C/man2/prctl.2:312
#. type: TP
#: build/C/man2/prctl.2:318
-#, fuzzy, no-wrap
-#| msgid "B<PR_SET_NAME> (since Linux 2.6.9)"
+#, no-wrap
msgid "B<PR_TASK_PERF_EVENTS_ENABLE> (since Linux 2.6.31)"
-msgstr "B<PR_SET_NAME> (Linux 2.6.9 以降)"
+msgstr "B<PR_TASK_PERF_EVENTS_ENABLE> (Linux 2.6.31 以降)"
#. type: Plain text
#: build/C/man2/prctl.2:323
#. type: TP
#: build/C/man2/prctl.2:366
-#, fuzzy, no-wrap
-#| msgid "B<PR_CAPBSET_READ> (since Linux 2.6.25)"
+#, no-wrap
msgid "B<PR_MCE_KILL> (since Linux 2.6.32)"
-msgstr "B<PR_CAPBSET_READ> (Linux 2.6.25 以降)"
+msgstr "B<PR_MCE_KILL> (Linux 2.6.32 以降)"
#. type: Plain text
#: build/C/man2/prctl.2:406
#. type: TP
#: build/C/man2/prctl.2:406
-#, fuzzy, no-wrap
-#| msgid "B<PR_CAPBSET_READ> (since Linux 2.6.25)"
+#, no-wrap
msgid "B<PR_MCE_KILL_GET> (since Linux 2.6.32)"
-msgstr "B<PR_CAPBSET_READ> (Linux 2.6.25 以降)"
+msgstr "B<PR_MCE_KILL_GET> (Linux 2.6.32 以降)"
#. type: Plain text
#: build/C/man2/prctl.2:412
#. type: TP
#: build/C/man2/prctl.2:412
-#, fuzzy, no-wrap
-#| msgid "B<PR_SET_NAME> (since Linux 2.6.9)"
+#, no-wrap
msgid "B<PR_SET_MM> (since Linux 3.3)"
-msgstr "B<PR_SET_NAME> (Linux 2.6.9 以降)"
+msgstr "B<PR_SET_MM> (Linux 3.3 以降)"
#. type: Plain text
#: build/C/man2/prctl.2:432
#: build/C/man2/prctl.2:433
#, no-wrap
msgid "B<PR_SET_MM_START_CODE>"
-msgstr ""
+msgstr "B<PR_SET_MM_START_CODE>"
#. type: Plain text
#: build/C/man2/prctl.2:442
#: build/C/man2/prctl.2:442
#, no-wrap
msgid "B<PR_SET_MM_END_CODE>"
-msgstr ""
+msgstr "B<PR_SET_MM_END_CODE>"
#. type: Plain text
#: build/C/man2/prctl.2:447
#: build/C/man2/prctl.2:447
#, no-wrap
msgid "B<PR_SET_MM_START_DATA>"
-msgstr ""
+msgstr "B<PR_SET_MM_START_DATA>"
#. type: Plain text
#: build/C/man2/prctl.2:453
#. type: TP
#: build/C/man2/prctl.2:453
-#, fuzzy, no-wrap
-#| msgid "B<PR_SET_UNALIGN>"
+#, no-wrap
msgid "B<PR_SET_MM_END_DATA>"
-msgstr "B<PR_SET_UNALIGN>"
+msgstr "B<PR_SET_MM_END_DATA>"
#. type: Plain text
#: build/C/man2/prctl.2:459
#: build/C/man2/prctl.2:459
#, no-wrap
msgid "B<PR_SET_MM_START_STACK>"
-msgstr ""
+msgstr "B<PR_SET_MM_START_STACK>"
#. type: Plain text
#: build/C/man2/prctl.2:463
#: build/C/man2/prctl.2:463
#, no-wrap
msgid "B<PR_SET_MM_START_BRK>"
-msgstr ""
+msgstr "B<PR_SET_MM_START_BRK>"
#. type: Plain text
#: build/C/man2/prctl.2:475
#. type: TP
#: build/C/man2/prctl.2:475
-#, fuzzy, no-wrap
-#| msgid "B<PR_SET_UNALIGN>"
+#, no-wrap
msgid "B<PR_SET_MM_BRK>"
-msgstr "B<PR_SET_UNALIGN>"
+msgstr "B<PR_SET_MM_BRK>"
#. FIXME The following (until ========) is not yet in mainline kernel,
#. so commented out for the moment.
#. and secure computing mode is already 1.
#. type: Plain text
#: build/C/man2/prctl.2:720
-#, fuzzy
-#| msgid ""
-#| "I<option> is B<PR_CAPBSET_DROP>, and the caller does not have the "
-#| "B<CAP_SETPCAP> capability."
msgid ""
"I<option> is B<PR_SET_MM>, and the caller does not have the "
"B<CAP_SYS_RESOURCE> capability."
msgstr ""
-"I<option> が B<PR_CAPBSET_DROP> で、呼び出し元がケーパビリティ "
-"B<CAP_SETPCAP> を持っていない。"
+"I<option> が B<PR_SET_MM> で、呼び出し元がケーパビリティ\n"
+"B<CAP_SYS_RESOURCE> を持っていない。"
#. The library interface was added in glibc 2.0.6
#. type: Plain text
#. type: TH
#: build/C/man3/psignal.3:28
-#, fuzzy, no-wrap
-#| msgid "2008-10-06"
+#, no-wrap
msgid "2010-10-06"
-msgstr "2008-10-06"
+msgstr "2010-10-06"
#. type: TH
#: build/C/man3/psignal.3:28 build/C/man3/raise.3:27
#. type: Plain text
#: build/C/man3/psignal.3:31
-#, fuzzy
-#| msgid "psignal - print signal message"
msgid "psignal, psiginfo - print signal message"
-msgstr "psignal - シグナルメッセージを表示"
+msgstr "psignal, psiginfo - シグナルメッセージを表示"
#. type: Plain text
#: build/C/man3/psignal.3:37
-#, fuzzy, no-wrap
-#| msgid "B<void psignal(int >I<sig>B<, const char *>I<s>B<);>\n"
+#, no-wrap
msgid ""
"B<void psignal(int >I<sig>B<, const char *>I<s>B<);>\n"
"B<void psiginfo(const siginfo_t *>I<pinfo>B<, const char *>I<s>B<);>\n"
-msgstr "B<void psignal(int >I<sig>B<, const char *>I<s>B<);>\n"
+msgstr ""
+"B<void psignal(int >I<sig>B<, const char *>I<s>B<);>\n"
+"B<void psiginfo(const siginfo_t *>I<pinfo>B<, const char *>I<s>B<);>\n"
#. type: Plain text
#: build/C/man3/psignal.3:39
#. type: Plain text
#: build/C/man3/psignal.3:51
-#, fuzzy
-#| msgid ""
-#| "B<sigwaitinfo>(), B<sigtimedwait>(): _POSIX_C_SOURCE\\ E<gt>=\\ 199309L"
msgid ""
"B<psiginfo>(): _XOPEN_SOURCE\\ E<gt>=\\ 700 || _POSIX_C_SOURCE\\ E<gt>=\\ "
"200809L"
-msgstr ""
-"B<sigwaitinfo>(), B<sigtimedwait>(): _POSIX_C_SOURCE\\ E<gt>=\\ 199309L"
+msgstr "B<psiginfo>(): _XOPEN_SOURCE\\ E<gt>=\\ 700 || _POSIX_C_SOURCE\\ E<gt>=\\ 200809L"
#. type: Plain text
#: build/C/man3/psignal.3:54
#. type: Plain text
#: build/C/man3/psignal.3:63
-#, fuzzy
-#| msgid ""
-#| "The B<psignal>() function displays a message on I<stderr> consisting of "
-#| "the string I<s>, a colon, a space, and a string describing the signal "
-#| "number I<sig>. If I<sig> is invalid, the message displayed will indicate "
-#| "an unknown signal."
msgid ""
"The B<psignal>() function displays a message on I<stderr> consisting of the "
"string I<s>, a colon, a space, a string describing the signal number I<sig>, "
"space are omitted. If I<sig> is invalid, the message displayed will "
"indicate an unknown signal."
msgstr ""
-"B<psignal>() 関数は、文字列 I<s>、コロン、スペース、 シグナル番号 I<sig> を"
-"説明する文字列から構成されるメッセージを I<stderr> に表示する。もし I<sig> が"
-"不正ならば、表示される メッセージは未知のシグナルを示す。"
+"B<psignal>() 関数は、文字列 I<s>、コロン、スペース、\n"
+"シグナル番号 I<sig> を説明する文字列、終端の改行から\n"
+"構成されるメッセージを I<stderr> に表示する。\n"
+"文字列 I<s> が NULL か空の場合、コロンとスペースは省略される。\n"
+"I<sig> が不正ならば、表示される メッセージは未知のシグナルを示す。"
#. type: Plain text
#: build/C/man3/psignal.3:84
#. type: Plain text
#: build/C/man3/psignal.3:93
-#, fuzzy
-#| msgid "The B<psignal>() function returns no value."
msgid "The B<psignal>() and B<psiginfo>() functions return no value."
-msgstr "B<psignal>() 関数は、値を返さない。"
+msgstr "関数 B<psignal>() と B<psiginfo>() は、値を返さない。"
#. type: Plain text
#: build/C/man3/psignal.3:97
-#, fuzzy
-#| msgid "These functions appeared in glibc version 2.1."
msgid "The B<psiginfo>() function was added to glibc in version 2.10."
-msgstr "これらの関数は glibc 2.1 で登場した。"
+msgstr "B<psiginfo>() 関数は glibc バージョン 2.10 で追加された。"
#. type: Plain text
#: build/C/man3/psignal.3:99
#. type: Plain text
#: build/C/man3/psignal.3:103
msgid "In glibc versions up to 2.12, B<psiginfo>() had the following bugs:"
-msgstr ""
+msgstr "バージョン 2.12 までの glibc では B<psiginfo>() には以下のバグがあった。"
#. FIXME http://sourceware.org/bugzilla/show_bug.cgi?id=12107
#. Reportedly now fixed; check glibc 2.13
#. type: Plain text
#: build/C/man3/psignal.3:116
-#, fuzzy
-#| msgid "B<sigaction>(2), B<signal>(2), B<bsd_signal>(3), B<signal>(7)"
msgid "B<sigaction>(2), B<perror>(3), B<strsignal>(3), B<signal>(7)"
-msgstr "B<sigaction>(2), B<signal>(2), B<bsd_signal>(3), B<signal>(7)"
+msgstr "B<sigaction>(2), B<perror>(3), B<strsignal>(3), B<signal>(7)"
#. type: TH
#: build/C/man3/raise.3:27
#. type: TH
#: build/C/man3/raise.3:27
-#, fuzzy, no-wrap
-#| msgid "2009-03-15"
+#, no-wrap
msgid "2012-04-20"
-msgstr "2009-03-15"
+msgstr "2012-04-20"
#. type: Plain text
#: build/C/man3/raise.3:30
"if the kernel supports that system call. Older glibc versions implemented "
"B<raise>() using B<kill>(2)."
msgstr ""
+"glibc バージョン 2.3.3 以降では、カーネルが B<tgkill>(2) システムコール\n"
+"をサポートしている場合はB<raise>() は B<tgkill>(2) を使って実装されて\n"
+"いる。古いバージョンの glibc では、B<raise>() は B<kill>(2) を使って\n"
+"実装されている。"
#. type: Plain text
#: build/C/man3/raise.3:82
#. type: Plain text
#: build/C/man2/rt_sigqueueinfo.2:26
msgid "rt_sigqueueinfo, rt_tgsigqueueinfo - queue a signal and data"
-msgstr "rt_sigqueueinfo, rt_tgsigqueueinfo - queue a signal and data"
+msgstr ""
#. type: Plain text
#: build/C/man2/rt_sigqueueinfo.2:29
"thread. The receiver of the signal can obtain the accompanying data by "
"establishing a signal handler with the B<sigaction>(2) B<SA_SIGINFO> flag."
msgstr ""
-"The B<rt_sigqueueinfo>() and B<rt_tgsigqueueinfo>() system calls are the "
-"low-level interfaces used to send a signal plus data to a process or "
-"thread. The receiver of the signal can obtain the accompanying data by "
-"establishing a signal handler with the B<sigaction>(2) B<SA_SIGINFO> flag."
#. type: Plain text
#: build/C/man2/rt_sigqueueinfo.2:51
"provided to allow the implementation of B<sigqueue>(3) and "
"B<pthread_sigqueue>(3)."
msgstr ""
-"These system calls are not intended for direct application use; they are "
-"provided to allow the implementation of B<sigqueue>(3) and "
-"B<pthread_sigqueue>(3)."
#. type: Plain text
#: build/C/man2/rt_sigqueueinfo.2:63
"The signal will be delivered to an arbitrary member of the thread group (i."
"e., one of the threads that is not currently blocking the signal)."
msgstr ""
-"The B<rt_sigqueueinfo>() system call sends the signal I<sig> to the thread "
-"group with the ID I<tgid>. (The term \"thread group\" is synonymous with "
-"\"process\", and I<tid> corresponds to the traditional UNIX process ID.) "
-"The signal will be delivered to an arbitrary member of the thread group (i."
-"e., one of the threads that is not currently blocking the signal)."
#. type: Plain text
#: build/C/man2/rt_sigqueueinfo.2:74
"B<sigaction>(2) (and defined by including I<E<lt>sigaction.hE<gt>>). The "
"caller should set the following fields in this structure:"
msgstr ""
-"The I<uinfo> argument specifies the data to accompany the signal. This "
-"argument is a pointer to a structure of type I<siginfo_t>, described in "
-"B<sigaction>(2) (and defined by including I<E<lt>sigaction.hE<gt>>). The "
-"caller should set the following fields in this structure:"
#. type: TP
#: build/C/man2/rt_sigqueueinfo.2:74 build/C/man7/sigevent.7:86
"signal sent by B<kill>(2)) and cannot (since Linux 2.6.39) be B<SI_TKILL> "
"(which is used by the kernel to indicate a signal sent using B<tgkill>(2))."
msgstr ""
-"This must be one of the B<SI_*> codes in the kernel source file I<include/"
-"asm-generic/siginfo.h>, with the restriction that the code must be negative "
-"(i.e., cannot be B<SI_USER>, which is used by the kernel to indicate a "
-"signal sent by B<kill>(2)) and cannot (since Linux 2.6.39) be B<SI_TKILL> "
-"(which is used by the kernel to indicate a signal sent using B<tgkill>(2))."
#. type: TP
#: build/C/man2/rt_sigqueueinfo.2:90 build/C/man2/wait.2:294
msgid ""
"This should be set to a process ID, typically the process ID of the sender."
msgstr ""
-"This should be set to a process ID, typically the process ID of the sender."
#. type: TP
#: build/C/man2/rt_sigqueueinfo.2:94 build/C/man2/wait.2:297
msgid ""
"This should be set to a user ID, typically the real user ID of the sender."
msgstr ""
-"This should be set to a user ID, typically the real user ID of the sender."
#. type: TP
#: build/C/man2/rt_sigqueueinfo.2:98 build/C/man7/sigevent.7:94
"information, see the description of the last (I<union sigval>) argument of "
"B<sigqueue>(3)."
msgstr ""
-"This field contains the user data to accompany the signal. For more "
-"information, see the description of the last (I<union sigval>) argument of "
-"B<sigqueue>(3)."
#. type: Plain text
#: build/C/man2/rt_sigqueueinfo.2:112
"I<sig>, so that the receiver of the signal can also obtain the signal number "
"via that field."
msgstr ""
-"Internally, the kernel sets the I<si_signo> field to the value specified in "
-"I<sig>, so that the receiver of the signal can also obtain the signal number "
-"via that field."
#. type: Plain text
#: build/C/man2/rt_sigqueueinfo.2:124
-#, fuzzy
-#| msgid ""
-#| "The B<rt_tgsigueueinfo>() system call is like B<rt_sigueueinfo>(), but "
-#| "sends the signal and data to the single thread specified by the "
-#| "combination of I<tgid>, a thread group ID, and I<tid>, a thread in that "
-#| "thread group."
msgid ""
"The B<rt_tgsigqueueinfo>() system call is like B<rt_sigqueueinfo>(), but "
"sends the signal and data to the single thread specified by the combination "
"of I<tgid>, a thread group ID, and I<tid>, a thread in that thread group."
msgstr ""
-"The B<rt_tgsigueueinfo>() system call is like B<rt_sigueueinfo>(), but "
-"sends the signal and data to the single thread specified by the combination "
-"of I<tgid>, a thread group ID, and I<tid>, a thread in that thread group."
#. type: Plain text
#: build/C/man2/rt_sigqueueinfo.2:129
"On success, these system calls return 0. On error, they return -1 and "
"I<errno> is set to indicate the error."
msgstr ""
-"On success, these system calls return 0. On error, they return -1 and "
-"I<errno> is set to indicate the error."
#. type: TP
#: build/C/man2/rt_sigqueueinfo.2:130 build/C/man3/sigqueue.3:90
#. type: Plain text
#: build/C/man2/rt_sigqueueinfo.2:143
msgid "I<sig>, I<tgid>, or I<tid> was invalid."
-msgstr "I<sig>, I<tgid>, or I<tid> was invalid."
+msgstr ""
#. type: Plain text
#: build/C/man2/rt_sigqueueinfo.2:151
"the required permissions, see B<kill>(2). Or: I<uinfo-E<gt>si_code> is "
"invalid."
msgstr ""
-"The caller does not have permission to send the signal to the target. For "
-"the required permissions, see B<kill>(2). Or: I<uinfo-E<gt>si_code> is "
-"invalid."
#. type: Plain text
#: build/C/man2/rt_sigqueueinfo.2:157
-#, fuzzy
-#| msgid "B<rt_sigqueinfo>(): No thread group matching I<tgid> was found."
msgid "B<rt_sigqueueinfo>(): No thread group matching I<tgid> was found."
-msgstr "B<rt_sigqueinfo>(): No thread group matching I<tgid> was found."
+msgstr ""
#. type: Plain text
#: build/C/man2/rt_sigqueueinfo.2:164
-#, fuzzy
-#| msgid ""
-#| "B<rt_rtsigqueinfo>(): No thread matching I<tgid> and I<tid> was found."
msgid "B<rt_tgsigqueinfo>(): No thread matching I<tgid> and I<tid> was found."
-msgstr "B<rt_rtsigqueinfo>(): No thread matching I<tgid> and I<tid> was found."
+msgstr ""
#. type: Plain text
#: build/C/man2/rt_sigqueueinfo.2:171
"The B<rt_sigqueueinfo>() system call was added to Linux in version 2.2. "
"The B<rt_tgsigqueueinfo>() system call was added to Linux in version 2.6.31."
msgstr ""
-"The B<rt_sigqueueinfo>() system call was added to Linux in version 2.2. "
-"The B<rt_tgsigqueueinfo>() system call was added to Linux in version 2.6.31."
#. type: Plain text
#: build/C/man2/rt_sigqueueinfo.2:173 build/C/man2/sgetmask.2:63
"glibc wrapper functions; use B<syscall>(2) in the unlikely case that you "
"want to call them directly."
msgstr ""
-"Since these system calls are not intended for application use, there are no "
-"glibc wrapper functions; use B<syscall>(2) in the unlikely case that you "
-"want to call them directly."
#. type: Plain text
#: build/C/man2/rt_sigqueueinfo.2:183
"As with B<kill>(2), the null signal (0) can be used to check if the "
"specified process or thread exists."
msgstr ""
-"As with B<kill>(2), the null signal (0) can be used to check if the "
-"specified process or thread exists."
#. type: Plain text
#: build/C/man2/rt_sigqueueinfo.2:191
msgid ""
"B<kill>(2), B<sigaction>(2), B<sigprocmask>(2), B<tgkill>(2), "
"B<pthread_sigqueue>(3), B<sigqueue>(3), B<signal>(7)"
-msgstr ""
-"B<kill>(2), B<sigaction>(2), B<sigprocmask>(2), B<tgkill>(2), "
-"B<pthread_sigqueue>(3), B<sigqueue>(3), B<signal>(7)"
+msgstr "B<kill>(2), B<sigaction>(2), B<sigprocmask>(2), B<tgkill>(2), B<pthread_sigqueue>(3), B<sigqueue>(3), B<signal>(7)"
#. type: TH
#: build/C/man2/sgetmask.2:24
#. type: TH
#: build/C/man2/sigaction.2:45
-#, fuzzy, no-wrap
-#| msgid "2009-03-15"
+#, no-wrap
msgid "2012-04-26"
-msgstr "2009-03-15"
+msgstr "2012-04-26"
#. type: Plain text
#: build/C/man2/sigaction.2:48
#. type: Plain text
#: build/C/man2/sigaction.2:150
-#, fuzzy
-#| msgid ""
-#| "If B<SA_SIGINFO> is specified in I<sa_flags>, then I<sa_sigaction> "
-#| "(instead of I<sa_handler>) specifies the signal-handling function for "
-#| "I<signum>. This function receives the signal number as its first "
-#| "argument, a pointer to a I<siginfo_t> as its second argument and a "
-#| "pointer to a I<ucontext_t> (cast to I<void\\ *>) as its third argument."
msgid ""
"If B<SA_SIGINFO> is specified in I<sa_flags>, then I<sa_sigaction> (instead "
"of I<sa_handler>) specifies the signal-handling function for I<signum>. "
"doesn't make any use of the third argument. See B<getcontext>(2) for "
"further information about I<ucontext_t>.)"
msgstr ""
-"I<sa_flags> に B<SA_SIGINFO> が指定された場合、 (I<sa_handler> ではなく) "
-"I<sa_sigaction> により I<signum> に対応するシグナルハンドル関数が指定され"
-"る。 指定される関数は、最初の引き数としてシグナル番号を、 二番目の引き数とし"
-"て I<siginfo_t> へのポインタを、三番目の引き数として (I<void\\ *> にキャスト"
-"した) I<ucontext_t> へのポインタを受けとる。"
+"I<sa_flags> に B<SA_SIGINFO> が指定された場合、 (I<sa_handler> ではなく)\n"
+"I<sa_sigaction> により I<signum> に対応するシグナルハンドラ関数が指定さ\n"
+"れる。指定される関数は、最初の引き数としてシグナル番号を、二番目の引き\n"
+"数として I<siginfo_t> へのポインタを、三番目の引き数として (I<void\\ *>\n"
+"にキャストした) I<ucontext_t> へのポインタを受けとる。 (一般的には、\n"
+"ハンドラ関数の三番目の引き数が使用されない。I<ucontext_t> についての\n"
+"詳しい情報は B<getcontext>(2) を参照。)"
#. type: Plain text
#: build/C/man2/sigaction.2:160
#. type: TP
#: build/C/man2/sigaction.2:182
-#, fuzzy, no-wrap
-#| msgid "B<SA_NOCLDWAIT> (Since Linux 2.6)"
+#, no-wrap
msgid "B<SA_NOCLDWAIT> (since Linux 2.6)"
msgstr "B<SA_NOCLDWAIT> (Linux 2.6 以降)"
#. In the kernel: si_tid
#. type: Plain text
#: build/C/man2/sigaction.2:285
-#, fuzzy, no-wrap
-#| msgid ""
-#| "siginfo_t {\n"
-#| " int si_signo; /* Signal number */\n"
-#| " int si_errno; /* An errno value */\n"
-#| " int si_code; /* Signal code */\n"
-#| " int si_trapno; /* Trap number that caused\n"
-#| " hardware-generated signal\n"
-#| " (unused on most architectures) */\n"
-#| " pid_t si_pid; /* Sending process ID */\n"
-#| " uid_t si_uid; /* Real user ID of sending process */\n"
-#| " int si_status; /* Exit value or signal */\n"
-#| " clock_t si_utime; /* User time consumed */\n"
-#| " clock_t si_stime; /* System time consumed */\n"
-#| " sigval_t si_value; /* Signal value */\n"
-#| " int si_int; /* POSIX.1b signal */\n"
-#| " void *si_ptr; /* POSIX.1b signal */\n"
-#| " int si_overrun; /* Timer overrun count; POSIX.1b timers */\n"
-#| " int si_timerid; /* Timer ID; POSIX.1b timers */\n"
-#| " void *si_addr; /* Memory location which caused fault */\n"
-#| " int si_band; /* Band event */\n"
-#| " int si_fd; /* File descriptor */\n"
-#| "}\n"
+#, no-wrap
msgid ""
"siginfo_t {\n"
" int si_signo; /* Signal number */\n"
" int si_overrun; /* Timer overrun count; POSIX.1b timers */\n"
" int si_timerid; /* Timer ID; POSIX.1b timers */\n"
" void *si_addr; /* Memory location which caused fault */\n"
-" int si_band; /* Band event */\n"
+" long si_band; /* Band event (was I<int> in\n"
+" glibc 2.3.2 and earlier) */\n"
" int si_fd; /* File descriptor */\n"
+" short si_addr_lsb; /* Least significant bit of address\n"
+" (since kernel 2.6.32) */\n"
"}\n"
#. type: Plain text
#. type: Plain text
#: build/C/man2/sigaction.2:325
-#, fuzzy
-#| msgid ""
-#| "POSIX.1b timers (since Linux 2.6) fill in I<si_overrun> and "
-#| "I<si_timerid>. The I<si_timerid> field is an internal ID used by the "
-#| "kernel to identify the timer; it is not the same as the timer ID returned "
-#| "by B<timer_create>(2)."
msgid ""
"Signals sent by POSIX.1b timers (since Linux 2.6) fill in I<si_overrun> and "
"I<si_timerid>. The I<si_timerid> field is an internal ID used by the kernel "
"this is the same information as is obtained by a call to B<timer_getoverrun>"
"(2). These fields are nonstandard Linux extensions."
msgstr ""
-"POSIX.1b タイマ (Linux 2.6 以降) は I<si_overrun> と I<si_timerid> を設定す"
-"る。 I<si_timerid> フィールドはカーネルがタイマを特定するのに使用する内部 ID "
-"であり、 B<timer_create>(2) が返すタイマ ID と同じではない。"
+"POSIX.1b タイマ (Linux 2.6 以降) は I<si_overrun> と I<si_timerid> を\n"
+"設定する。 I<si_timerid> フィールドはカーネルがタイマを特定するのに\n"
+"使用する内部 ID であり、 B<timer_create>(2) が返すタイマ ID と同じではない。\n"
+"I<si_overrun> フィールドはタイマが回り切った回数である。\n"
+"これは B<timer_getoverrun>(2) の呼び出しで取得できる情報と同じである。\n"
+"これらのフィールドは非標準で Linux による拡張である。"
#. type: Plain text
#: build/C/man2/sigaction.2:340
#. type: TP
#: build/C/man2/sigaction.2:577
-#, fuzzy, no-wrap
-#| msgid "B<PR_CAPBSET_READ> (since Linux 2.6.25)"
+#, no-wrap
msgid "B<BUS_MCEERR_AR> (since Linux 2.6.32)"
-msgstr "B<PR_CAPBSET_READ> (Linux 2.6.25 以降)"
+msgstr "B<BUS_MCEERR_AR> (Linux 2.6.32 以降)"
#. type: Plain text
#: build/C/man2/sigaction.2:580
#. type: TP
#: build/C/man2/sigaction.2:580
-#, fuzzy, no-wrap
-#| msgid "B<PR_CAPBSET_READ> (since Linux 2.6.25)"
+#, no-wrap
msgid "B<BUS_MCEERR_AO> (since Linux 2.6.32)"
-msgstr "B<PR_CAPBSET_READ> (Linux 2.6.25 以降)"
+msgstr "B<BUS_MCEERR_AO> (Linux 2.6.32 以降)"
#. type: Plain text
#: build/C/man2/sigaction.2:583
#. type: TP
#: build/C/man2/sigaction.2:597
-#, fuzzy, no-wrap
-#| msgid "B<__WALL> (since Linux 2.4)"
+#, no-wrap
msgid "B<TRAP_BRANCH> (since Linux 2.4)"
-msgstr "B<__WALL> (Linux 2.4 以降)"
+msgstr "B<TRAP_BRANCH> (Linux 2.4 以降)"
#. type: Plain text
#: build/C/man2/sigaction.2:600
-#, fuzzy
-#| msgid "process trace trap"
msgid "process taken branch trap"
-msgstr "プロセスのトレース・トラップ"
+msgstr ""
#. type: TP
#: build/C/man2/sigaction.2:600
-#, fuzzy, no-wrap
-#| msgid "B<__WALL> (since Linux 2.4)"
+#, no-wrap
msgid "B<TRAP_HWBKPT> (since Linux 2.4)"
-msgstr "B<__WALL> (Linux 2.4 以降)"
+msgstr "B<TRAP_HWBKPT> (Linux 2.4 以降)"
#. type: Plain text
#: build/C/man2/sigaction.2:603
#. type: Plain text
#: build/C/man2/sigaction.2:636
-#, fuzzy
-#| msgid ""
-#| "The following values can be placed in I<si_code> for a B<SIGPOLL> signal:"
msgid ""
"The following values can be placed in I<si_code> for a B<SIGIO>/B<SIGPOLL> "
"signal:"
-msgstr "B<SIGPOLL> シグナルの場合、 I<si_code> には以下の値を指定できる:"
+msgstr ""
+"B<SIGIO>/B<SIGPOLL> シグナルの場合、 I<si_code> には以下の値を\n"
+"指定できる:"
#. type: TP
#: build/C/man2/sigaction.2:637
#. type: Plain text
#: build/C/man2/sigaction.2:649
-#, fuzzy
-#| msgid "i/o error"
msgid "I/O error"
msgstr "I/O エラー"
#. type: Plain text
#: build/C/man2/sigaction.2:730
-#, fuzzy
-#| msgid ""
-#| "POSIX.1-1990 only specified B<SA_NOCLDSTOP>. POSIX.1-2001 added "
-#| "B<SA_NOCLDWAIT>, B<SA_RESETHAND>, B<SA_NODEFER>, and B<SA_SIGINFO>. Use "
-#| "of these latter values in I<sa_flags> may be less portable in "
-#| "applications intended for older Unix implementations."
msgid ""
"POSIX.1-1990 only specified B<SA_NOCLDSTOP>. POSIX.1-2001 added "
"B<SA_NOCLDWAIT>, B<SA_RESETHAND>, B<SA_NODEFER>, and B<SA_SIGINFO>. Use of "
"these latter values in I<sa_flags> may be less portable in applications "
"intended for older UNIX implementations."
msgstr ""
-"POSIX.1-1990 の仕様では B<SA_NOCLDSTOP> のみが定義されている。 POSIX.1-2001 "
-"では B<SA_NOCLDWAIT>, B<SA_RESETHAND>, B<SA_NODEFER>, B<SA_SIGINFO> が追加さ"
-"れた。 Unix の古い実装で動かすアプリケーションで、 他の I<sa_flags> フラグを"
-"使用すると移植性が下がる。"
+"POSIX.1-1990 の仕様では B<SA_NOCLDSTOP> のみが定義されている。\n"
+"POSIX.1-2001 では B<SA_NOCLDWAIT>, B<SA_RESETHAND>, B<SA_NODEFER>,\n"
+"B<SA_SIGINFO> が追加された。 UNIX の古い実装で動かすアプリケーションで、\n"
+"ä»\96ã\81® I<sa_flags> ã\83\95ã\83©ã\82°ã\82\92使ç\94¨ã\81\99ã\82\8bã\81¨ç§»æ¤\8dæ\80§ã\81\8cä¸\8bã\81\8cã\82\8bã\80\82"
#. type: Plain text
#: build/C/man2/sigaction.2:734
#. type: Plain text
#: build/C/man2/sigaction.2:750
-#, fuzzy
-#| msgid ""
-#| "B<sigaction>() can be called with a null second argument to query the "
-#| "current signal handler. It can also be used to check whether a given "
-#| "signal is valid for the current machine by calling it with null second "
-#| "and third arguments."
msgid ""
"B<sigaction>() can be called with a NULL second argument to query the "
"current signal handler. It can also be used to check whether a given signal "
#. type: Plain text
#: build/C/man2/sigaction.2:806
-#, fuzzy
-#| msgid ""
-#| "B<kill>(1), B<kill>(2), B<killpg>(2), B<pause>(2), B<sigaltstack>(2), "
-#| "B<signal>(2), B<signalfd>(2), B<sigpending>(2), B<sigprocmask>(2), "
-#| "B<sigqueue>(2), B<sigsuspend>(2), B<wait>(2), B<raise>(3), B<siginterrupt>"
-#| "(3), B<sigsetops>(3), B<sigvec>(3), B<core>(5), B<signal>(7)"
msgid ""
"B<kill>(1), B<kill>(2), B<killpg>(2), B<pause>(2), B<sigaltstack>(2), "
"B<signal>(2), B<signalfd>(2), B<sigpending>(2), B<sigprocmask>(2), "
"B<sigsuspend>(2), B<wait>(2), B<raise>(3), B<siginterrupt>(3), B<sigqueue>"
"(3), B<sigsetops>(3), B<sigvec>(3), B<core>(5), B<signal>(7)"
msgstr ""
-"B<kill>(1), B<kill>(2), B<killpg>(2), B<pause>(2), B<sigaltstack>(2), "
-"B<signal>(2), B<signalfd>(2), B<sigpending>(2), B<sigprocmask>(2), "
-"B<sigqueue>(2), B<sigsuspend>(2), B<wait>(2), B<raise>(3), B<siginterrupt>"
-"(3), B<sigsetops>(3), B<sigvec>(3), B<core>(5), B<signal>(7)"
+"B<kill>(1), B<kill>(2), B<killpg>(2), B<pause>(2), B<sigaltstack>(2),\n"
+"B<signal>(2), B<signalfd>(2), B<sigpending>(2), B<sigprocmask>(2),\n"
+"B<sigsuspend>(2), B<wait>(2), B<raise>(3), B<siginterrupt>(3),\n"
+"B<sigqueue>(3), B<sigsetops>(3), B<sigvec>(3), B<core>(5),\n"
+"B<signal>(7)"
#. type: TH
#: build/C/man2/sigaltstack.2:25
#. type: TH
#: build/C/man2/sigprocmask.2:27
-#, fuzzy, no-wrap
-#| msgid "2009-03-15"
+#, no-wrap
msgid "2012-04-15"
-msgstr "2009-03-15"
+msgstr "2012-04-15"
#. type: Plain text
#: build/C/man2/sigprocmask.2:30
#. type: Plain text
#: build/C/man2/sigprocmask.2:102
-#, fuzzy
-#| msgid ""
-#| "Either I<ss> or I<oss> is not NULL and points to an area outside of the "
-#| "process's address space."
msgid ""
"the I<set> or I<oldset> argument points outside the process's allocated "
"address space."
msgstr ""
-"I<ss> または I<oss> のどちらが、NULL 以外で、 かつプロセスのアドレス空間の外"
-"を指している。"
+"引き数 I<set> か I<oldset> がプロセスに割り当てられた\n"
+"ã\82¢ã\83\89ã\83¬ã\82¹ç©ºé\96\93ã\81®å¤\96ã\82\92æ\8c\87ã\81\97ã\81¦ã\81\84ã\82\8bã\80\82"
#. type: Plain text
#: build/C/man2/sigprocmask.2:107
-#, fuzzy
-#| msgid "B<EINVAL> The value specified in I<how> was invalid."
msgid "The value specified in I<how> was invalid."
-msgstr "B<EINVAL> I<how> に指定された値が有効ではない。"
+msgstr "I<how> に指定された値が有効ではない。"
#. type: Plain text
#: build/C/man2/sigprocmask.2:113
#. type: TH
#: build/C/man3/sigqueue.3:26
-#, fuzzy, no-wrap
-#| msgid "2009-03-15"
+#, no-wrap
msgid "2012-03-25"
-msgstr "2009-03-15"
+msgstr "2012-03-25"
#. type: Plain text
#: build/C/man3/sigqueue.3:29
-#, fuzzy
-#| msgid "sigqueue, rt_sigqueueinfo - queue a signal and data to a process"
msgid "sigqueue - queue a signal and data to a process"
-msgstr "sigqueue, rt_sigqueueinfo - シグナルとデータをプロセスに送る"
+msgstr "sigqueue - シグナルとデータをプロセスに送る"
#. type: Plain text
#: build/C/man3/sigqueue.3:33
#. type: TH
#: build/C/man2/timerfd_create.2:20
-#, fuzzy, no-wrap
-#| msgid "2011-09-18"
+#, no-wrap
msgid "2011-09-14"
-msgstr "2011-09-18"
+msgstr "2011-09-14"
#. type: Plain text
#: build/C/man2/timerfd_create.2:24
#. type: Plain text
#: build/C/man2/timerfd_create.2:169
-#, fuzzy
-#| msgid ""
-#| "The I<flags> argument is either 0, to start a relative timer (I<new_value."
-#| "it_interval> specifies a time relative to the current value of the clock "
-#| "specified by I<clockid>), or B<TFD_TIMER_ABSTIME>, to start an absolute "
-#| "timer (I<new_value.it_value> specifies an absolute time for the clock "
-#| "specified by I<clockid>; that is, the timer will expire when the value of "
-#| "that clock reaches the value specified in I<new_value.it_value>)."
msgid ""
"The I<flags> argument is either 0, to start a relative timer (I<new_value."
"it_value> specifies a time relative to the current value of the clock "
"specified by I<clockid>; that is, the timer will expire when the value of "
"that clock reaches the value specified in I<new_value.it_value>)."
msgstr ""
-"I<flags> 引き数には 0 か B<TFD_TIMER_ABSTIME> を指定する。 0 は相対時刻タイ"
-"マーを意味し、 I<new_value.it_interval> では I<clockid> で指定されたクロック"
-"の現在の値からの相対的な時刻を指定する。 B<TFD_TIMER_ABSTIME> は絶対時刻タイ"
-"マーを意味し、 I<new_value.it_interval> では I<clockid> で指定されたクロック"
-"の絶対時刻を指定する。つまり、 クロックの値が I<new_value.it_interval> で指定"
-"された時刻に達したら、タイマーが満了する。"
+"I<flags> 引き数には 0 か B<TFD_TIMER_ABSTIME> を指定する。 0 は相対時刻\n"
+"タイマーを意味し、 I<new_value.it_value> では I<clockid> で指定された\n"
+"クロックの現在の値からの相対的な時刻を指定する。 B<TFD_TIMER_ABSTIME>\n"
+"は絶対時刻タイマーを意味し、 I<new_value.it_interval> では I<clockid>\n"
+"で指定されたクロックの絶対時刻を指定する。\n"
+"つまり、クロックの値が I<new_value.it_interval> で指定された時刻に\n"
+"達したら、タイマーが満了する。"
#. type: Plain text
#: build/C/man2/timerfd_create.2:180
-#, fuzzy
-#| msgid ""
-#| "The I<old_value> argument returns a structure containing the setting of "
-#| "the timer that was current at the time of the call; see the description "
-#| "of B<timerfd_gettime>() following."
msgid ""
"If the I<old_value> argument is not NULL, then the I<itimerspec> structure "
"that it points to is used to return the setting of the timer that was "
"current at the time of the call; see the description of B<timerfd_gettime>"
"() following."
msgstr ""
-"I<old_value> 引き数を通じて、 B<timerfd_settime>() を呼び出した時点でのタイ"
-"マーの設定を保持した構造体が返される。 下記の B<timerfd_gettime>() の説明を"
-"参照。"
+"I<old_value> 引き数が NULL でない場合、 I<old_value> 引き数が指す\n"
+"I<itimerspec> 構造体は、 B<timerfd_settime>() を呼び出した時点での\n"
+"タイマーの設定を返すのに使用される。\n"
+"下記の B<timerfd_gettime>() の説明を参照。"
#. type: SS
#: build/C/man2/timerfd_create.2:180
"B<fork>(2), B<getrusage>(2), B<sigaction>(2), B<signal>(2), B<wait>(2), "
"B<signal>(7)"
-#, fuzzy
-#~| msgid "2009-03-15"
-#~ msgid "2012-04-14"
-#~ msgstr "2009-03-15"
-
-#~ msgid "2008-10-17"
-#~ msgstr "2008-10-17"
-
#~ msgid "B<kill>(2) or B<raise>(3)"
#~ msgstr "B<kill>(2) または B<raise>(3)"
-#, fuzzy
-#~| msgid "2011-09-18"
-#~ msgid "2011-09-17"
-#~ msgstr "2011-09-18"
-
-#, fuzzy
-#~| msgid "2011-09-09"
-#~ msgid "2011-09-08"
-#~ msgstr "2011-09-09"
-
#~ msgid "queued SIGIO"
#~ msgstr "キューイングされた SIGIO"
#~ msgid "EXAMPLES"
#~ msgstr "例"
-#~ msgid "2009-01-26"
-#~ msgstr "2009-01-26"
-
-#~ msgid "B<EFD_NONBLOCK>"
-#~ msgstr "B<EFD_NONBLOCK>"
-
-#~ msgid "B<EFD_CLOEXEC>"
-#~ msgstr "B<EFD_CLOEXEC>"
-
-#~ msgid "2008-07-16"
-#~ msgstr "2008-07-16"
-
-#~ msgid "2008-08-21"
-#~ msgstr "2008-08-21"
-
-#~ msgid "B<perror>(3), B<strsignal>(3)"
-#~ msgstr "B<perror>(3), B<strsignal>(3)"
-
-#~ msgid "2009-07-25"
-#~ msgstr "2009-07-25"
-
#~ msgid "POSIX.1b signals and B<SIGCHLD> fill in I<si_pid> and I<si_uid>."
#~ msgstr ""
#~ "POSIX.1b シグナルと B<SIGCHLD> は I<si_pid> と I<si_uid> を設定する。"
#~ msgstr ""
#~ "B<SIGILL>, B<SIGFPE>, B<SIGSEGV>, B<SIGBUS> は I<si_addr> にエラーが発生し"
#~ "たアドレスを設定する。 SIGPOLL は I<si_band> と I<si_fd> を設定する。"
-
-#~ msgid "B<sigqueue>(2)"
-#~ msgstr "B<sigqueue>(2)"
-
-#~ msgid "2009-03-10"
-#~ msgstr "2009-03-10"