msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
-"POT-Creation-Date: 2012-03-22 04:26+0900\n"
-"PO-Revision-Date: 2012-03-23 04:57+0900\n"
+"POT-Creation-Date: 2015-02-04 23:31+0900\n"
+"PO-Revision-Date: 2015-01-26 21:28+0900\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"Language: \n"
"Content-Transfer-Encoding: 8bit\n"
#. type: TH
-#: build/C/man3/bsd_signal.3:23
+#: build/C/man3/bsd_signal.3:25
#, no-wrap
msgid "BSD_SIGNAL"
msgstr "BSD_SIGNAL"
#. type: TH
-#: build/C/man3/bsd_signal.3:23 build/C/man2/getitimer.2:7
+#: build/C/man3/bsd_signal.3:25
#, no-wrap
-msgid "2009-03-15"
-msgstr "2009-03-15"
+msgid "2013-10-22"
+msgstr "2013-10-22"
#. type: TH
-#: build/C/man3/bsd_signal.3:23 build/C/man2/eventfd.2:21
-#: build/C/man2/getitimer.2:7 build/C/man3/gsignal.3:25 build/C/man2/kill.2:44
-#: build/C/man2/killpg.2:40 build/C/man2/pause.2:30 build/C/man2/prctl.2:46
-#: build/C/man3/profil.3:28 build/C/man3/psignal.3:28 build/C/man3/raise.3:27
-#: build/C/man2/rt_sigqueueinfo.2:23 build/C/man2/sgetmask.2:24
-#: build/C/man2/sigaction.2:45 build/C/man2/sigaltstack.2:25
-#: build/C/man7/sigevent.7:24 build/C/man3/siginterrupt.3:29
-#: build/C/man2/signal.2:34 build/C/man7/signal.7:44
-#: build/C/man2/signalfd.2:19 build/C/man3/sigpause.3:23
-#: build/C/man2/sigpending.2:27 build/C/man2/sigprocmask.2:27
-#: build/C/man3/sigqueue.3:26 build/C/man2/sigreturn.2:27
-#: build/C/man3/sigset.3:24 build/C/man3/sigsetops.3:29
-#: build/C/man2/sigsuspend.2:27 build/C/man3/sigvec.3:24
-#: build/C/man3/sigwait.3:24 build/C/man2/sigwaitinfo.2:23
-#: build/C/man3/sysv_signal.3:23 build/C/man2/timer_create.2:29
-#: build/C/man2/timer_delete.2:23 build/C/man2/timer_getoverrun.2:23
-#: build/C/man2/timer_settime.2:23 build/C/man2/timerfd_create.2:20
-#: build/C/man2/tkill.2:29 build/C/man2/wait.2:50 build/C/man2/wait4.2:34
+#: build/C/man3/bsd_signal.3:25 build/C/man2/eventfd.2:22
+#: build/C/man2/getitimer.2:12 build/C/man3/gsignal.3:27
+#: build/C/man2/kill.2:44 build/C/man2/killpg.2:42 build/C/man2/pause.2:30
+#: build/C/man2/prctl.2:54 build/C/man3/profil.3:28 build/C/man3/psignal.3:30
+#: build/C/man3/raise.3:29 build/C/man2/restart_syscall.2:33
+#: build/C/man2/rt_sigqueueinfo.2:25 build/C/man2/s390_runtime_instr.2:25
+#: build/C/man2/sgetmask.2:26 build/C/man2/sigaction.2:49
+#: build/C/man2/sigaltstack.2:27 build/C/man7/sigevent.7:26
+#: build/C/man3/siginterrupt.3:31 build/C/man2/signal.2:36
+#: build/C/man7/signal.7:46 build/C/man2/signalfd.2:20
+#: build/C/man3/sigpause.3:25 build/C/man2/sigpending.2:29
+#: build/C/man2/sigprocmask.2:29 build/C/man3/sigqueue.3:28
+#: build/C/man2/sigreturn.2:30 build/C/man3/sigset.3:26
+#: build/C/man3/sigsetops.3:31 build/C/man2/sigsuspend.2:29
+#: build/C/man3/sigvec.3:26 build/C/man3/sigwait.3:26
+#: build/C/man2/sigwaitinfo.2:25 build/C/man3/sysv_signal.3:25
+#: build/C/man2/timer_create.2:33 build/C/man2/timer_delete.2:26
+#: build/C/man2/timer_getoverrun.2:26 build/C/man2/timer_settime.2:26
+#: build/C/man2/timerfd_create.2:22 build/C/man2/tkill.2:29
+#: build/C/man2/wait.2:49 build/C/man2/wait4.2:33
#, no-wrap
msgid "Linux Programmer's Manual"
msgstr "Linux Programmer's Manual"
#. type: SH
-#: build/C/man3/bsd_signal.3:24 build/C/man2/eventfd.2:22
-#: build/C/man2/getitimer.2:8 build/C/man3/gsignal.3:26 build/C/man2/kill.2:45
-#: build/C/man2/killpg.2:41 build/C/man2/pause.2:31 build/C/man2/prctl.2:47
-#: build/C/man3/profil.3:29 build/C/man3/psignal.3:29 build/C/man3/raise.3:28
-#: build/C/man2/rt_sigqueueinfo.2:24 build/C/man2/sgetmask.2:25
-#: build/C/man2/sigaction.2:46 build/C/man2/sigaltstack.2:26
-#: build/C/man7/sigevent.7:25 build/C/man3/siginterrupt.3:30
-#: build/C/man2/signal.2:35 build/C/man7/signal.7:45
-#: build/C/man2/signalfd.2:20 build/C/man3/sigpause.3:24
-#: build/C/man2/sigpending.2:28 build/C/man2/sigprocmask.2:28
-#: build/C/man3/sigqueue.3:27 build/C/man2/sigreturn.2:28
-#: build/C/man3/sigset.3:25 build/C/man3/sigsetops.3:30
-#: build/C/man2/sigsuspend.2:28 build/C/man3/sigvec.3:25
-#: build/C/man3/sigwait.3:25 build/C/man2/sigwaitinfo.2:24
-#: build/C/man3/sysv_signal.3:24 build/C/man2/timer_create.2:30
-#: build/C/man2/timer_delete.2:24 build/C/man2/timer_getoverrun.2:24
-#: build/C/man2/timer_settime.2:24 build/C/man2/timerfd_create.2:21
-#: build/C/man2/tkill.2:30 build/C/man2/wait.2:51 build/C/man2/wait4.2:35
+#: build/C/man3/bsd_signal.3:26 build/C/man2/eventfd.2:23
+#: build/C/man2/getitimer.2:13 build/C/man3/gsignal.3:28
+#: build/C/man2/kill.2:45 build/C/man2/killpg.2:43 build/C/man2/pause.2:31
+#: build/C/man2/prctl.2:55 build/C/man3/profil.3:29 build/C/man3/psignal.3:31
+#: build/C/man3/raise.3:30 build/C/man2/restart_syscall.2:34
+#: build/C/man2/rt_sigqueueinfo.2:26 build/C/man2/s390_runtime_instr.2:26
+#: build/C/man2/sgetmask.2:27 build/C/man2/sigaction.2:50
+#: build/C/man2/sigaltstack.2:28 build/C/man7/sigevent.7:27
+#: build/C/man3/siginterrupt.3:32 build/C/man2/signal.2:37
+#: build/C/man7/signal.7:47 build/C/man2/signalfd.2:21
+#: build/C/man3/sigpause.3:26 build/C/man2/sigpending.2:30
+#: build/C/man2/sigprocmask.2:30 build/C/man3/sigqueue.3:29
+#: build/C/man2/sigreturn.2:31 build/C/man3/sigset.3:27
+#: build/C/man3/sigsetops.3:32 build/C/man2/sigsuspend.2:30
+#: build/C/man3/sigvec.3:27 build/C/man3/sigwait.3:27
+#: build/C/man2/sigwaitinfo.2:26 build/C/man3/sysv_signal.3:26
+#: build/C/man2/timer_create.2:34 build/C/man2/timer_delete.2:27
+#: build/C/man2/timer_getoverrun.2:27 build/C/man2/timer_settime.2:27
+#: build/C/man2/timerfd_create.2:23 build/C/man2/tkill.2:30
+#: build/C/man2/wait.2:50 build/C/man2/wait4.2:34
#, no-wrap
msgid "NAME"
msgstr "名前"
#. type: Plain text
-#: build/C/man3/bsd_signal.3:26
+#: build/C/man3/bsd_signal.3:28
msgid "bsd_signal - signal handling with BSD semantics"
msgstr "bsd_signal - BSD 方式のシグナル処理"
#. type: SH
-#: build/C/man3/bsd_signal.3:26 build/C/man2/eventfd.2:24
-#: build/C/man2/getitimer.2:10 build/C/man3/gsignal.3:28
-#: build/C/man2/kill.2:47 build/C/man2/killpg.2:43 build/C/man2/pause.2:33
-#: build/C/man2/prctl.2:49 build/C/man3/profil.3:31 build/C/man3/psignal.3:31
-#: build/C/man3/raise.3:30 build/C/man2/rt_sigqueueinfo.2:26
-#: build/C/man2/sgetmask.2:27 build/C/man2/sigaction.2:48
-#: build/C/man2/sigaltstack.2:28 build/C/man7/sigevent.7:27
-#: build/C/man3/siginterrupt.3:32 build/C/man2/signal.2:37
-#: build/C/man2/signalfd.2:22 build/C/man3/sigpause.3:26
-#: build/C/man2/sigpending.2:30 build/C/man2/sigprocmask.2:30
-#: build/C/man3/sigqueue.3:29 build/C/man2/sigreturn.2:30
-#: build/C/man3/sigset.3:27 build/C/man3/sigsetops.3:33
-#: build/C/man2/sigsuspend.2:30 build/C/man3/sigvec.3:27
-#: build/C/man3/sigwait.3:27 build/C/man2/sigwaitinfo.2:26
-#: build/C/man3/sysv_signal.3:26 build/C/man2/timer_create.2:32
-#: build/C/man2/timer_delete.2:26 build/C/man2/timer_getoverrun.2:26
-#: build/C/man2/timer_settime.2:27 build/C/man2/timerfd_create.2:24
-#: build/C/man2/tkill.2:32 build/C/man2/wait.2:53 build/C/man2/wait4.2:37
+#: build/C/man3/bsd_signal.3:28 build/C/man2/eventfd.2:25
+#: build/C/man2/getitimer.2:15 build/C/man3/gsignal.3:30
+#: build/C/man2/kill.2:47 build/C/man2/killpg.2:45 build/C/man2/pause.2:33
+#: build/C/man2/prctl.2:57 build/C/man3/profil.3:31 build/C/man3/psignal.3:33
+#: build/C/man3/raise.3:32 build/C/man2/restart_syscall.2:36
+#: build/C/man2/rt_sigqueueinfo.2:28 build/C/man2/s390_runtime_instr.2:28
+#: build/C/man2/sgetmask.2:29 build/C/man2/sigaction.2:52
+#: build/C/man2/sigaltstack.2:30 build/C/man7/sigevent.7:29
+#: build/C/man3/siginterrupt.3:34 build/C/man2/signal.2:39
+#: build/C/man2/signalfd.2:23 build/C/man3/sigpause.3:28
+#: build/C/man2/sigpending.2:32 build/C/man2/sigprocmask.2:32
+#: build/C/man3/sigqueue.3:31 build/C/man2/sigreturn.2:33
+#: build/C/man3/sigset.3:29 build/C/man3/sigsetops.3:35
+#: build/C/man2/sigsuspend.2:32 build/C/man3/sigvec.3:29
+#: build/C/man3/sigwait.3:29 build/C/man2/sigwaitinfo.2:28
+#: build/C/man3/sysv_signal.3:28 build/C/man2/timer_create.2:36
+#: build/C/man2/timer_delete.2:29 build/C/man2/timer_getoverrun.2:29
+#: build/C/man2/timer_settime.2:30 build/C/man2/timerfd_create.2:26
+#: build/C/man2/tkill.2:32 build/C/man2/wait.2:52 build/C/man2/wait4.2:36
#, no-wrap
msgid "SYNOPSIS"
msgstr "書式"
#. type: Plain text
-#: build/C/man3/bsd_signal.3:28
+#: build/C/man3/bsd_signal.3:30
msgid "B<#define _XOPEN_SOURCE> /* See feature_test_macros(7) */"
msgstr "B<#define _XOPEN_SOURCE> /* feature_test_macros(7) 参照 */"
#. type: Plain text
-#: build/C/man3/bsd_signal.3:30 build/C/man2/killpg.2:45
-#: build/C/man2/sigaltstack.2:30 build/C/man2/signal.2:39
-#: build/C/man2/sigpending.2:32 build/C/man2/sigprocmask.2:32
-#: build/C/man3/sigqueue.3:31 build/C/man3/sigset.3:29
-#: build/C/man3/sigsetops.3:35 build/C/man2/sigsuspend.2:32
-#: build/C/man3/sigvec.3:29 build/C/man3/sysv_signal.3:30
+#: build/C/man3/bsd_signal.3:32 build/C/man2/killpg.2:47
+#: build/C/man2/sigaltstack.2:32 build/C/man2/signal.2:41
+#: build/C/man2/sigpending.2:34 build/C/man2/sigprocmask.2:34
+#: build/C/man3/sigqueue.3:33 build/C/man3/sigset.3:31
+#: build/C/man3/sigsetops.3:37 build/C/man2/sigsuspend.2:34
+#: build/C/man3/sigvec.3:31 build/C/man3/sysv_signal.3:32
msgid "B<#include E<lt>signal.hE<gt>>"
msgstr "B<#include E<lt>signal.hE<gt>>"
#. type: Plain text
-#: build/C/man3/bsd_signal.3:32 build/C/man2/signal.2:41
-#: build/C/man3/sigset.3:31 build/C/man3/sysv_signal.3:32
+#: build/C/man3/bsd_signal.3:34 build/C/man2/signal.2:43
+#: build/C/man3/sigset.3:33 build/C/man3/sysv_signal.3:34
msgid "B<typedef void (*sighandler_t)(int);>"
msgstr "B<typedef void (*sighandler_t)(int);>"
#. type: Plain text
-#: build/C/man3/bsd_signal.3:34
+#: build/C/man3/bsd_signal.3:36
msgid ""
"B<sighandler_t bsd_signal(int >I<signum>B<, sighandler_t >I<handler>B<);>"
msgstr ""
"B<sighandler_t bsd_signal(int >I<signum>B<, sighandler_t >I<handler>B<);>"
#. type: SH
-#: build/C/man3/bsd_signal.3:34 build/C/man2/eventfd.2:28
-#: build/C/man2/getitimer.2:19 build/C/man3/gsignal.3:47
-#: build/C/man2/kill.2:65 build/C/man2/killpg.2:59 build/C/man2/pause.2:37
-#: build/C/man2/prctl.2:56 build/C/man3/profil.3:44 build/C/man3/psignal.3:54
-#: build/C/man3/raise.3:36 build/C/man2/rt_sigqueueinfo.2:33
-#: build/C/man2/sgetmask.2:31 build/C/man2/sigaction.2:65
-#: build/C/man2/sigaltstack.2:49 build/C/man7/sigevent.7:50
-#: build/C/man3/siginterrupt.3:53 build/C/man2/signal.2:43
-#: build/C/man7/signal.7:47 build/C/man2/signalfd.2:26
-#: build/C/man3/sigpause.3:34 build/C/man2/sigpending.2:44
-#: build/C/man2/sigprocmask.2:45 build/C/man3/sigqueue.3:41
-#: build/C/man2/sigreturn.2:32 build/C/man3/sigset.3:56
-#: build/C/man3/sigsetops.3:61 build/C/man2/sigsuspend.2:44
-#: build/C/man3/sigvec.3:47 build/C/man3/sigwait.3:43
-#: build/C/man2/sigwaitinfo.2:44 build/C/man3/sysv_signal.3:34
-#: build/C/man2/timer_create.2:50 build/C/man2/timer_delete.2:42
-#: build/C/man2/timer_getoverrun.2:42 build/C/man2/timer_settime.2:47
-#: build/C/man2/timerfd_create.2:36 build/C/man2/tkill.2:38
-#: build/C/man2/wait.2:82 build/C/man2/wait4.2:68
+#: build/C/man3/bsd_signal.3:36 build/C/man2/eventfd.2:29
+#: build/C/man2/getitimer.2:24 build/C/man3/gsignal.3:49
+#: build/C/man2/kill.2:65 build/C/man2/killpg.2:60 build/C/man2/pause.2:37
+#: build/C/man2/prctl.2:64 build/C/man3/profil.3:46 build/C/man3/psignal.3:56
+#: build/C/man3/raise.3:38 build/C/man2/restart_syscall.2:41
+#: build/C/man2/rt_sigqueueinfo.2:38 build/C/man2/s390_runtime_instr.2:34
+#: build/C/man2/sgetmask.2:36 build/C/man2/sigaction.2:72
+#: build/C/man2/sigaltstack.2:51 build/C/man7/sigevent.7:52
+#: build/C/man3/siginterrupt.3:55 build/C/man2/signal.2:45
+#: build/C/man7/signal.7:49 build/C/man2/signalfd.2:27
+#: build/C/man3/sigpause.3:36 build/C/man2/sigpending.2:46
+#: build/C/man2/sigprocmask.2:47 build/C/man3/sigqueue.3:43
+#: build/C/man2/sigreturn.2:35 build/C/man3/sigset.3:58
+#: build/C/man3/sigsetops.3:63 build/C/man2/sigsuspend.2:46
+#: build/C/man3/sigvec.3:49 build/C/man3/sigwait.3:45
+#: build/C/man2/sigwaitinfo.2:46 build/C/man3/sysv_signal.3:36
+#: build/C/man2/timer_create.2:54 build/C/man2/timer_delete.2:45
+#: build/C/man2/timer_getoverrun.2:45 build/C/man2/timer_settime.2:50
+#: build/C/man2/timerfd_create.2:38 build/C/man2/tkill.2:41
+#: build/C/man2/wait.2:83 build/C/man2/wait4.2:67
#, no-wrap
msgid "DESCRIPTION"
msgstr "説明"
#. type: Plain text
-#: build/C/man3/bsd_signal.3:39
+#: build/C/man3/bsd_signal.3:41
msgid ""
"The B<bsd_signal>() function takes the same arguments, and performs the "
"same task, as B<signal>(2)."
"る。"
#. type: Plain text
-#: build/C/man3/bsd_signal.3:52
+#: build/C/man3/bsd_signal.3:54
msgid ""
"The difference between the two is that B<bsd_signal>() is guaranteed to "
"provide reliable signal semantics, that is: a) the disposition of the signal "
msgstr ""
"両者の違いは、 B<bsd_signal>() では信頼性のあるシグナル処理方式の提供が保証"
"されていることである。 信頼性のあるシグナル処理方式は以下の特徴を持つ。 a) ハ"
-"ã\83³ã\83\89ã\83©ã\81\8cèµ·å\8b\95ã\81\95ã\82\8cã\81\9få ´å\90\88ã\81«ã\80\81ã\82·ã\82°ã\83\8aã\83«ã\81®å\87¦ç\90\86æ\96¹æ³\95 (disposition) ã\81\8c ã\83\87ã\83\95ã\82©ã\83«ã\83\88ã\81«ã\83ª"
-"ã\82»ã\83\83ã\83\88ã\81\95ã\82\8cã\81ªã\81\84ã\80\81 b) ã\82·ã\82°ã\83\8aã\83«ã\83\8fã\83³ã\83\89ã\83©ã\81®å®\9fè¡\8cä¸ã\81¯ã\80\81ã\81\9dã\82\8c以é\99\8dã\81«ç\99ºç\94\9fã\81\97ã\81\9få\90\8cã\81\98ã\82·ã\82°ã\83\8a"
-"ã\83«ã\81®é\85\8dé\80\81ã\81\8c ã\83\96ã\83ã\83\83ã\82¯ã\81\95ã\82\8cã\81ªã\81\84ã\80\81 c) ã\83\8fã\83³ã\83\89ã\83©ã\81\8cå\81\9cæ¢ä¸ã\81® (blocking ã\81\97ã\81¦ã\81\84ã\82\8b) ã\82·ã\82¹"
-"ã\83\86ã\83 ã\82³ã\83¼ã\83«ã\82\92 ä¸æ\96ã\81\97ã\81\9få ´å\90\88ã\80\81ã\81\9dã\81®ã\82·ã\82¹ã\83\86ã\83 ã\82³ã\83¼ã\83«ã\81\8cè\87ªå\8b\95ç\9a\84ã\81«å\86\8dé\96\8bã\81\95ã\82\8cã\82\8bã\80\82 移æ¤\8dæ\80§ã\81\8c"
-"必要なアプリケーションでは、 B<signal>(2) でこれらが保証されることを前提にす"
-"べきではない。"
+"ã\83³ã\83\89ã\83©ã\83¼ã\81\8cèµ·å\8b\95ã\81\95ã\82\8cã\81\9få ´å\90\88ã\81«ã\80\81ã\82·ã\82°ã\83\8aã\83«ã\81®å\87¦ç\90\86æ\96¹æ³\95 (disposition) ã\81\8c ã\83\87ã\83\95ã\82©ã\83«ã\83\88ã\81«"
+"ã\83ªã\82»ã\83\83ã\83\88ã\81\95ã\82\8cã\81ªã\81\84ã\80\81 b) ã\82·ã\82°ã\83\8aã\83«ã\83\8fã\83³ã\83\89ã\83©ã\83¼ã\81®å®\9fè¡\8cä¸ã\81¯ã\80\81ã\81\9dã\82\8c以é\99\8dã\81«ç\99ºç\94\9fã\81\97ã\81\9få\90\8cã\81\98ã\82·"
+"ã\82°ã\83\8aã\83«ã\81®é\85\8dé\80\81ã\81\8c ã\83\96ã\83ã\83\83ã\82¯ã\81\95ã\82\8cã\81ªã\81\84ã\80\81 c) ã\83\8fã\83³ã\83\89ã\83©ã\83¼ã\81\8cå\81\9cæ¢ä¸ã\81® (blocking ã\81\97ã\81¦ã\81\84"
+"ã\82\8b) ã\82·ã\82¹ã\83\86ã\83 ã\82³ã\83¼ã\83«ã\82\92 ä¸æ\96ã\81\97ã\81\9få ´å\90\88ã\80\81ã\81\9dã\81®ã\82·ã\82¹ã\83\86ã\83 ã\82³ã\83¼ã\83«ã\81\8cè\87ªå\8b\95ç\9a\84ã\81«å\86\8dé\96\8bã\81\95ã\82\8cã\82\8bã\80\82 "
+"移植性が必要なアプリケーションでは、 B<signal>(2) でこれらが保証されることを"
+"前提にすべきではない。"
#. type: SH
-#: build/C/man3/bsd_signal.3:52 build/C/man2/eventfd.2:222
-#: build/C/man2/getitimer.2:117 build/C/man2/kill.2:99
-#: build/C/man2/killpg.2:88 build/C/man2/pause.2:42 build/C/man2/prctl.2:381
-#: build/C/man3/profil.3:66 build/C/man3/psignal.3:87 build/C/man3/raise.3:59
-#: build/C/man2/rt_sigqueueinfo.2:124 build/C/man2/sgetmask.2:54
-#: build/C/man2/sigaction.2:651 build/C/man2/sigaltstack.2:131
-#: build/C/man3/siginterrupt.3:71 build/C/man2/signal.2:95
-#: build/C/man2/signalfd.2:248 build/C/man3/sigpause.3:46
-#: build/C/man2/sigpending.2:51 build/C/man2/sigprocmask.2:91
-#: build/C/man3/sigqueue.3:81 build/C/man2/sigreturn.2:51
-#: build/C/man3/sigset.3:127 build/C/man3/sigsetops.3:105
-#: build/C/man2/sigsuspend.2:68 build/C/man3/sigvec.3:197
-#: build/C/man3/sigwait.3:66 build/C/man2/sigwaitinfo.2:98
-#: build/C/man3/sysv_signal.3:49 build/C/man2/timer_create.2:165
-#: build/C/man2/timer_delete.2:50 build/C/man2/timer_getoverrun.2:79
-#: build/C/man2/timer_settime.2:169 build/C/man2/timerfd_create.2:286
-#: build/C/man2/tkill.2:69 build/C/man2/wait.2:354 build/C/man2/wait4.2:127
+#: build/C/man3/bsd_signal.3:54 build/C/man2/eventfd.2:222
+#: build/C/man2/getitimer.2:129 build/C/man2/kill.2:100
+#: build/C/man2/killpg.2:89 build/C/man2/pause.2:42 build/C/man2/prctl.2:892
+#: build/C/man3/profil.3:68 build/C/man3/psignal.3:89 build/C/man3/raise.3:61
+#: build/C/man2/restart_syscall.2:88 build/C/man2/rt_sigqueueinfo.2:129
+#: build/C/man2/s390_runtime_instr.2:54 build/C/man2/sgetmask.2:59
+#: build/C/man2/sigaction.2:728 build/C/man2/sigaltstack.2:133
+#: build/C/man3/siginterrupt.3:73 build/C/man2/signal.2:97
+#: build/C/man2/signalfd.2:251 build/C/man3/sigpause.3:48
+#: build/C/man2/sigpending.2:53 build/C/man2/sigprocmask.2:93
+#: build/C/man3/sigqueue.3:83 build/C/man2/sigreturn.2:65
+#: build/C/man3/sigset.3:129 build/C/man3/sigsetops.3:107
+#: build/C/man2/sigsuspend.2:70 build/C/man3/sigvec.3:199
+#: build/C/man3/sigwait.3:69 build/C/man2/sigwaitinfo.2:105
+#: build/C/man3/sysv_signal.3:51 build/C/man2/timer_create.2:169
+#: build/C/man2/timer_delete.2:53 build/C/man2/timer_getoverrun.2:82
+#: build/C/man2/timer_settime.2:173 build/C/man2/timerfd_create.2:294
+#: build/C/man2/tkill.2:88 build/C/man2/wait.2:355 build/C/man2/wait4.2:132
#, no-wrap
msgid "RETURN VALUE"
msgstr "返り値"
#. type: Plain text
-#: build/C/man3/bsd_signal.3:58
+#: build/C/man3/bsd_signal.3:60
msgid ""
"The B<bsd_signal>() function returns the previous value of the signal "
"handler, or B<SIG_ERR> on error."
msgstr ""
-"B<bsd_signal>() 関数はシグナルハンドラの直前の値を返す。 エラーの場合、 "
+"B<bsd_signal>() é\96¢æ\95°ã\81¯ã\82·ã\82°ã\83\8aã\83«ã\83\8fã\83³ã\83\89ã\83©ã\83¼ã\81®ç\9b´å\89\8dã\81®å\80¤ã\82\92è¿\94ã\81\99ã\80\82 ã\82¨ã\83©ã\83¼ã\81®å ´å\90\88ã\80\81 "
"B<SIG_ERR> を返す。"
#. type: SH
-#: build/C/man3/bsd_signal.3:58 build/C/man2/eventfd.2:229
-#: build/C/man2/getitimer.2:122 build/C/man2/kill.2:104
-#: build/C/man2/killpg.2:93 build/C/man2/pause.2:53 build/C/man2/prctl.2:398
-#: build/C/man2/rt_sigqueueinfo.2:129 build/C/man2/sgetmask.2:59
-#: build/C/man2/sigaction.2:654 build/C/man2/sigaltstack.2:135
-#: build/C/man3/siginterrupt.3:76 build/C/man2/signal.2:100
-#: build/C/man2/signalfd.2:262 build/C/man2/sigpending.2:54
-#: build/C/man2/sigprocmask.2:94 build/C/man3/sigqueue.3:89
-#: build/C/man3/sigset.3:152 build/C/man3/sigsetops.3:121
-#: build/C/man2/sigsuspend.2:72 build/C/man3/sigvec.3:214
-#: build/C/man3/sigwait.3:71 build/C/man2/sigwaitinfo.2:107
-#: build/C/man3/sysv_signal.3:55 build/C/man2/timer_create.2:173
-#: build/C/man2/timer_delete.2:57 build/C/man2/timer_getoverrun.2:87
-#: build/C/man2/timer_settime.2:178 build/C/man2/timerfd_create.2:301
-#: build/C/man2/tkill.2:73 build/C/man2/wait.2:383 build/C/man2/wait4.2:130
+#: build/C/man3/bsd_signal.3:60 build/C/man2/eventfd.2:229
+#: build/C/man2/getitimer.2:134 build/C/man2/kill.2:105
+#: build/C/man2/killpg.2:94 build/C/man2/pause.2:53 build/C/man2/prctl.2:912
+#: build/C/man2/restart_syscall.2:92 build/C/man2/rt_sigqueueinfo.2:134
+#: build/C/man2/s390_runtime_instr.2:65 build/C/man2/sgetmask.2:64
+#: build/C/man2/sigaction.2:733 build/C/man2/sigaltstack.2:137
+#: build/C/man3/siginterrupt.3:83 build/C/man2/signal.2:105
+#: build/C/man2/signalfd.2:265 build/C/man2/sigpending.2:59
+#: build/C/man2/sigprocmask.2:99 build/C/man3/sigqueue.3:91
+#: build/C/man3/sigset.3:154 build/C/man3/sigsetops.3:127
+#: build/C/man2/sigsuspend.2:76 build/C/man3/sigvec.3:216
+#: build/C/man3/sigwait.3:74 build/C/man2/sigwaitinfo.2:114
+#: build/C/man3/sysv_signal.3:57 build/C/man2/timer_create.2:177
+#: build/C/man2/timer_delete.2:60 build/C/man2/timer_getoverrun.2:90
+#: build/C/man2/timer_settime.2:182 build/C/man2/timerfd_create.2:309
+#: build/C/man2/tkill.2:92 build/C/man2/wait.2:385 build/C/man2/wait4.2:135
#, no-wrap
msgid "ERRORS"
msgstr "エラー"
#. type: Plain text
-#: build/C/man3/bsd_signal.3:61 build/C/man3/sysv_signal.3:58
+#: build/C/man3/bsd_signal.3:63 build/C/man3/sysv_signal.3:60
msgid "As for B<signal>(2)."
msgstr "B<signal>(2) と同じ。"
#. type: SH
-#: build/C/man3/bsd_signal.3:61 build/C/man2/eventfd.2:266
-#: build/C/man2/getitimer.2:143 build/C/man3/gsignal.3:93
-#: build/C/man2/kill.2:120 build/C/man2/killpg.2:110 build/C/man2/pause.2:57
-#: build/C/man2/prctl.2:475 build/C/man3/profil.3:68 build/C/man3/psignal.3:97
-#: build/C/man3/raise.3:62 build/C/man2/rt_sigqueueinfo.2:171
-#: build/C/man2/sgetmask.2:61 build/C/man2/sigaction.2:666
-#: build/C/man2/sigaltstack.2:154 build/C/man7/sigevent.7:128
-#: build/C/man3/siginterrupt.3:80 build/C/man2/signal.2:105
-#: build/C/man7/signal.7:834 build/C/man2/signalfd.2:304
-#: build/C/man3/sigpause.3:54 build/C/man2/sigpending.2:59
-#: build/C/man2/sigprocmask.2:99 build/C/man3/sigqueue.3:112
-#: build/C/man2/sigreturn.2:58 build/C/man3/sigset.3:171
-#: build/C/man3/sigsetops.3:126 build/C/man2/sigsuspend.2:80
-#: build/C/man3/sigvec.3:219 build/C/man3/sigwait.3:77
-#: build/C/man2/sigwaitinfo.2:126 build/C/man3/sysv_signal.3:58
-#: build/C/man2/timer_create.2:191 build/C/man2/timer_delete.2:64
-#: build/C/man2/timer_getoverrun.2:94 build/C/man2/timer_settime.2:203
-#: build/C/man2/timerfd_create.2:370 build/C/man2/tkill.2:90
-#: build/C/man2/wait.2:421 build/C/man2/wait4.2:133
+#: build/C/man3/bsd_signal.3:63 build/C/man3/raise.3:64
+#: build/C/man3/siginterrupt.3:87 build/C/man3/sigpause.3:56
+#: build/C/man3/sigqueue.3:114 build/C/man3/sigsetops.3:132
+#: build/C/man3/sigvec.3:221 build/C/man3/sigwait.3:80
+#: build/C/man3/sysv_signal.3:60
+#, no-wrap
+msgid "ATTRIBUTES"
+msgstr "属性"
+
+#. type: SS
+#: build/C/man3/bsd_signal.3:64 build/C/man3/raise.3:65
+#: build/C/man3/siginterrupt.3:88 build/C/man3/sigpause.3:57
+#: build/C/man3/sigqueue.3:115 build/C/man3/sigsetops.3:133
+#: build/C/man3/sigvec.3:222 build/C/man3/sigwait.3:81
+#: build/C/man3/sysv_signal.3:61
+#, no-wrap
+msgid "Multithreading (see pthreads(7))"
+msgstr "マルチスレッディング (pthreads(7) 参照)"
+
+#. type: Plain text
+#: build/C/man3/bsd_signal.3:68
+msgid "The B<bsd_signal>() function is thread-safe."
+msgstr "B<bsd_signal>() 関数はスレッドセーフである。"
+
+#. type: SH
+#: build/C/man3/bsd_signal.3:68 build/C/man2/eventfd.2:266
+#: build/C/man2/getitimer.2:155 build/C/man3/gsignal.3:95
+#: build/C/man2/kill.2:121 build/C/man2/killpg.2:111 build/C/man2/pause.2:57
+#: build/C/man2/prctl.2:1190 build/C/man3/profil.3:70
+#: build/C/man3/psignal.3:99 build/C/man3/raise.3:69
+#: build/C/man2/restart_syscall.2:100 build/C/man2/rt_sigqueueinfo.2:176
+#: build/C/man2/s390_runtime_instr.2:81 build/C/man2/sgetmask.2:73
+#: build/C/man2/sigaction.2:745 build/C/man2/sigaltstack.2:158
+#: build/C/man7/sigevent.7:130 build/C/man3/siginterrupt.3:93
+#: build/C/man2/signal.2:110 build/C/man7/signal.7:878
+#: build/C/man2/signalfd.2:307 build/C/man3/sigpause.3:61
+#: build/C/man2/sigpending.2:64 build/C/man2/sigprocmask.2:112
+#: build/C/man3/sigqueue.3:119 build/C/man2/sigreturn.2:68
+#: build/C/man3/sigset.3:173 build/C/man3/sigsetops.3:145
+#: build/C/man2/sigsuspend.2:84 build/C/man3/sigvec.3:241
+#: build/C/man3/sigwait.3:85 build/C/man2/sigwaitinfo.2:133
+#: build/C/man3/sysv_signal.3:65 build/C/man2/timer_create.2:195
+#: build/C/man2/timer_delete.2:67 build/C/man2/timer_getoverrun.2:97
+#: build/C/man2/timer_settime.2:207 build/C/man2/timerfd_create.2:378
+#: build/C/man2/tkill.2:109 build/C/man2/wait.2:423 build/C/man2/wait4.2:138
#, no-wrap
msgid "CONFORMING TO"
msgstr "準拠"
#. type: Plain text
-#: build/C/man3/bsd_signal.3:68
+#: build/C/man3/bsd_signal.3:75
msgid ""
"4.2BSD, POSIX.1-2001. POSIX.1-2008 removes the specification of "
"B<bsd_signal>(), recommending the use of B<sigaction>(2) instead."
"いる。 代わりに、 B<sigaction>(2) の使用が推奨されている。"
#. type: SH
-#: build/C/man3/bsd_signal.3:68 build/C/man2/eventfd.2:271
-#: build/C/man2/getitimer.2:153 build/C/man2/kill.2:122
-#: build/C/man2/killpg.2:114 build/C/man2/rt_sigqueueinfo.2:173
-#: build/C/man2/sgetmask.2:63 build/C/man2/sigaction.2:669
-#: build/C/man2/sigaltstack.2:156 build/C/man2/signal.2:107
-#: build/C/man2/signalfd.2:309 build/C/man3/sigpause.3:58
-#: build/C/man2/sigpending.2:61 build/C/man2/sigprocmask.2:101
-#: build/C/man3/sigqueue.3:114 build/C/man2/sigreturn.2:62
-#: build/C/man3/sigset.3:188 build/C/man3/sigsetops.3:128
-#: build/C/man2/sigsuspend.2:82 build/C/man3/sigvec.3:225
-#: build/C/man3/sigwait.3:79 build/C/man2/sigwaitinfo.2:128
-#: build/C/man3/sysv_signal.3:60 build/C/man2/timer_create.2:193
-#: build/C/man2/timer_getoverrun.2:96 build/C/man2/tkill.2:96
-#: build/C/man2/wait.2:423 build/C/man2/wait4.2:135
+#: build/C/man3/bsd_signal.3:75 build/C/man2/eventfd.2:271
+#: build/C/man2/getitimer.2:165 build/C/man2/kill.2:123
+#: build/C/man2/killpg.2:115 build/C/man3/raise.3:71
+#: build/C/man2/restart_syscall.2:102 build/C/man2/rt_sigqueueinfo.2:178
+#: build/C/man2/s390_runtime_instr.2:84 build/C/man2/sgetmask.2:75
+#: build/C/man2/sigaction.2:748 build/C/man2/sigaltstack.2:160
+#: build/C/man2/signal.2:112 build/C/man2/signalfd.2:312
+#: build/C/man3/sigpause.3:65 build/C/man2/sigpending.2:66
+#: build/C/man2/sigprocmask.2:114 build/C/man3/sigqueue.3:121
+#: build/C/man2/sigreturn.2:74 build/C/man3/sigset.3:190
+#: build/C/man3/sigsetops.3:147 build/C/man2/sigsuspend.2:86
+#: build/C/man3/sigvec.3:247 build/C/man3/sigwait.3:87
+#: build/C/man2/sigwaitinfo.2:135 build/C/man3/sysv_signal.3:67
+#: build/C/man2/timer_create.2:197 build/C/man2/timer_getoverrun.2:99
+#: build/C/man2/tkill.2:115 build/C/man2/wait.2:425 build/C/man2/wait4.2:147
#, no-wrap
msgid "NOTES"
msgstr "注意"
#. type: Plain text
-#: build/C/man3/bsd_signal.3:74
+#: build/C/man3/bsd_signal.3:81
msgid ""
"Use of B<bsd_signal>() should be avoided; use B<sigaction>(2) instead."
msgstr ""
"と。"
#. type: Plain text
-#: build/C/man3/bsd_signal.3:85
+#: build/C/man3/bsd_signal.3:92
msgid ""
"On modern Linux systems, B<bsd_signal>() and B<signal>(2) are equivalent. "
"But on older systems, B<signal>(2) provided unreliable signal semantics; "
"提供していた。 詳細は B<signal>(2) を参照。"
#. type: Plain text
-#: build/C/man3/bsd_signal.3:92 build/C/man3/sysv_signal.3:85
+#: build/C/man3/bsd_signal.3:99 build/C/man3/sysv_signal.3:92
msgid ""
-"The use of I<sighandler_t> is a GNU extension; this type is only defined if "
+"The use of I<sighandler_t> is a GNU extension; this type is defined only if "
"the B<_GNU_SOURCE> feature test macro is defined."
msgstr ""
"I<sighandler_t> を使っているのは GNU による拡張である。 この型は機能検査マク"
"ロ B<_GNU_SOURCE> を定義した場合にのみ定義される。"
#. type: SH
-#: build/C/man3/bsd_signal.3:92 build/C/man2/eventfd.2:417
-#: build/C/man2/getitimer.2:219 build/C/man3/gsignal.3:101
-#: build/C/man2/kill.2:170 build/C/man2/killpg.2:133 build/C/man2/pause.2:59
-#: build/C/man2/prctl.2:489 build/C/man3/profil.3:79
-#: build/C/man3/psignal.3:111 build/C/man3/raise.3:64
-#: build/C/man2/rt_sigqueueinfo.2:183 build/C/man2/sgetmask.2:74
-#: build/C/man2/sigaction.2:782 build/C/man2/sigaltstack.2:230
-#: build/C/man7/sigevent.7:130 build/C/man3/siginterrupt.3:89
-#: build/C/man2/signal.2:259 build/C/man7/signal.7:845
-#: build/C/man2/signalfd.2:430 build/C/man3/sigpause.3:96
-#: build/C/man2/sigpending.2:82 build/C/man2/sigprocmask.2:131
-#: build/C/man3/sigqueue.3:147 build/C/man2/sigreturn.2:72
-#: build/C/man3/sigset.3:264 build/C/man3/sigsetops.3:166
-#: build/C/man2/sigsuspend.2:104 build/C/man3/sigvec.3:250
-#: build/C/man3/sigwait.3:86 build/C/man2/sigwaitinfo.2:179
-#: build/C/man3/sysv_signal.3:85 build/C/man2/timer_create.2:397
-#: build/C/man2/timer_delete.2:66 build/C/man2/timer_getoverrun.2:128
-#: build/C/man2/timer_settime.2:208 build/C/man2/timerfd_create.2:540
-#: build/C/man2/tkill.2:105 build/C/man2/wait.2:605 build/C/man2/wait4.2:153
+#: build/C/man3/bsd_signal.3:99 build/C/man2/eventfd.2:417
+#: build/C/man2/getitimer.2:246 build/C/man3/gsignal.3:103
+#: build/C/man2/kill.2:171 build/C/man2/killpg.2:134 build/C/man2/pause.2:59
+#: build/C/man2/prctl.2:1204 build/C/man3/profil.3:81
+#: build/C/man3/psignal.3:113 build/C/man3/raise.3:82
+#: build/C/man2/restart_syscall.2:135 build/C/man2/rt_sigqueueinfo.2:188
+#: build/C/man2/s390_runtime_instr.2:88 build/C/man2/sgetmask.2:89
+#: build/C/man2/sigaction.2:861 build/C/man2/sigaltstack.2:234
+#: build/C/man7/sigevent.7:132 build/C/man3/siginterrupt.3:102
+#: build/C/man2/signal.2:278 build/C/man7/signal.7:890
+#: build/C/man2/signalfd.2:433 build/C/man3/sigpause.3:111
+#: build/C/man2/sigpending.2:91 build/C/man2/sigprocmask.2:144
+#: build/C/man3/sigqueue.3:154 build/C/man2/sigreturn.2:123
+#: build/C/man3/sigset.3:266 build/C/man3/sigsetops.3:186
+#: build/C/man2/sigsuspend.2:108 build/C/man3/sigvec.3:272
+#: build/C/man3/sigwait.3:94 build/C/man2/sigwaitinfo.2:201
+#: build/C/man3/sysv_signal.3:92 build/C/man2/timer_create.2:410
+#: build/C/man2/timer_delete.2:69 build/C/man2/timer_getoverrun.2:131
+#: build/C/man2/timer_settime.2:212 build/C/man2/timerfd_create.2:548
+#: build/C/man2/tkill.2:124 build/C/man2/wait.2:635 build/C/man2/wait4.2:165
#, no-wrap
msgid "SEE ALSO"
msgstr "関連項目"
#. type: Plain text
-#: build/C/man3/bsd_signal.3:97
+#: build/C/man3/bsd_signal.3:104
msgid "B<sigaction>(2), B<signal>(2), B<sysv_signal>(3), B<signal>(7)"
msgstr "B<sigaction>(2), B<signal>(2), B<sysv_signal>(3), B<signal>(7)"
#. type: SH
-#: build/C/man3/bsd_signal.3:97 build/C/man2/eventfd.2:428
-#: build/C/man2/getitimer.2:226 build/C/man3/gsignal.3:105
-#: build/C/man2/kill.2:180 build/C/man2/killpg.2:139 build/C/man2/pause.2:64
-#: build/C/man2/prctl.2:492 build/C/man3/profil.3:84
-#: build/C/man3/psignal.3:116 build/C/man3/raise.3:71
-#: build/C/man2/rt_sigqueueinfo.2:191 build/C/man2/sgetmask.2:77
-#: build/C/man2/sigaction.2:801 build/C/man2/sigaltstack.2:237
-#: build/C/man7/sigevent.7:140 build/C/man3/siginterrupt.3:91
-#: build/C/man2/signal.2:278 build/C/man7/signal.7:878
-#: build/C/man2/signalfd.2:443 build/C/man3/sigpause.3:104
-#: build/C/man2/sigpending.2:90 build/C/man2/sigprocmask.2:142
-#: build/C/man3/sigqueue.3:155 build/C/man2/sigreturn.2:77
-#: build/C/man3/sigset.3:274 build/C/man3/sigsetops.3:171
-#: build/C/man2/sigsuspend.2:114 build/C/man3/sigvec.3:260
-#: build/C/man3/sigwait.3:94 build/C/man2/sigwaitinfo.2:191
-#: build/C/man3/sysv_signal.3:90 build/C/man2/timer_create.2:410
-#: build/C/man2/timer_delete.2:72 build/C/man2/timer_getoverrun.2:138
-#: build/C/man2/timer_settime.2:212 build/C/man2/timerfd_create.2:552
-#: build/C/man2/tkill.2:110 build/C/man2/wait.2:617 build/C/man2/wait4.2:160
+#: build/C/man3/bsd_signal.3:104 build/C/man2/eventfd.2:428
+#: build/C/man2/getitimer.2:253 build/C/man3/gsignal.3:107
+#: build/C/man2/kill.2:181 build/C/man2/killpg.2:140 build/C/man2/pause.2:64
+#: build/C/man2/prctl.2:1207 build/C/man3/profil.3:87
+#: build/C/man3/psignal.3:118 build/C/man3/raise.3:89
+#: build/C/man2/restart_syscall.2:144 build/C/man2/rt_sigqueueinfo.2:196
+#: build/C/man2/s390_runtime_instr.2:91 build/C/man2/sgetmask.2:92
+#: build/C/man2/sigaction.2:883 build/C/man2/sigaltstack.2:241
+#: build/C/man7/sigevent.7:142 build/C/man3/siginterrupt.3:104
+#: build/C/man2/signal.2:297 build/C/man7/signal.7:925
+#: build/C/man2/signalfd.2:446 build/C/man3/sigpause.3:119
+#: build/C/man2/sigpending.2:99 build/C/man2/sigprocmask.2:155
+#: build/C/man3/sigqueue.3:162 build/C/man2/sigreturn.2:130
+#: build/C/man3/sigset.3:276 build/C/man3/sigsetops.3:191
+#: build/C/man2/sigsuspend.2:118 build/C/man3/sigvec.3:282
+#: build/C/man3/sigwait.3:102 build/C/man2/sigwaitinfo.2:213
+#: build/C/man3/sysv_signal.3:97 build/C/man2/timer_create.2:425
+#: build/C/man2/timer_delete.2:75 build/C/man2/timer_getoverrun.2:141
+#: build/C/man2/timer_settime.2:216 build/C/man2/timerfd_create.2:560
+#: build/C/man2/tkill.2:129 build/C/man2/wait.2:647 build/C/man2/wait4.2:172
#, no-wrap
msgid "COLOPHON"
msgstr "この文書について"
#. type: Plain text
-#: build/C/man3/bsd_signal.3:104 build/C/man2/eventfd.2:435
-#: build/C/man2/getitimer.2:233 build/C/man3/gsignal.3:112
-#: build/C/man2/kill.2:187 build/C/man2/killpg.2:146 build/C/man2/pause.2:71
-#: build/C/man2/prctl.2:499 build/C/man3/profil.3:91
-#: build/C/man3/psignal.3:123 build/C/man3/raise.3:78
-#: build/C/man2/rt_sigqueueinfo.2:198 build/C/man2/sgetmask.2:84
-#: build/C/man2/sigaction.2:808 build/C/man2/sigaltstack.2:244
-#: build/C/man7/sigevent.7:147 build/C/man3/siginterrupt.3:98
-#: build/C/man2/signal.2:285 build/C/man7/signal.7:885
-#: build/C/man2/signalfd.2:450 build/C/man3/sigpause.3:111
-#: build/C/man2/sigpending.2:97 build/C/man2/sigprocmask.2:149
-#: build/C/man3/sigqueue.3:162 build/C/man2/sigreturn.2:84
-#: build/C/man3/sigset.3:281 build/C/man3/sigsetops.3:178
-#: build/C/man2/sigsuspend.2:121 build/C/man3/sigvec.3:267
-#: build/C/man3/sigwait.3:101 build/C/man2/sigwaitinfo.2:198
-#: build/C/man3/sysv_signal.3:97 build/C/man2/timer_create.2:417
-#: build/C/man2/timer_delete.2:79 build/C/man2/timer_getoverrun.2:145
-#: build/C/man2/timer_settime.2:219 build/C/man2/timerfd_create.2:559
-#: build/C/man2/tkill.2:117 build/C/man2/wait.2:624 build/C/man2/wait4.2:167
-msgid ""
-"This page is part of release 3.37 of the Linux I<man-pages> project. A "
-"description of the project, and information about reporting bugs, can be "
-"found at http://www.kernel.org/doc/man-pages/."
-msgstr ""
-"この man ページは Linux I<man-pages> プロジェクトのリリース 3.37 の一部である。\n"
-"プロジェクトの説明とバグ報告に関する情報は\n"
-"http://www.kernel.org/doc/man-pages/ に書かれている。"
+#: build/C/man3/bsd_signal.3:112 build/C/man2/eventfd.2:436
+#: build/C/man2/getitimer.2:261 build/C/man3/gsignal.3:115
+#: build/C/man2/kill.2:189 build/C/man2/killpg.2:148 build/C/man2/pause.2:72
+#: build/C/man2/prctl.2:1215 build/C/man3/profil.3:95
+#: build/C/man3/psignal.3:126 build/C/man3/raise.3:97
+#: build/C/man2/restart_syscall.2:152 build/C/man2/rt_sigqueueinfo.2:204
+#: build/C/man2/s390_runtime_instr.2:99 build/C/man2/sgetmask.2:100
+#: build/C/man2/sigaction.2:891 build/C/man2/sigaltstack.2:249
+#: build/C/man7/sigevent.7:150 build/C/man3/siginterrupt.3:112
+#: build/C/man2/signal.2:305 build/C/man7/signal.7:933
+#: build/C/man2/signalfd.2:454 build/C/man3/sigpause.3:127
+#: build/C/man2/sigpending.2:107 build/C/man2/sigprocmask.2:163
+#: build/C/man3/sigqueue.3:170 build/C/man2/sigreturn.2:138
+#: build/C/man3/sigset.3:284 build/C/man3/sigsetops.3:199
+#: build/C/man2/sigsuspend.2:126 build/C/man3/sigvec.3:290
+#: build/C/man3/sigwait.3:110 build/C/man2/sigwaitinfo.2:221
+#: build/C/man3/sysv_signal.3:105 build/C/man2/timer_create.2:433
+#: build/C/man2/timer_delete.2:83 build/C/man2/timer_getoverrun.2:149
+#: build/C/man2/timer_settime.2:224 build/C/man2/timerfd_create.2:568
+#: build/C/man2/tkill.2:137 build/C/man2/wait.2:655 build/C/man2/wait4.2:180
+#, fuzzy
+#| msgid ""
+#| "This page is part of release 3.78 of the Linux I<man-pages> project. A "
+#| "description of the project, information about reporting bugs, and the "
+#| "latest version of this page, can be found at \\%http://www.kernel.org/doc/"
+#| "man-pages/."
+msgid ""
+"This page is part of release 3.79 of the Linux I<man-pages> project. A "
+"description of the project, information about reporting bugs, and the latest "
+"version of this page, can be found at \\%http://www.kernel.org/doc/man-"
+"pages/."
+msgstr ""
+"この man ページは Linux I<man-pages> プロジェクトのリリース 3.78 の一部であ"
+"る。 プロジェクトの説明とバグ報告に関する情報は \\%http://www.kernel.org/doc/"
+"man-pages/ に書かれている。"
#. type: TH
-#: build/C/man2/eventfd.2:21
+#: build/C/man2/eventfd.2:22
#, no-wrap
msgid "EVENTFD"
msgstr "EVENTFD"
#. type: TH
-#: build/C/man2/eventfd.2:21
-#, fuzzy, no-wrap
-#| msgid "2010-09-20"
-msgid "2010-08-30"
-msgstr "2010-09-20"
+#: build/C/man2/eventfd.2:22 build/C/man2/getitimer.2:12
+#: build/C/man3/profil.3:28 build/C/man2/signalfd.2:20
+#, no-wrap
+msgid "2014-07-08"
+msgstr "2014-07-08"
#. type: TH
-#: build/C/man2/eventfd.2:21 build/C/man2/getitimer.2:7 build/C/man2/kill.2:44
-#: build/C/man2/killpg.2:40 build/C/man2/pause.2:30 build/C/man2/prctl.2:46
-#: build/C/man3/profil.3:28 build/C/man2/rt_sigqueueinfo.2:23
-#: build/C/man2/sgetmask.2:24 build/C/man2/sigaction.2:45
-#: build/C/man2/sigaltstack.2:25 build/C/man2/signal.2:34
-#: build/C/man7/signal.7:44 build/C/man2/signalfd.2:19
-#: build/C/man3/sigpause.3:23 build/C/man2/sigpending.2:27
-#: build/C/man2/sigprocmask.2:27 build/C/man3/sigqueue.3:26
-#: build/C/man2/sigreturn.2:27 build/C/man3/sigset.3:24
-#: build/C/man3/sigsetops.3:29 build/C/man2/sigsuspend.2:27
-#: build/C/man3/sigvec.3:24 build/C/man3/sigwait.3:24
-#: build/C/man2/sigwaitinfo.2:23 build/C/man2/timer_create.2:29
-#: build/C/man2/timer_delete.2:23 build/C/man2/timer_getoverrun.2:23
-#: build/C/man2/timer_settime.2:23 build/C/man2/timerfd_create.2:20
-#: build/C/man2/tkill.2:29 build/C/man2/wait.2:50 build/C/man2/wait4.2:34
+#: build/C/man2/eventfd.2:22 build/C/man2/getitimer.2:12
+#: build/C/man2/kill.2:44 build/C/man2/killpg.2:42 build/C/man2/pause.2:30
+#: build/C/man2/prctl.2:54 build/C/man3/profil.3:28
+#: build/C/man2/restart_syscall.2:33 build/C/man2/rt_sigqueueinfo.2:25
+#: build/C/man2/sgetmask.2:26 build/C/man2/sigaction.2:49
+#: build/C/man2/sigaltstack.2:27 build/C/man2/signal.2:36
+#: build/C/man7/signal.7:46 build/C/man2/signalfd.2:20
+#: build/C/man3/sigpause.3:25 build/C/man2/sigpending.2:29
+#: build/C/man2/sigprocmask.2:29 build/C/man3/sigqueue.3:28
+#: build/C/man2/sigreturn.2:30 build/C/man3/sigset.3:26
+#: build/C/man3/sigsetops.3:31 build/C/man2/sigsuspend.2:29
+#: build/C/man3/sigvec.3:26 build/C/man3/sigwait.3:26
+#: build/C/man2/sigwaitinfo.2:25 build/C/man2/timer_create.2:33
+#: build/C/man2/timer_delete.2:26 build/C/man2/timer_getoverrun.2:26
+#: build/C/man2/timer_settime.2:26 build/C/man2/timerfd_create.2:22
+#: build/C/man2/tkill.2:29 build/C/man2/wait.2:49 build/C/man2/wait4.2:33
#, no-wrap
msgid "Linux"
msgstr "Linux"
#. type: Plain text
-#: build/C/man2/eventfd.2:24
+#: build/C/man2/eventfd.2:25
msgid "eventfd - create a file descriptor for event notification"
-msgstr "eventfd - イベント通知用のファイルディスクリプタを生成する"
+msgstr "eventfd - ã\82¤ã\83\99ã\83³ã\83\88é\80\9aç\9f¥ç\94¨ã\81®ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\83¼ã\82\92ç\94\9fæ\88\90ã\81\99ã\82\8b"
#. type: Plain text
-#: build/C/man2/eventfd.2:26
+#: build/C/man2/eventfd.2:27
msgid "B<#include E<lt>sys/eventfd.hE<gt>>"
msgstr "B<#include E<lt>sys/eventfd.hE<gt>>"
#. type: Plain text
-#: build/C/man2/eventfd.2:28
+#: build/C/man2/eventfd.2:29
msgid "B<int eventfd(unsigned int >I<initval>B<, int >I<flags>B<);>"
msgstr "B<int eventfd(unsigned int >I<initval>B<, int >I<flags>B<);>"
#. type: Plain text
-#: build/C/man2/eventfd.2:38
+#: build/C/man2/eventfd.2:39
msgid ""
"B<eventfd>() creates an \"eventfd object\" that can be used as an event "
-"wait/notify mechanism by userspace applications, and by the kernel to notify "
-"userspace applications of events. The object contains an unsigned 64-bit "
-"integer (I<uint64_t>) counter that is maintained by the kernel. This "
-"counter is initialized with the value specified in the argument I<initval>."
+"wait/notify mechanism by user-space applications, and by the kernel to "
+"notify user-space applications of events. The object contains an unsigned "
+"64-bit integer (I<uint64_t>) counter that is maintained by the kernel. "
+"This counter is initialized with the value specified in the argument "
+"I<initval>."
msgstr ""
"B<eventfd>() は \"eventfd オブジェクト\" を生成する。 eventfd オブジェクトは"
-"ユーザ空間アプリケーションがイベント待ち受け/通知用の 仕組みとして使うことが"
-"ã\81§ã\81\8dã\82\8bã\80\82ã\81¾ã\81\9fã\80\81ã\82«ã\83¼ã\83\8dã\83«ã\81\8cã\83¦ã\83¼ã\82¶ç©ºé\96\93ã\82¢ã\83\97ã\83ªã\82±ã\83¼ã\82·ã\83§ã\83³ã\81« ã\82¤ã\83\99ã\83³ã\83\88ã\82\92é\80\9aç\9f¥ã\81\99ã\82\8bã\81\9fã\82\81ã\81«"
-"も使うことができる。 このオブジェクトには、unsigned の 64 ビット整数 "
-"(I<uint64_t>) å\9e\8bã\81®ã\82«ã\82¦ã\83³ã\82¿ã\81\8cå\90«ã\81¾ã\82\8cã\81¦ã\81\8aã\82\8aã\80\81ã\81\93ã\81®ã\82«ã\82¦ã\83³ã\82¿ã\81¯ã\82«ã\83¼ã\83\8dã\83«ã\81«ã\82\88ã\82\8a管ç\90\86ã\81\95"
-"れる。 このカウンタは I<initval> 引き数で指定された値で初期化される。"
+"ユーザー空間アプリケーションがイベント待ち受け/通知用の 仕組みとして使うこと"
+"ã\81\8cã\81§ã\81\8dã\82\8bã\80\82ã\81¾ã\81\9fã\80\81ã\82«ã\83¼ã\83\8dã\83«ã\81\8cã\83¦ã\83¼ã\82¶ã\83¼ç©ºé\96\93ã\82¢ã\83\97ã\83ªã\82±ã\83¼ã\82·ã\83§ã\83³ã\81« ã\82¤ã\83\99ã\83³ã\83\88ã\82\92é\80\9aç\9f¥ã\81\99ã\82\8bã\81\9f"
+"ã\82\81ã\81«ã\82\82使ã\81\86ã\81\93ã\81¨ã\81\8cã\81§ã\81\8dã\82\8bã\80\82 ã\81\93ã\81®ã\82ªã\83\96ã\82¸ã\82§ã\82¯ã\83\88ã\81«ã\81¯ã\80\81unsigned ã\81® 64 ã\83\93ã\83\83ã\83\88æ\95´æ\95° "
+"(I<uint64_t>) å\9e\8bã\81®ã\82«ã\82¦ã\83³ã\82¿ã\83¼ã\81\8cå\90«ã\81¾ã\82\8cã\81¦ã\81\8aã\82\8aã\80\81ã\81\93ã\81®ã\82«ã\82¦ã\83³ã\82¿ã\83¼ã\81¯ã\82«ã\83¼ã\83\8dã\83«ã\81«ã\82\88ã\82\8a管"
+"理される。 このカウンターは I<initval> 引き数で指定された値で初期化される。"
#. 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>():"
+#: build/C/man2/eventfd.2:44
msgid ""
-"The following values may be bitwise ORed in I<flags> to change the behaviour "
+"The following values may be bitwise ORed in I<flags> to change the behavior "
"of B<eventfd>():"
msgstr ""
-"Linux 2.6.27 以降では、 以下の値のいくつかをビット単位の論理和 (OR) で指定す"
-"ã\82\8bã\81\93ã\81¨ã\81§ã\80\81 B<eventfd>() ã\81®æ\8c¯è\88\9eã\81\84ã\82\92å¤\89æ\9b´ã\81\99ã\82\8bã\81\93ã\81¨ã\81\8cã\81§ã\81\8dã\82\8bã\80\82"
+"以下の値のいくつかをビット単位の論理和 (OR) で指定することで、 B<eventfd>() "
+"の振舞いを変更することができる。"
#. type: TP
-#: build/C/man2/eventfd.2:43
-#, fuzzy, no-wrap
-#| msgid "B<PR_SET_SECCOMP> (since Linux 2.6.23)"
+#: build/C/man2/eventfd.2:44
+#, 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
-#: build/C/man2/timerfd_create.2:102
+#: build/C/man2/eventfd.2:54 build/C/man2/signalfd.2:95
+#: build/C/man2/timerfd_create.2:110
msgid ""
"Set the close-on-exec (B<FD_CLOEXEC>) flag on the new file descriptor. See "
"the description of the B<O_CLOEXEC> flag in B<open>(2) for reasons why this "
"may be useful."
msgstr ""
-"æ\96°ã\81\97ã\81\84ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\81«å¯¾ã\81\97ã\81¦ close-on-exec (B<FD_CLOEXEC>) ã\83\95ã\83©ã\82°ã\82\92"
-"セットする。 このフラグが役に立つ理由については、 B<open>(2) の "
+"æ\96°ã\81\97ã\81\84ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\83¼ã\81«å¯¾ã\81\97ã\81¦ close-on-exec (B<FD_CLOEXEC>) ã\83\95ã\83©ã\82°"
+"ã\82\92ã\82»ã\83\83ã\83\88ã\81\99ã\82\8bã\80\82 ã\81\93ã\81®ã\83\95ã\83©ã\82°ã\81\8cå½¹ã\81«ç«\8bã\81¤ç\90\86ç\94±ã\81«ã\81¤ã\81\84ã\81¦ã\81¯ã\80\81 B<open>(2) ã\81® "
"B<O_CLOEXEC> フラグの説明を参照のこと。"
#. type: TP
-#: build/C/man2/eventfd.2:53
-#, fuzzy, no-wrap
-#| msgid "B<SA_SIGINFO> (since Linux 2.2)"
+#: build/C/man2/eventfd.2:54
+#, 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
-#: build/C/man2/timerfd_create.2:92
+#: build/C/man2/eventfd.2:62 build/C/man2/signalfd.2:85
+#: build/C/man2/timerfd_create.2:100
msgid ""
"Set the B<O_NONBLOCK> file status flag on the new open file description. "
"Using this flag saves extra calls to B<fcntl>(2) to achieve the same result."
"なる。"
#. type: TP
-#: build/C/man2/eventfd.2:61
-#, fuzzy, no-wrap
-#| msgid "B<PR_SET_SECCOMP> (since Linux 2.6.23)"
+#: build/C/man2/eventfd.2:62
+#, 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
+#: build/C/man2/eventfd.2:66
msgid ""
"Provide semaphore-like semantics for reads from the new file descriptor. "
"See below."
msgstr ""
+"新しいファイルディスクリプターからの読み出しにおいて、セマフォ風の動作を行"
+"う。 下記参照。"
#. type: Plain text
-#: build/C/man2/eventfd.2:69 build/C/man2/signalfd.2:98
+#: build/C/man2/eventfd.2:70 build/C/man2/signalfd.2:99
msgid ""
"In Linux up to version 2.6.26, the I<flags> argument is unused, and must be "
"specified as zero."
"しなければならない。"
#. type: Plain text
-#: build/C/man2/eventfd.2:75
+#: build/C/man2/eventfd.2:76
msgid ""
"As its return value, B<eventfd>() returns a new file descriptor that can be "
"used to refer to the eventfd object. The following operations can be "
"performed on the file descriptor:"
msgstr ""
"B<eventfd>() は eventfd オブジェクトを参照するのに使用できる新しいファイル"
-"ディスクリプタ を返す。返されたファイルディスクリプタに対しては以下の操作を実"
-"行できる。"
+"ディスクリプター を返す。返されたファイルディスクリプターに対しては以下の操作"
+"を実行できる。"
#. type: TP
-#: build/C/man2/eventfd.2:75 build/C/man2/signalfd.2:101
-#: build/C/man2/timerfd_create.2:210
+#: build/C/man2/eventfd.2:76 build/C/man2/signalfd.2:102
+#: build/C/man2/timerfd_create.2:218
#, no-wrap
msgid "B<read>(2)"
msgstr "B<read>(2)"
#. 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."
+#: build/C/man2/eventfd.2:86
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 バイトの整数を返す。 渡されたバッファーの大きさが "
+"8 バイト未満の場合、 B<read>(2) はエラー B<EINVAL> で失敗する。"
#. type: Plain text
-#: build/C/man2/eventfd.2:90
+#: build/C/man2/eventfd.2:91
msgid ""
-"The value returned by B<read>(2) is in host byte order, i.e., the native "
-"byte order for integers on the host machine."
+"The value returned by B<read>(2) is in host byte order\\(emthat is, the "
+"native byte order for integers on the host machine."
msgstr ""
+"B<read>(2) が返す値は、ホストバイトオーダ、つまり、そのホストマシンにおける整"
+"数の通常のバイトオーダである。"
#. type: Plain text
-#: build/C/man2/eventfd.2:97
+#: build/C/man2/eventfd.2:98
msgid ""
"The semantics of B<read>(2) depend on whether the eventfd counter currently "
"has a nonzero value and whether the B<EFD_SEMAPHORE> flag was specified when "
"creating the eventfd file descriptor:"
msgstr ""
+"B<read>(2) の動作は、 eventfd カウンターの現在の値が 0 以外であるかと、 "
+"eventfd ファイルディスクリプターを作成する際に B<EFD_SEMAPHORE> フラグが指定"
+"されたか、により変化する。"
#. type: IP
-#: build/C/man2/eventfd.2:98 build/C/man2/eventfd.2:105
-#: build/C/man2/eventfd.2:112 build/C/man2/eventfd.2:157
-#: build/C/man2/eventfd.2:167 build/C/man2/eventfd.2:177
-#: build/C/man3/psignal.3:103 build/C/man3/psignal.3:107
-#: build/C/man2/sigaction.2:294 build/C/man2/sigaction.2:309
-#: build/C/man2/sigaction.2:325 build/C/man2/sigaction.2:340
-#: build/C/man2/sigaction.2:387 build/C/man2/sigaction.2:423
-#: build/C/man2/signal.2:66 build/C/man2/signal.2:71 build/C/man2/signal.2:78
-#: build/C/man2/signal.2:205 build/C/man2/signal.2:209
-#: build/C/man2/signal.2:248 build/C/man7/signal.7:147
-#: build/C/man7/signal.7:155 build/C/man7/signal.7:611
-#: build/C/man7/signal.7:613 build/C/man7/signal.7:634
-#: build/C/man7/signal.7:649 build/C/man7/signal.7:653
-#: build/C/man7/signal.7:660 build/C/man7/signal.7:676
-#: build/C/man7/signal.7:682 build/C/man7/signal.7:689
-#: build/C/man7/signal.7:694 build/C/man7/signal.7:713
-#: build/C/man7/signal.7:732 build/C/man7/signal.7:739
-#: build/C/man7/signal.7:748 build/C/man7/signal.7:756
-#: build/C/man7/signal.7:762 build/C/man7/signal.7:767
-#: build/C/man7/signal.7:787 build/C/man7/signal.7:806
-#: build/C/man7/signal.7:809 build/C/man7/signal.7:812
-#: build/C/man7/signal.7:815 build/C/man7/signal.7:820
-#: build/C/man7/signal.7:826 build/C/man7/signal.7:830
-#: build/C/man3/sigwait.3:59 build/C/man3/sigwait.3:64
-#: build/C/man2/timer_create.2:214 build/C/man2/timer_create.2:217
-#: build/C/man2/timer_create.2:220 build/C/man2/timer_create.2:224
-#: build/C/man2/timer_create.2:227 build/C/man2/timer_create.2:233
-#: build/C/man2/timer_create.2:237
+#: build/C/man2/eventfd.2:99 build/C/man2/eventfd.2:106
+#: build/C/man2/eventfd.2:113 build/C/man2/eventfd.2:158
+#: build/C/man2/eventfd.2:168 build/C/man2/eventfd.2:178
+#: build/C/man2/prctl.2:978 build/C/man2/prctl.2:983 build/C/man2/prctl.2:988
+#: build/C/man2/prctl.2:998 build/C/man3/psignal.3:105
+#: build/C/man3/psignal.3:109 build/C/man2/sigaction.2:318
+#: build/C/man2/sigaction.2:333 build/C/man2/sigaction.2:349
+#: build/C/man2/sigaction.2:364 build/C/man2/sigaction.2:411
+#: build/C/man2/sigaction.2:458 build/C/man2/sigaction.2:472
+#: build/C/man2/signal.2:68 build/C/man2/signal.2:73 build/C/man2/signal.2:80
+#: build/C/man2/signal.2:224 build/C/man2/signal.2:228
+#: build/C/man2/signal.2:244 build/C/man7/signal.7:149
+#: build/C/man7/signal.7:157 build/C/man7/signal.7:615
+#: build/C/man7/signal.7:617 build/C/man7/signal.7:638
+#: build/C/man7/signal.7:672 build/C/man7/signal.7:676
+#: build/C/man7/signal.7:683 build/C/man7/signal.7:701
+#: build/C/man7/signal.7:711 build/C/man7/signal.7:718
+#: build/C/man7/signal.7:723 build/C/man7/signal.7:725
+#: build/C/man7/signal.7:729 build/C/man7/signal.7:748
+#: build/C/man7/signal.7:762 build/C/man7/signal.7:773
+#: build/C/man7/signal.7:780 build/C/man7/signal.7:789
+#: build/C/man7/signal.7:797 build/C/man7/signal.7:803
+#: build/C/man7/signal.7:823 build/C/man7/signal.7:837
+#: build/C/man7/signal.7:848 build/C/man7/signal.7:851
+#: build/C/man7/signal.7:854 build/C/man7/signal.7:857
+#: build/C/man7/signal.7:864 build/C/man7/signal.7:870
+#: build/C/man7/signal.7:874 build/C/man3/sigwait.3:62
+#: build/C/man3/sigwait.3:67 build/C/man2/timer_create.2:218
+#: build/C/man2/timer_create.2:221 build/C/man2/timer_create.2:224
+#: build/C/man2/timer_create.2:228 build/C/man2/timer_create.2:231
+#: build/C/man2/timer_create.2:246 build/C/man2/timer_create.2:250
#, no-wrap
msgid "*"
msgstr "*"
#. 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.)"
+#: build/C/man2/eventfd.2:106
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 バ"
-"イトの値を返し、 カウンタ値は 0 にリセットされる (返り値はホスト・バイトオー"
-"ã\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 以外の値の場合、 "
+"B<read>(2) はカウンター値を格納した 8 バイトの値を返し、 カウンター値は 0 に"
+"ã\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.)"
+#: build/C/man2/eventfd.2:113
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 以外の値の場合、 "
+"B<read>(2) は値 1 の 8 バイト値を返し、カウンター値は 1 減算される。"
#. type: Plain text
-#: build/C/man2/eventfd.2:122
-#, fuzzy
-#| msgid ""
-#| "If the counter is zero at the time of the B<read>(2), then the call "
-#| "either blocks until the counter becomes nonzero, or fails with the error "
-#| "B<EAGAIN> if the file descriptor has been made nonblocking."
+#: build/C/man2/eventfd.2:123
msgid ""
"If the eventfd counter is zero at the time of the call to B<read>(2), then "
"the call either blocks until the counter becomes nonzero (at which time, the "
"B<read>(2) proceeds as described above) or fails with the error B<EAGAIN> "
"if the file descriptor has been made nonblocking."
msgstr ""
-"B<read>(2) の時点でカウンタが 0 の場合、 B<read>(2) はカウンタが 0 以外にな"
-"るまで停止 (block) する、 もしくはファイルディスクリプタが非停止 "
-"(nonblocking) に設定されている場合はエラー B<EAGAIN> で失敗する。"
+"B<read>(2) を呼び出した時点で eventfd カウンターが 0 の場合、 B<read>(2) はカ"
+"ウンターが 0 以外になるまで停止 (block) する (0 以外になった時点で "
+"B<read>(2) は上記で述べた通り実行を再開する)、 もしくはファイルディスクリプ"
+"ターが非停止 (nonblocking) に設定されている場合はエラー B<EAGAIN> で失敗す"
+"る。"
#. type: TP
-#: build/C/man2/eventfd.2:123
+#: build/C/man2/eventfd.2:124
#, no-wrap
msgid "B<write>(2)"
msgstr "B<write>(2)"
#. type: Plain text
-#: build/C/man2/eventfd.2:140
+#: build/C/man2/eventfd.2:141
msgid ""
"A B<write>(2) call adds the 8-byte integer value supplied in its buffer to "
"the counter. The maximum value that may be stored in the counter is the "
"descriptor, or fails with the error B<EAGAIN> if the file descriptor has "
"been made nonblocking."
msgstr ""
-"B<write>(2) ã\81¯ã\80\81å¼\95ã\81\8dæ\95°ã\81®ã\83\90ã\83\83ã\83\95ã\82¡ã\81§æ¸¡ã\81\95ã\82\8cã\81\9f 8 ã\83\90ã\82¤ã\83\88ã\81®æ\95´æ\95°å\80¤ã\82\92ã\82«ã\82¦ã\83³ã\82¿ã\81«å\8a ç®\97"
-"する。 カウンタに格納可能な最大値は unsigned の 64 ビット整数の最大値から 1 "
-"ã\82\92å¼\95ã\81\84ã\81\9få\80¤ (ã\81\99ã\81ªã\82\8fã\81¡ 0xfffffffffffffffe) ã\81§ã\81\82ã\82\8bã\80\82 å\8a ç®\97ã\82\92è¡\8cã\81\86ã\81¨ã\82«ã\82¦ã\83³ã\82¿å\80¤ã\81\8cæ\9c\80"
-"大å\80¤ã\82\92è¶\85é\81\8eã\81\99ã\82\8bå ´å\90\88ã\81«ã\81¯ã\80\81 ã\81\9dã\81®ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\81«å¯¾ã\81\97ã\81¦ B<read>(2) ã\81\8cå®\9f"
-"行されるまで、 B<write>(2) は停止 (block) する、 もしくはファイルディスクリ"
-"ã\83\97ã\82¿ã\81\8cé\9d\9eå\81\9cæ¢ (nonblocking) ã\81«è¨å®\9aã\81\95ã\82\8cã\81¦ã\81\84ã\82\8bå ´å\90\88ã\81¯ã\82¨ã\83©ã\83¼ B<EAGAIN> ã\81§å¤±æ\95\97ã\81\99"
-"る。"
+"B<write>(2) ã\81¯ã\80\81å¼\95ã\81\8dæ\95°ã\81®ã\83\90ã\83\83ã\83\95ã\82¡ã\83¼ã\81§æ¸¡ã\81\95ã\82\8cã\81\9f 8 ã\83\90ã\82¤ã\83\88ã\81®æ\95´æ\95°å\80¤ã\82\92ã\82«ã\82¦ã\83³ã\82¿ã\83¼ã\81«"
+"加算する。 カウンターに格納可能な最大値は unsigned の 64 ビット整数の最大値か"
+"ã\82\89 1 ã\82\92å¼\95ã\81\84ã\81\9få\80¤ (ã\81\99ã\81ªã\82\8fã\81¡ 0xfffffffffffffffe) ã\81§ã\81\82ã\82\8bã\80\82 å\8a ç®\97ã\82\92è¡\8cã\81\86ã\81¨ã\82«ã\82¦ã\83³ã\82¿ã\83¼"
+"å\80¤ã\81\8cæ\9c\80大å\80¤ã\82\92è¶\85é\81\8eã\81\99ã\82\8bå ´å\90\88ã\81«ã\81¯ã\80\81 ã\81\9dã\81®ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\83¼ã\81«å¯¾ã\81\97ã\81¦ "
+"B<read>(2) が実行されるまで、 B<write>(2) は停止 (block) する、 もしくは"
+"ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\83¼ã\81\8cé\9d\9eå\81\9cæ¢ (nonblocking) ã\81«è¨å®\9aã\81\95ã\82\8cã\81¦ã\81\84ã\82\8bå ´å\90\88ã\81¯ã\82¨ã\83©ã\83¼ "
+"B<EAGAIN> で失敗する。"
#. type: Plain text
-#: build/C/man2/eventfd.2:147
+#: build/C/man2/eventfd.2:148
msgid ""
"A B<write>(2) will fail with the error B<EINVAL> if the size of the "
"supplied buffer is less than 8 bytes, or if an attempt is made to write the "
"value 0xffffffffffffffff."
msgstr ""
-"渡されたバッファの大きさが 8 バイト未満の場合、もしくは 値 "
+"渡ã\81\95ã\82\8cã\81\9fã\83\90ã\83\83ã\83\95ã\82¡ã\83¼ã\81®å¤§ã\81\8dã\81\95ã\81\8c 8 ã\83\90ã\82¤ã\83\88æ\9cªæº\80ã\81®å ´å\90\88ã\80\81ã\82\82ã\81\97ã\81\8fã\81¯ å\80¤ "
"0xffffffffffffffff を書き込もうとした場合、 B<write>(2) はエラー B<EINVAL> "
"で失敗する。"
#. type: TP
-#: build/C/man2/eventfd.2:147 build/C/man2/signalfd.2:139
-#: build/C/man2/timerfd_create.2:243
+#: build/C/man2/eventfd.2:148 build/C/man2/signalfd.2:140
+#: build/C/man2/timerfd_create.2:251
#, no-wrap
msgid "B<poll>(2), B<select>(2) (and similar)"
msgstr "B<poll>(2), B<select>(2) (と同様の操作)"
#. type: Plain text
-#: build/C/man2/eventfd.2:156
+#: build/C/man2/eventfd.2:157
msgid ""
-"The returned file descriptor supports B<poll>(2) (and analogously B<epoll>"
-"(7)) and B<select>(2), as follows:"
+"The returned file descriptor supports B<poll>(2) (and analogously "
+"B<epoll>(7)) and B<select>(2), as follows:"
msgstr ""
-"返されたファイルディスクリプタは、 B<poll>(2) (B<epoll>(7) も同じ) や "
+"è¿\94ã\81\95ã\82\8cã\81\9fã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\83¼ã\81¯ã\80\81 B<poll>(2) (B<epoll>(7) ã\82\82å\90\8cã\81\98) ã\82\84 "
"B<select>(2) をサポートしており、以下のような動作をする。"
#. type: Plain text
-#: build/C/man2/eventfd.2:167
+#: build/C/man2/eventfd.2:168
msgid ""
"The file descriptor is readable (the B<select>(2) I<readfds> argument; the "
"B<poll>(2) B<POLLIN> flag) if the counter has a value greater than 0."
msgstr ""
-"ã\82«ã\82¦ã\83³ã\82¿ã\81\8c 0 ã\82\88ã\82\8a大ã\81\8dã\81\84å\80¤ã\81®å ´å\90\88ã\80\81 ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\81¯èªã\81¿å\87ºã\81\97å\8f¯è\83½ã\81¨ã\81ªã\82\8b "
-"(B<select>(2) の I<readfds> 引き数や B<poll>(2) の B<POLLIN> フラグ)。"
+"ã\82«ã\82¦ã\83³ã\82¿ã\83¼ã\81\8c 0 ã\82\88ã\82\8a大ã\81\8dã\81\84å\80¤ã\81®å ´å\90\88ã\80\81 ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\83¼ã\81¯èªã\81¿å\87ºã\81\97å\8f¯è\83½ã\81¨"
+"なる (B<select>(2) の I<readfds> 引き数や B<poll>(2) の B<POLLIN> フラグ)。"
#. type: Plain text
-#: build/C/man2/eventfd.2:177
+#: build/C/man2/eventfd.2:178
msgid ""
"The file descriptor is writable (the B<select>(2) I<writefds> argument; the "
"B<poll>(2) B<POLLOUT> flag) if it is possible to write a value of at least "
"\"1\" without blocking."
msgstr ""
"少なくとも値 \"1\" を、停止 (block) を伴わずに書き込める場合、 ファイルディス"
-"ã\82¯ã\83ªã\83\97ã\82¿ã\81¯æ\9b¸ã\81\8dè¾¼ã\81¿å\8f¯è\83½ã\81¨ã\81ªã\82\8b (B<select>(2) ã\81® I<writefds> å¼\95ã\81\8dæ\95°ã\82\84 B<poll>"
-"(2) の B<POLLOUT> フラグ)。"
+"ã\82¯ã\83ªã\83\97ã\82¿ã\83¼ã\81¯æ\9b¸ã\81\8dè¾¼ã\81¿å\8f¯è\83½ã\81¨ã\81ªã\82\8b (B<select>(2) ã\81® I<writefds> å¼\95ã\81\8dæ\95°ã\82\84 "
+"B<poll>(2) の B<POLLOUT> フラグ)。"
#. type: Plain text
-#: build/C/man2/eventfd.2:197
+#: build/C/man2/eventfd.2:198
msgid ""
"If an overflow of the counter value was detected, then B<select>(2) "
"indicates the file descriptor as being both readable and writable, and "
"B<read>(2) will return that maximum I<uint64_t> value (i.e., "
"0xffffffffffffffff)."
msgstr ""
-"カウンタ値のオーバーフローが検出された場合、 B<select>(2) はファイルディスク"
-"リプタは読み出し可能と書き込み可能の両方を通知し、 B<poll>(2) は B<POLLERR> "
-"イベントを返す。 上述の通り、 B<write>(2) でカウンタがオーバーフローすること"
-"は決してない。 しかしながら、 KAIO サブシステムによって 2^64 回の eventfd "
-"\"signal posts\" が 実行された場合にはオーバーフローが起こり得る (理論的には"
-"あり得るが、実用的にはあり得ない)。 オーバーフローが発生した場合、 B<read>"
-"(2) は I<uint64_t> の最大値 (すなわち 0xffffffffffffffff) を返す。"
+"カウンター値のオーバーフローが検出された場合、 B<select>(2) はファイルディス"
+"クリプターは読み出し可能と書き込み可能の両方を通知し、 B<poll>(2) は "
+"B<POLLERR> イベントを返す。 上述の通り、 B<write>(2) でカウンターがオーバー"
+"フローすることは決してない。 しかしながら、 KAIO サブシステムによって 2^64 回"
+"の eventfd \"signal posts\" が 実行された場合にはオーバーフローが起こり得る "
+"(理論的にはあり得るが、実用的にはあり得ない)。 オーバーフローが発生した場"
+"合、 B<read>(2) は I<uint64_t> の最大値 (すなわち 0xffffffffffffffff) を返"
+"す。"
#. type: Plain text
#: build/C/man2/eventfd.2:205
msgid ""
"The eventfd file descriptor also supports the other file-descriptor "
-"multiplexing APIs: B<pselect>(2), B<ppoll>(2), and B<epoll>(7)."
+"multiplexing APIs: B<pselect>(2) and B<ppoll>(2)."
msgstr ""
-"eventfd ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\81¯ã\80\81ã\81\93ã\82\8c以å¤\96ã\81®ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ å¤\9aé\87\8d API "
-"である B<pselect>(2), B<ppoll>(2), B<epoll>(7) もサポートしている。"
+"eventfd ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\83¼ã\81¯ã\80\81ã\81\93ã\82\8c以å¤\96ã\81®ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\83¼ å¤\9aé\87\8d "
+"API である B<pselect>(2) と B<ppoll>(2) もサポートしている。"
#. type: TP
-#: build/C/man2/eventfd.2:205 build/C/man2/signalfd.2:159
-#: build/C/man2/timerfd_create.2:261
+#: build/C/man2/eventfd.2:205 build/C/man2/signalfd.2:160
+#: build/C/man2/timerfd_create.2:269
#, no-wrap
msgid "B<close>(2)"
msgstr "B<close>(2)"
"all file descriptors associated with the same eventfd object have been "
"closed, the resources for object are freed by the kernel."
msgstr ""
-"ファイルディスクリプタがそれ以降は必要なくなった際には、クローズすべきであ"
-"ã\82\8bã\80\82 å\90\8cã\81\98 eventfd ã\82ªã\83\96ã\82¸ã\82§ã\82¯ã\83\88ã\81«é\96¢é\80£ä»\98ã\81\91ã\82\89ã\82\8cã\81\9fã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\81\8cå\85¨ã\81¦ ã\82¯"
-"ローズされると、そのオブジェクト用の資源がカーネルにより解放される。"
+"ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\83¼ã\81\8cã\81\9dã\82\8c以é\99\8dã\81¯å¿\85è¦\81ã\81ªã\81\8fã\81ªã\81£ã\81\9fé\9a\9bã\81«ã\81¯ã\80\81ã\82¯ã\83ã\83¼ã\82ºã\81\99ã\81¹ã\81\8dã\81§ã\81\82"
+"ã\82\8bã\80\82 å\90\8cã\81\98 eventfd ã\82ªã\83\96ã\82¸ã\82§ã\82¯ã\83\88ã\81«é\96¢é\80£ä»\98ã\81\91ã\82\89ã\82\8cã\81\9fã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\83¼ã\81\8cå\85¨ã\81¦ "
+"ã\82¯ã\83ã\83¼ã\82ºã\81\95ã\82\8cã\82\8bã\81¨ã\80\81ã\81\9dã\81®ã\82ªã\83\96ã\82¸ã\82§ã\82¯ã\83\88ç\94¨ã\81®è³\87æº\90ã\81\8cã\82«ã\83¼ã\83\8dã\83«ã\81«ã\82\88ã\82\8a解æ\94¾ã\81\95ã\82\8cã\82\8bã\80\82"
#. 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>() で生成されたファイルディス"
+"クリプターのコピーを継承する。 複製されたファイルディスクリプターは同じ "
+"eventfd オブジェクトに関連付けられる。 close-on-exec フラグが設定されていない"
+"場合、 B<execve>(2) の前後で B<eventfd>() で生成されたファイルディスクリプ"
+"ターは保持される。"
#. type: Plain text
#: build/C/man2/eventfd.2:229
"On success, B<eventfd>() returns a new eventfd file descriptor. On error, "
"-1 is returned and I<errno> is set to indicate the error."
msgstr ""
-"成功すると、 B<eventfd>() は新規の eventfd ファイルディスクリプタを返す。 エ"
-"ラーの場合、-1 を返し、 I<errno> にエラーを示す値を設定する。"
-
-#. type: TP
-#: build/C/man2/eventfd.2:230 build/C/man2/getitimer.2:130
-#: build/C/man2/kill.2:105 build/C/man2/killpg.2:94 build/C/man2/prctl.2:403
-#: build/C/man2/prctl.2:408 build/C/man2/prctl.2:418 build/C/man2/prctl.2:423
-#: build/C/man2/rt_sigqueueinfo.2:136 build/C/man2/sigaction.2:659
-#: build/C/man2/sigaltstack.2:140 build/C/man3/siginterrupt.3:77
-#: build/C/man2/signal.2:101 build/C/man2/signalfd.2:268
-#: build/C/man2/signalfd.2:276 build/C/man3/sigqueue.3:96
-#: build/C/man3/sigsetops.3:122 build/C/man3/sigwait.3:72
-#: build/C/man2/sigwaitinfo.2:122 build/C/man2/timer_create.2:177
-#: build/C/man2/timer_delete.2:58 build/C/man2/timer_getoverrun.2:88
-#: build/C/man2/timer_settime.2:187 build/C/man2/timer_settime.2:195
-#: build/C/man2/timerfd_create.2:304 build/C/man2/timerfd_create.2:312
-#: build/C/man2/timerfd_create.2:348 build/C/man2/timerfd_create.2:355
-#: build/C/man2/timerfd_create.2:361 build/C/man2/tkill.2:74
-#: build/C/man2/wait.2:416
+"成功すると、 B<eventfd>() は新規の eventfd ファイルディスクリプターを返す。 "
+"エラーの場合、-1 を返し、 I<errno> にエラーを示す値を設定する。"
+
+#. type: TP
+#: build/C/man2/eventfd.2:230 build/C/man2/getitimer.2:142
+#: build/C/man2/kill.2:106 build/C/man2/killpg.2:95 build/C/man2/prctl.2:930
+#: build/C/man2/prctl.2:935 build/C/man2/prctl.2:947 build/C/man2/prctl.2:952
+#: build/C/man2/prctl.2:961 build/C/man2/prctl.2:971 build/C/man2/prctl.2:1011
+#: build/C/man2/prctl.2:1021 build/C/man2/prctl.2:1029
+#: build/C/man2/prctl.2:1040 build/C/man2/prctl.2:1049
+#: build/C/man2/prctl.2:1063 build/C/man2/prctl.2:1075
+#: build/C/man2/prctl.2:1086 build/C/man2/rt_sigqueueinfo.2:141
+#: build/C/man2/s390_runtime_instr.2:66 build/C/man2/sigaction.2:738
+#: build/C/man2/sigaltstack.2:142 build/C/man3/siginterrupt.3:84
+#: build/C/man2/signal.2:106 build/C/man2/signalfd.2:271
+#: build/C/man2/signalfd.2:279 build/C/man2/sigprocmask.2:107
+#: build/C/man3/sigqueue.3:98 build/C/man3/sigsetops.3:128
+#: build/C/man3/sigwait.3:75 build/C/man2/sigwaitinfo.2:129
+#: build/C/man2/timer_create.2:181 build/C/man2/timer_delete.2:61
+#: build/C/man2/timer_getoverrun.2:91 build/C/man2/timer_settime.2:191
+#: build/C/man2/timer_settime.2:199 build/C/man2/timerfd_create.2:312
+#: build/C/man2/timerfd_create.2:320 build/C/man2/timerfd_create.2:356
+#: build/C/man2/timerfd_create.2:363 build/C/man2/timerfd_create.2:369
+#: build/C/man2/tkill.2:93 build/C/man2/wait.2:418
#, no-wrap
msgid "B<EINVAL>"
msgstr "B<EINVAL>"
#. type: Plain text
#: build/C/man2/eventfd.2:234
msgid "An unsupported value was specified in I<flags>."
-msgstr ""
+msgstr "I<flags> にサポートされていない値が指定された。"
#. type: TP
-#: build/C/man2/eventfd.2:234 build/C/man2/signalfd.2:283
-#: build/C/man2/timerfd_create.2:319
+#: build/C/man2/eventfd.2:234 build/C/man2/signalfd.2:286
+#: build/C/man2/timerfd_create.2:327
#, no-wrap
msgid "B<EMFILE>"
msgstr "B<EMFILE>"
#: build/C/man2/eventfd.2:237
msgid "The per-process limit on open file descriptors has been reached."
msgstr ""
-"オープン済みのファイルディスクリプタの数がプロセスあたりの上限に 達していた。"
+"オープン済みのファイルディスクリプターの数がプロセスあたりの上限に 達してい"
+"た。"
#. type: TP
-#: build/C/man2/eventfd.2:237 build/C/man2/signalfd.2:286
-#: build/C/man2/timerfd_create.2:322
+#: build/C/man2/eventfd.2:237 build/C/man2/signalfd.2:289
+#: build/C/man2/timerfd_create.2:330
#, no-wrap
msgid "B<ENFILE>"
msgstr "B<ENFILE>"
#. type: Plain text
-#: build/C/man2/eventfd.2:241 build/C/man2/signalfd.2:290
-#: build/C/man2/timerfd_create.2:326
+#: build/C/man2/eventfd.2:241 build/C/man2/signalfd.2:293
+#: build/C/man2/timerfd_create.2:334
msgid ""
"The system-wide limit on the total number of open files has been reached."
msgstr "オープン済みのファイル総数がシステム全体の上限に達していた。"
#. type: TP
-#: build/C/man2/eventfd.2:241 build/C/man2/signalfd.2:290
-#: build/C/man2/timerfd_create.2:326
+#: build/C/man2/eventfd.2:241 build/C/man2/signalfd.2:293
+#: build/C/man2/timerfd_create.2:334
#, no-wrap
msgid "B<ENODEV>"
msgstr "B<ENODEV>"
#. type: Plain text
-#: build/C/man2/eventfd.2:249 build/C/man2/signalfd.2:293
-#: build/C/man2/timerfd_create.2:329
+#: build/C/man2/eventfd.2:249 build/C/man2/signalfd.2:296
+#: build/C/man2/timerfd_create.2:337
msgid "Could not mount (internal) anonymous inode device."
msgstr "(カーネル内の) 無名 inode デバイスをマウントできなかった。"
#. type: TP
-#: build/C/man2/eventfd.2:249 build/C/man2/sigaltstack.2:145
-#: build/C/man2/signalfd.2:293 build/C/man2/timer_create.2:185
-#: build/C/man2/timerfd_create.2:329
+#: build/C/man2/eventfd.2:249 build/C/man2/s390_runtime_instr.2:73
+#: build/C/man2/sigaltstack.2:147 build/C/man2/signalfd.2:296
+#: build/C/man2/timer_create.2:189 build/C/man2/timerfd_create.2:337
#, no-wrap
msgid "B<ENOMEM>"
msgstr "B<ENOMEM>"
#: build/C/man2/eventfd.2:253
msgid "There was insufficient memory to create a new eventfd file descriptor."
msgstr ""
-"新しい eventfd ファイルディスクリプタを生成するのに十分なメモリがなかった。"
+"新しい eventfd ファイルディスクリプターを生成するのに十分なメモリーがなかっ"
+"た。"
#. type: SH
-#: build/C/man2/eventfd.2:253 build/C/man2/prctl.2:470
-#: build/C/man3/psignal.3:93 build/C/man2/rt_sigqueueinfo.2:164
-#: build/C/man2/signalfd.2:296 build/C/man3/sigqueue.3:110
-#: build/C/man2/timer_create.2:189 build/C/man2/timer_delete.2:62
-#: build/C/man2/timer_getoverrun.2:92 build/C/man2/timer_settime.2:201
-#: build/C/man2/timerfd_create.2:367 build/C/man2/tkill.2:85
+#: build/C/man2/eventfd.2:253 build/C/man2/prctl.2:1185
+#: build/C/man3/psignal.3:95 build/C/man2/restart_syscall.2:96
+#: build/C/man2/rt_sigqueueinfo.2:169 build/C/man2/s390_runtime_instr.2:79
+#: build/C/man2/sgetmask.2:66 build/C/man2/signalfd.2:299
+#: build/C/man3/sigqueue.3:112 build/C/man3/sigvec.3:234
+#: build/C/man2/timer_create.2:193 build/C/man2/timer_delete.2:65
+#: build/C/man2/timer_getoverrun.2:95 build/C/man2/timer_settime.2:205
+#: build/C/man2/timerfd_create.2:375 build/C/man2/tkill.2:104
#, no-wrap
msgid "VERSIONS"
msgstr "バージョン"
"a pipe)."
msgstr ""
"アプリケーションは、パイプをイベントを通知するためだけに使用している 全ての場"
-"é\9d¢ã\81«ã\81\8aã\81\84ã\81¦ã\80\81ã\83\91ã\82¤ã\83\97ã\81®ä»£ã\82\8fã\82\8aã\81« eventfd ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\82\92 使ç\94¨ã\81\99ã\82\8bã\81\93ã\81¨ã\81\8c"
-"ã\81§ã\81\8dã\82\8bã\80\82 eventfd ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\82\92使ã\81\86æ\96¹ã\81\8cã\80\81ã\83\91ã\82¤ã\83\97ã\82\92使ã\81\86å ´å\90\88ã\81«æ¯\94ã\81¹ã\81¦ "
-"ã\82«ã\83¼ã\83\8dã\83«ã\81§ã\81®ã\82ªã\83¼ã\83\90ã\83\98ã\83\83ã\83\89ã\81¯æ¯\94ã\81¹ã\82\8bã\81¨ã\81\9aã\81£ã\81¨å°\8fã\81\95ã\81\8fã\80\81ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\82\82 ä¸\80ã\81¤"
-"しか必要としない (パイプの場合は二つ必要である)。"
+"é\9d¢ã\81«ã\81\8aã\81\84ã\81¦ã\80\81ã\83\91ã\82¤ã\83\97ã\81®ä»£ã\82\8fã\82\8aã\81« eventfd ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\83¼ã\82\92 使ç\94¨ã\81\99ã\82\8bã\81\93ã\81¨"
+"ã\81\8cã\81§ã\81\8dã\82\8bã\80\82 eventfd ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\83¼ã\82\92使ã\81\86æ\96¹ã\81\8cã\80\81ã\83\91ã\82¤ã\83\97ã\82\92使ã\81\86å ´å\90\88ã\81«æ¯\94ã\81¹"
+"ã\81¦ ã\82«ã\83¼ã\83\8dã\83«ã\81§ã\81®ã\82ªã\83¼ã\83\90ã\83\98ã\83\83ã\83\89ã\81¯æ¯\94ã\81¹ã\82\8bã\81¨ã\81\9aã\81£ã\81¨å°\8fã\81\95ã\81\8fã\80\81ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\83¼"
+"ã\82\82 ä¸\80ã\81¤ã\81\97ã\81\8bå¿\85è¦\81ã\81¨ã\81\97ã\81ªã\81\84 (ã\83\91ã\82¤ã\83\97ã\81®å ´å\90\88ã\81¯äº\8cã\81¤å¿\85è¦\81ã\81§ã\81\82ã\82\8b)ã\80\82"
#. or eventually syslets/threadlets
#. type: Plain text
#: build/C/man2/eventfd.2:285
msgid ""
-"When used in the kernel, an eventfd file descriptor can provide a kernel-"
-"userspace bridge allowing, for example, functionalities like KAIO (kernel "
-"AIO) to signal to a file descriptor that some operation is complete."
+"When used in the kernel, an eventfd file descriptor can provide a bridge "
+"from kernel to user space, allowing, for example, functionalities like KAIO "
+"(kernel AIO) to signal to a file descriptor that some operation is complete."
msgstr ""
-"ã\82«ã\83¼ã\83\8dã\83«å\86\85ã\81§ä½¿ç\94¨ã\81\99ã\82\8bã\81¨ã\80\81eventfd ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\81¯ ã\82«ã\83¼ã\83\8dã\83«ç©ºé\96\93ã\81¨ã\83¦ã\83¼ã\82¶"
-"空間のブリッジ機能を提供することができ、 例えば KAIO (kernel AIO) のような機"
-"能が、あるファイルディスクリプタに何らかの操作が完了したことを 通知することが"
-"できる。"
+"ã\82«ã\83¼ã\83\8dã\83«å\86\85ã\81§ä½¿ç\94¨ã\81\99ã\82\8bã\81¨ã\80\81eventfd ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\83¼ã\81¯ã\82«ã\83¼ã\83\8dã\83«ç©ºé\96\93ã\81\8bã\82\89"
+"ユーザー空間へのブリッジ機能を提供することができ、 例えば KAIO (kernel AIO) "
+"のような機能が、あるファイルディスクリプターに何らかの操作が完了したことを 通"
+"知することができる。"
#. type: Plain text
#: build/C/man2/eventfd.2:302
"interface, these mechanisms could not be multiplexed via B<select>(2), "
"B<poll>(2), or B<epoll>(7).)"
msgstr ""
-"eventfd ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\81®é\87\8dè¦\81ã\81ªç\82¹ã\81¯ã\80\81 eventfd ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿"
-"ã\81\8c B<select>(2), B<poll>(2), B<epoll>(7) ã\82\92使ã\81£ã\81¦ä»\96ã\81®ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿"
-"ã\81¨å\85¨ã\81\8få\90\8cæ§\98ã\81«ç\9b£è¦\96ã\81§ã\81\8dã\82\8bç\82¹ã\81§ã\81\82ã\82\8bã\80\82 ã\81\93ã\81®ã\81\93ã\81¨ã\81¯ã\80\81ã\82¢ã\83\97ã\83ªã\82±ã\83¼ã\82·ã\83§ã\83³ã\81¯ã\80\8cå¾\93æ\9d¥ã\81® "
-"(traditional)」 ファイルの状態変化と eventfd インタフェースをサポートする他の"
-"ã\82«ã\83¼ã\83\8dã\83«æ©\9fæ§\8bã\81®ç\8a¶æ\85\8bå¤\89å\8c\96ã\82\92å\90\8cæ\99\82ã\81«ç\9b£è¦\96 ã\81§ã\81\8dã\82\8bã\81\93ã\81¨ã\82\92æ\84\8få\91³ã\81\99ã\82\8b (B<eventfd>() ã\82¤ã\83³ã\82¿"
-"ã\83\95ã\82§ã\83¼ã\82¹ã\81\8cã\81ªã\81\84æ\99\82ã\81«ã\81¯ã\80\81ã\81\93ã\82\8cã\82\89ã\81®ã\82«ã\83¼ã\83\8dã\83«æ©\9fæ§\8bã\81¯ B<select>(2), B<poll>(2), "
-"B<epoll>(7) 経由で多重することはできなかった)。"
+"eventfd ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\83¼ã\81®é\87\8dè¦\81ã\81ªç\82¹ã\81¯ã\80\81 eventfd ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97"
+"ã\82¿ã\83¼ã\81\8c B<select>(2), B<poll>(2), B<epoll>(7) ã\82\92使ã\81£ã\81¦ä»\96ã\81®ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ª"
+"ã\83\97ã\82¿ã\83¼ã\81¨å\85¨ã\81\8få\90\8cæ§\98ã\81«ç\9b£è¦\96ã\81§ã\81\8dã\82\8bç\82¹ã\81§ã\81\82ã\82\8bã\80\82 ã\81\93ã\81®ã\81\93ã\81¨ã\81¯ã\80\81ã\82¢ã\83\97ã\83ªã\82±ã\83¼ã\82·ã\83§ã\83³ã\81¯ã\80\8cå¾\93æ\9d¥"
+"の (traditional)」 ファイルの状態変化と eventfd インターフェースをサポートす"
+"ã\82\8bä»\96ã\81®ã\82«ã\83¼ã\83\8dã\83«æ©\9fæ§\8bã\81®ç\8a¶æ\85\8bå¤\89å\8c\96ã\82\92å\90\8cæ\99\82ã\81«ç\9b£è¦\96 ã\81§ã\81\8dã\82\8bã\81\93ã\81¨ã\82\92æ\84\8få\91³ã\81\99ã\82\8b (B<eventfd>() "
+"ã\82¤ã\83³ã\82¿ã\83¼ã\83\95ã\82§ã\83¼ã\82¹ã\81\8cã\81ªã\81\84æ\99\82ã\81«ã\81¯ã\80\81ã\81\93ã\82\8cã\82\89ã\81®ã\82«ã\83¼ã\83\8dã\83«æ©\9fæ§\8bã\81¯ B<select>(2), "
+"B<poll>(2), B<epoll>(7) 経由で多重することはできなかった)。"
#. type: SS
-#: build/C/man2/eventfd.2:302 build/C/man2/signalfd.2:333
+#: build/C/man2/eventfd.2:302 build/C/man2/signalfd.2:326
+#: build/C/man2/sigwaitinfo.2:183 build/C/man2/timer_create.2:243
+#: build/C/man2/wait.2:525
#, no-wrap
-msgid "Underlying Linux system calls"
-msgstr "下層にある Linux のシステムコール"
+msgid "C library/kernel ABI differences"
+msgstr "C ライブラリとカーネル ABI の違い"
#. type: Plain text
#: build/C/man2/eventfd.2:316
"to abstract some of the details of reading and writing on an eventfd file "
"descriptor:"
msgstr ""
-"GNU C ã\83©ã\82¤ã\83\96ã\83©ã\83ªã\81¯ã\80\81eventfd ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\81®èªã\81¿å\87ºã\81\97ã\81¨æ\9b¸ã\81\8dè¾¼ã\81¿ã\81« ã\82\92é\96¢"
-"する詳細のいくつか抽象化するために、一つの型と、二つの関数を追加で 定義してい"
-"る。"
+"GNU C ã\83©ã\82¤ã\83\96ã\83©ã\83ªã\81¯ã\80\81eventfd ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\83¼ã\81®èªã\81¿å\87ºã\81\97ã\81¨æ\9b¸ã\81\8dè¾¼ã\81¿ã\81« ã\82\92"
+"関する詳細のいくつか抽象化するために、一つの型と、二つの関数を追加で 定義して"
+"ã\81\84ã\82\8bã\80\82"
#. type: Plain text
#: build/C/man2/eventfd.2:324
"descriptor, returning 0 if the correct number of bytes was transferred, or "
"-1 otherwise."
msgstr ""
-"ã\81\93ã\82\8cã\82\89ã\81®é\96¢æ\95°ã\81¯ã\80\81eventfd ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\81«å¯¾ã\81\99ã\82\8bèªã\81¿å\87ºã\81\97ã\81¨ æ\9b¸ã\81\8dè¾¼ã\81¿ã\81®æ\93\8d"
-"作を実行し、正しいバイト数が転送された場合には 0 を返し、そうでない場合は -1 "
-"を返す。"
+"ã\81\93ã\82\8cã\82\89ã\81®é\96¢æ\95°ã\81¯ã\80\81eventfd ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\83¼ã\81«å¯¾ã\81\99ã\82\8bèªã\81¿å\87ºã\81\97ã\81¨ æ\9b¸ã\81\8dè¾¼ã\81¿ã\81®"
+"操作を実行し、正しいバイト数が転送された場合には 0 を返し、そうでない場合は "
+"-1 を返す。"
#. type: SH
-#: build/C/man2/eventfd.2:334 build/C/man2/sigaction.2:779
-#: build/C/man2/sigaltstack.2:213 build/C/man2/signalfd.2:357
-#: build/C/man2/timer_create.2:251 build/C/man2/timer_getoverrun.2:125
-#: build/C/man2/timer_settime.2:205 build/C/man2/timerfd_create.2:372
-#: build/C/man2/wait.2:522
+#: build/C/man2/eventfd.2:334 build/C/man2/sigaction.2:858
+#: build/C/man2/sigaltstack.2:217 build/C/man2/signalfd.2:360
+#: build/C/man3/sigwait.3:91 build/C/man2/timer_create.2:264
+#: build/C/man2/timer_getoverrun.2:128 build/C/man2/timer_settime.2:209
+#: build/C/man2/timerfd_create.2:386 build/C/man2/wait.2:552
#, no-wrap
msgid "EXAMPLE"
msgstr "例"
"eventfd file descriptor. When the parent has finished sleeping, it reads "
"from the eventfd file descriptor."
msgstr ""
-"以ä¸\8bã\81®ã\83\97ã\83ã\82°ã\83©ã\83 ã\81¯ eventfd ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\82\92ç\94\9fæ\88\90ã\81\97ã\80\81 ã\81\9dã\81®å¾\8c fork ã\82\92å®\9f"
-"行して子プロセスを生成する。 親プロセスが少しの間 sleep する間に、子プロセス"
-"は プログラムのコマンドライン引き数で指定された整数(列)をそれぞれ eventfd "
-"ファイルディスクリプタに書き込む。 親プロセスは sleep を完了すると eventfd "
-"ファイルディスクリプタから 読み出しを行う。"
+"以ä¸\8bã\81®ã\83\97ã\83ã\82°ã\83©ã\83 ã\81¯ eventfd ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\83¼ã\82\92ç\94\9fæ\88\90ã\81\97ã\80\81 ã\81\9dã\81®å¾\8c fork ã\82\92"
+"実行して子プロセスを生成する。 親プロセスが少しの間 sleep する間に、子プロセ"
+"ã\82¹ã\81¯ ã\83\97ã\83ã\82°ã\83©ã\83 ã\81®ã\82³ã\83\9eã\83³ã\83\89ã\83©ã\82¤ã\83³å¼\95ã\81\8dæ\95°ã\81§æ\8c\87å®\9aã\81\95ã\82\8cã\81\9fæ\95´æ\95°(å\88\97)ã\82\92ã\81\9dã\82\8cã\81\9eã\82\8c eventfd "
+"ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\83¼ã\81«æ\9b¸ã\81\8dè¾¼ã\82\80ã\80\82 親ã\83\97ã\83ã\82»ã\82¹ã\81¯ sleep ã\82\92å®\8cäº\86ã\81\99ã\82\8bã\81¨ eventfd "
+"ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\83¼ã\81\8bã\82\89 èªã\81¿å\87ºã\81\97ã\82\92è¡\8cã\81\86ã\80\82"
#. type: Plain text
#: build/C/man2/eventfd.2:345
"Parent read 28 (0x1c) from efd\n"
#. type: SS
-#: build/C/man2/eventfd.2:359 build/C/man2/signalfd.2:380
-#: build/C/man2/timerfd_create.2:400 build/C/man2/wait.2:557
+#: build/C/man2/eventfd.2:359 build/C/man2/signalfd.2:383
+#: build/C/man2/timer_create.2:295 build/C/man2/timerfd_create.2:414
+#: build/C/man2/wait.2:587
#, no-wrap
msgid "Program source"
msgstr "プログラムのソース"
"#include E<lt>stdint.hE<gt> /* Definition of uint64_t */\n"
#. type: Plain text
-#: build/C/man2/eventfd.2:370 build/C/man2/signalfd.2:391
+#: build/C/man2/eventfd.2:370 build/C/man2/signalfd.2:394
#, no-wrap
msgid ""
"#define handle_error(msg) \\e\n"
#. type: Plain text
#: build/C/man2/eventfd.2:428
msgid ""
-"B<futex>(2), B<pipe>(2), B<poll>(2), B<read>(2), B<select>(2), B<signalfd>"
-"(2), B<timerfd_create>(2), B<write>(2), B<epoll>(7), B<sem_overview>(7)"
+"B<futex>(2), B<pipe>(2), B<poll>(2), B<read>(2), B<select>(2), "
+"B<signalfd>(2), B<timerfd_create>(2), B<write>(2), B<epoll>(7), "
+"B<sem_overview>(7)"
msgstr ""
-"B<futex>(2), B<pipe>(2), B<poll>(2), B<read>(2), B<select>(2), B<signalfd>"
-"(2), B<timerfd_create>(2), B<write>(2), B<epoll>(7), B<sem_overview>(7)"
+"B<futex>(2), B<pipe>(2), B<poll>(2), B<read>(2), B<select>(2), "
+"B<signalfd>(2), B<timerfd_create>(2), B<write>(2), B<epoll>(7), "
+"B<sem_overview>(7)"
#. type: TH
-#: build/C/man2/getitimer.2:7
+#: build/C/man2/getitimer.2:12
#, no-wrap
msgid "GETITIMER"
msgstr "GETITIMER"
#. type: Plain text
-#: build/C/man2/getitimer.2:10
+#: build/C/man2/getitimer.2:15
msgid "getitimer, setitimer - get or set value of an interval timer"
-msgstr "getitimer, setitimer - ã\82¤ã\83³ã\82¿ã\83¼ã\83\90ã\83«ã\83»ã\82¿ã\82¤ã\83\9eã\83¼ã\81®å\80¤ã\82\92å\8f\96å¾\97ã\81¾ã\81\9fã\81¯è¨å®\9aã\81\99ã\82\8b"
+msgstr "getitimer, setitimer - インターバルタイマーの値を取得または設定する"
#. type: Plain text
-#: build/C/man2/getitimer.2:13
+#: build/C/man2/getitimer.2:18
#, no-wrap
msgid "B<#include E<lt>sys/time.hE<gt>>\n"
msgstr "B<#include E<lt>sys/time.hE<gt>>\n"
#. type: Plain text
-#: build/C/man2/getitimer.2:15
+#: build/C/man2/getitimer.2:20
#, no-wrap
msgid "B<int getitimer(int >I<which>B<, struct itimerval *>I<curr_value>B<);>\n"
msgstr "B<int getitimer(int >I<which>B<, struct itimerval *>I<curr_value>B<);>\n"
#. type: Plain text
-#: build/C/man2/getitimer.2:18
+#: build/C/man2/getitimer.2:23
#, no-wrap
msgid ""
"B<int setitimer(int >I<which>B<, const struct itimerval *>I<new_value>B<,>\n"
"B< struct itimerval *>I<old_value>B<);>\n"
#. type: Plain text
-#: build/C/man2/getitimer.2:24
+#: build/C/man2/getitimer.2:29
msgid ""
"The system provides each process with three interval timers, each "
-"decrementing in a distinct time domain. When any timer expires, a signal is "
-"sent to the process, and the timer (potentially) restarts."
+"decrementing in a distinct time domain. When a timer expires, a signal is "
+"sent to the process, and the timer is reset to the specified interval (if "
+"nonzero)."
msgstr ""
-"システムは 1 個のプロセスにつき 3 個のインターバル・タイマーを提供する。 それ"
-"ぞれのタイマーは別々の時間領域で減少する。 どのタイマーも満了するとプロセスに"
-"シグナルが送られ、 タイマーは (設定によっては) 再び開始される。"
+"システムは 1 個のプロセスにつき 3 個のインターバルタイマーを提供する。 それぞ"
+"れのタイマーは別々の時間領域で減少する。 あるタイマーが満了すると、 プロセス"
+"にシグナルが送られ、 タイマーは (0 でなければ) 指定されたインターバルに再設定"
+"される。"
#. type: TP
-#: build/C/man2/getitimer.2:24
+#: build/C/man2/getitimer.2:29
#, no-wrap
msgid "B<ITIMER_REAL>"
msgstr "B<ITIMER_REAL>"
#. type: Plain text
-#: build/C/man2/getitimer.2:29
+#: build/C/man2/getitimer.2:34
msgid "decrements in real time, and delivers B<SIGALRM> upon expiration."
msgstr "実時間 (real time) で減少し、満了すると B<SIGALRM> が送られる。"
#. type: TP
-#: build/C/man2/getitimer.2:29
+#: build/C/man2/getitimer.2:34
#, no-wrap
msgid "B<ITIMER_VIRTUAL>"
msgstr "B<ITIMER_VIRTUAL>"
#. type: Plain text
-#: build/C/man2/getitimer.2:34
+#: build/C/man2/getitimer.2:39
msgid ""
"decrements only when the process is executing, and delivers B<SIGVTALRM> "
"upon expiration."
"プロセスが実行されている間のみ減少し、満了すると B<SIGVTALRM> が送られる。"
#. type: TP
-#: build/C/man2/getitimer.2:34
+#: build/C/man2/getitimer.2:39
#, no-wrap
msgid "B<ITIMER_PROF>"
msgstr "B<ITIMER_PROF>"
#. type: Plain text
-#: build/C/man2/getitimer.2:44
+#: build/C/man2/getitimer.2:49
msgid ""
"decrements both when the process executes and when the system is executing "
"on behalf of the process. Coupled with B<ITIMER_VIRTUAL>, this timer is "
"をプロファイルするのに使用される。 満了すると B<SIGPROF> が送られる。"
#. type: Plain text
-#: build/C/man2/getitimer.2:46
+#: build/C/man2/getitimer.2:51
msgid "Timer values are defined by the following structures:"
msgstr "タイマーの値は以下の構造体によって定義される:"
#. type: Plain text
-#: build/C/man2/getitimer.2:54
+#: build/C/man2/getitimer.2:59
#, no-wrap
msgid ""
"struct itimerval {\n"
-" struct timeval it_interval; /* next value */\n"
-" struct timeval it_value; /* current value */\n"
+" struct timeval it_interval; /* Interval for periodic timer */\n"
+" struct timeval it_value; /* Time until next expiration */\n"
"};\n"
msgstr ""
"struct itimerval {\n"
-" struct timeval it_interval; /* next value */\n"
-" struct timeval it_value; /* current value */\n"
+" struct timeval it_interval; /* Interval for periodic timer */\n"
+" struct timeval it_value; /* Time until next expiration */\n"
"};\n"
#. type: Plain text
-#: build/C/man2/getitimer.2:59
+#: build/C/man2/getitimer.2:64
#, no-wrap
msgid ""
"struct timeval {\n"
-" long tv_sec; /* seconds */\n"
-" long tv_usec; /* microseconds */\n"
+" time_t tv_sec; /* seconds */\n"
+" suseconds_t tv_usec; /* microseconds */\n"
"};\n"
msgstr ""
"struct timeval {\n"
-" long tv_sec; /* seconds */\n"
-" long tv_usec; /* microseconds */\n"
+" time_t tv_sec; /* seconds */\n"
+" suseconds_t tv_usec; /* microseconds */\n"
"};\n"
#. type: Plain text
-#: build/C/man2/getitimer.2:81
+#: build/C/man2/getitimer.2:90
msgid ""
"The function B<getitimer>() fills the structure pointed to by I<curr_value> "
-"with the current setting for the timer specified by I<which> (one of "
-"B<ITIMER_REAL>, B<ITIMER_VIRTUAL>, or B<ITIMER_PROF>). The element "
-"I<it_value> is set to the amount of time remaining on the timer, or zero if "
-"the timer is disabled. Similarly, I<it_interval> is set to the reset value."
+"with the current value (i.e., the amount of time remaining until the next "
+"expiration) of the timer specified by I<which> (one of B<ITIMER_REAL>, "
+"B<ITIMER_VIRTUAL>, or B<ITIMER_PROF>). The subfields of the field "
+"I<it_value> are set to the amount of time remaining on the timer, or zero if "
+"the timer is disabled. The I<it_interval> field is set to the timer "
+"interval (period); a value of zero returned in (both subfields of) this "
+"field indicates that this is a single-shot timer."
msgstr ""
"B<getitimer>() 関数は、 I<which> で指定されたタイマー (B<ITIMER_REAL>, "
-"B<ITIMER_VIRTUAL>, B<ITIMER_PROF> のどれか) の現在の設定を、 I<curr_value> で"
-"指定された構造体に格納する。 I<it_value> 要素にはタイマーの残り時間が設定され"
-"る。タイマーがオフの場合は ゼロが設定される。同様に I<it_interval> には初期値"
-"が設定される。"
+"B<ITIMER_VIRTUAL>, B<ITIMER_PROF> のどれか) の現在の値 (すなわち、次のタイ"
+"マー満了までの残り時間) を、 I<curr_value> で指定された構造体に格納する。 "
+"I<it_value> フィールドのサブフィールドにはタイマーの残り時間が設定される。 タ"
+"イマーが無効になっている場合は ゼロが設定される。 I<it_interval> フィールドに"
+"はタイマーのインターバル (期間) が設定される。 I<it_interval> (の両方のサブ"
+"フィールド) で値 0 が返された場合は、 このタイマーが 1 回限りのタイマーである"
+"ことを示している。"
#. type: Plain text
-#: build/C/man2/getitimer.2:89
+#: build/C/man2/getitimer.2:101
msgid ""
"The function B<setitimer>() sets the specified timer to the value in "
-"I<new_value>. If I<old_value> is non-NULL, the old value of the timer is "
-"stored there."
+"I<new_value>. If I<old_value> is non-NULL, the old value of the timer (i."
+"e., the same information as returned by B<getitimer>()) is stored there."
msgstr ""
"B<setitimer>() 関数は指定されたタイマーに I<new_value> の値を設定する。 "
-"I<old_value> が NULL 以外の場合、タイマーの古い値が I<old_value> に格納され"
-"る。"
+"I<old_value> が NULL 以外の場合、タイマーの古い値 (すなわち B<getitimer>() で"
+"返されるのと同じ情報) が I<old_value> に格納される。"
#. type: Plain text
-#: build/C/man2/getitimer.2:99
+#: build/C/man2/getitimer.2:111
msgid ""
"Timers decrement from I<it_value> to zero, generate a signal, and reset to "
"I<it_interval>. A timer which is set to zero (I<it_value> is zero or the "
"がゼロか、タイマーが満了した時に I<it_interval> がゼロの場合) は停止する。"
#. type: Plain text
-#: build/C/man2/getitimer.2:105
+#: build/C/man2/getitimer.2:117
msgid ""
"Both I<tv_sec> and I<tv_usec> are significant in determining the duration of "
"a timer."
msgstr "タイマーの期間は I<tv_sec> と I<tv_usec> の両方により決定される。"
#. type: Plain text
-#: build/C/man2/getitimer.2:117
+#: build/C/man2/getitimer.2:129
msgid ""
"Timers will never expire before the requested time, but may expire some "
"(short) time afterward, which depends on the system timer resolution and on "
"the system load; see B<time>(7). (But see BUGS below.) Upon expiration, a "
"signal will be generated and the timer reset. If the timer expires while "
-"the process is active (always true for B<ITIMER_VIRTUAL>) the signal will "
-"be delivered immediately when generated. Otherwise the delivery will be "
+"the process is active (always true for B<ITIMER_VIRTUAL>), the signal will "
+"be delivered immediately when generated. Otherwise, the delivery will be "
"offset by a small time dependent on the system loading."
msgstr ""
"要求した時間がくる前にタイマーが満了することはないが、 逆にある (短い) 時間だ"
"しの時間だけ 遅れて配送される。"
#. type: Plain text
-#: build/C/man2/getitimer.2:122 build/C/man2/killpg.2:93
-#: build/C/man2/tkill.2:73
+#: build/C/man2/getitimer.2:134 build/C/man2/killpg.2:94
+#: build/C/man2/tkill.2:92
msgid ""
"On success, zero is returned. On error, -1 is returned, and I<errno> is set "
"appropriately."
"切に設定される。"
#. type: TP
-#: build/C/man2/getitimer.2:123 build/C/man2/prctl.2:399
-#: build/C/man2/sigaction.2:655 build/C/man2/sigaltstack.2:136
-#: build/C/man2/sigpending.2:55 build/C/man2/sigsuspend.2:73
-#: build/C/man2/timer_settime.2:180 build/C/man2/timerfd_create.2:341
+#: build/C/man2/getitimer.2:135 build/C/man2/prctl.2:913
+#: build/C/man2/prctl.2:917 build/C/man2/sigaction.2:734
+#: build/C/man2/sigaltstack.2:138 build/C/man2/sigpending.2:60
+#: build/C/man2/sigprocmask.2:100 build/C/man2/sigsuspend.2:77
+#: build/C/man2/timer_settime.2:184 build/C/man2/timerfd_create.2:349
#, no-wrap
msgid "B<EFAULT>"
msgstr "B<EFAULT>"
#. type: Plain text
-#: build/C/man2/getitimer.2:130 build/C/man2/timerfd_create.2:348
+#: build/C/man2/getitimer.2:142 build/C/man2/timerfd_create.2:356
msgid "I<new_value>, I<old_value>, or I<curr_value> is not valid a pointer."
-msgstr "I<new_value>, I<old_value>, I<curr_value> が有効なポインタではない。"
+msgstr "I<new_value>, I<old_value>, I<curr_value> ã\81\8cæ\9c\89å\8a¹ã\81ªã\83\9dã\82¤ã\83³ã\82¿ã\83¼ã\81§ã\81¯ã\81ªã\81\84ã\80\82"
#. type: Plain text
-#: build/C/man2/getitimer.2:143
+#: build/C/man2/getitimer.2:155
msgid ""
"I<which> is not one of B<ITIMER_REAL>, B<ITIMER_VIRTUAL>, or B<ITIMER_PROF>; "
"or (since Linux 2.6.22) one of the I<tv_usec> fields in the structure "
"I<tv_usec> フィールドの一つが 0 以上 999999 以下の範囲に入らない値である。"
#. type: Plain text
-#: build/C/man2/getitimer.2:153
+#: build/C/man2/getitimer.2:165
msgid ""
"POSIX.1-2001, SVr4, 4.4BSD (this call first appeared in 4.2BSD). "
"POSIX.1-2008 marks B<getitimer>() and B<setitimer>() obsolete, "
"など) を使うことが推奨されている。"
#. type: Plain text
-#: build/C/man2/getitimer.2:159
+#: build/C/man2/getitimer.2:171
msgid ""
"A child created via B<fork>(2) does not inherit its parent's interval "
"timers. Interval timers are preserved across an B<execve>(2)."
msgstr ""
-"B<fork>(2) ã\81§ä½\9cæ\88\90ã\81\95ã\82\8cã\81\9få\90ã\83\97ã\83ã\82»ã\82¹ã\81¯ã\80\81 親ã\83\97ã\83ã\82»ã\82¹ã\81®ã\82¤ã\83³ã\82¿ã\83¼ã\83\90ã\83«ã\83»ã\82¿ã\82¤ã\83\9eã\83¼ã\82\92ç¶\99"
-"承しない。 B<execve>(2) の前後ではインターバル・タイマーは保存される。"
+"B<fork>(2) ã\81§ä½\9cæ\88\90ã\81\95ã\82\8cã\81\9få\90ã\83\97ã\83ã\82»ã\82¹ã\81¯ã\80\81 親ã\83\97ã\83ã\82»ã\82¹ã\81®ã\82¤ã\83³ã\82¿ã\83¼ã\83\90ã\83«ã\82¿ã\82¤ã\83\9eã\83¼ã\82\92ç¶\99æ\89¿"
+"しない。 B<execve>(2) の前後ではインターバルタイマーは保存される。"
#. type: Plain text
-#: build/C/man2/getitimer.2:169
+#: build/C/man2/getitimer.2:181
msgid ""
"POSIX.1 leaves the interaction between B<setitimer>() and the three "
"interfaces B<alarm>(2), B<sleep>(3), and B<usleep>(3) unspecified."
msgstr ""
"POSIX.1 では、 B<setitimer>() と、 B<alarm>(2), B<sleep>(3), B<usleep>(3) "
-"という 3 つのインタフェースとの相互の影響については規定していない。"
+"という 3 つのインターフェースとの相互の影響については規定していない。"
+
+#. type: Plain text
+#: build/C/man2/getitimer.2:183
+msgid "The standards are silent on the meaning of the call:"
+msgstr "標準では、次の呼び出しの意味については規定されていない。"
+
+#. type: Plain text
+#: build/C/man2/getitimer.2:185
+#, no-wrap
+msgid " setitimer(which, NULL, &old_value);\n"
+msgstr " setitimer(which, NULL, &old_value);\n"
+
+#. type: Plain text
+#: build/C/man2/getitimer.2:188
+msgid ""
+"Many systems (Solaris, the BSDs, and perhaps others) treat this as "
+"equivalent to:"
+msgstr ""
+"(Solaris, BSD 系やおそらく他のシステムもそうだが) 多くのシステムでは、この呼"
+"び出しは以下と等価である。"
+
+#. type: Plain text
+#: build/C/man2/getitimer.2:190
+#, no-wrap
+msgid " getitimer(which, &old_value);\n"
+msgstr " getitimer(which, &old_value);\n"
+
+#. type: Plain text
+#: build/C/man2/getitimer.2:196
+msgid ""
+"In Linux, this is treated as being equivalent to a call in which the "
+"I<new_value> fields are zero; that is, the timer is disabled. I<Don't use "
+"this Linux misfeature>: it is nonportable and unnecessary."
+msgstr ""
+"Linux では、この呼び出しは I<new_value> フィールドが 0 の呼び出しと等価なもの"
+"と扱われる。 つまり、タイマーが無効になる。 I<Linux のこの間違った機能を使用"
+"しないこと>。移植性もなく、不必要な機能である。"
#. type: SH
-#: build/C/man2/getitimer.2:169 build/C/man2/kill.2:160
-#: build/C/man3/profil.3:70 build/C/man3/psignal.3:99
-#: build/C/man2/sigaction.2:770 build/C/man7/signal.7:836
-#: build/C/man2/signalfd.2:349 build/C/man2/sigpending.2:76
-#: build/C/man3/sigset.3:230 build/C/man2/timer_getoverrun.2:112
-#: build/C/man2/timerfd_create.2:534
+#: build/C/man2/getitimer.2:196 build/C/man2/kill.2:161
+#: build/C/man3/profil.3:72 build/C/man3/psignal.3:101
+#: build/C/man2/sigaction.2:849 build/C/man2/signalfd.2:352
+#: build/C/man2/sigpending.2:85 build/C/man3/sigset.3:232
+#: build/C/man2/timer_getoverrun.2:115 build/C/man2/timerfd_create.2:380
+#: build/C/man2/wait.2:537
#, no-wrap
msgid "BUGS"
msgstr "バグ"
#. type: Plain text
-#: build/C/man2/getitimer.2:178
+#: build/C/man2/getitimer.2:205
msgid ""
"The generation and delivery of a signal are distinct, and only one instance "
"of each of the signals listed above may be pending for a process. Under "
"は失われてしまう。"
#. type: Plain text
-#: build/C/man2/getitimer.2:193
+#: build/C/man2/getitimer.2:220
msgid ""
"On Linux kernels before 2.6.16, timer values are represented in jiffies. If "
"a request is made set a timer with a value whose jiffies representation "
#. 4 Jul 2005: It looks like this bug may remain in 2.4.x.
#. http://lkml.org/lkml/2005/7/1/165
#. type: Plain text
-#: build/C/man2/getitimer.2:200
+#: build/C/man2/getitimer.2:227
msgid ""
"On certain systems (including i386), Linux kernels before version 2.6.12 "
"have a bug which will produce premature timer expirations of up to one jiffy "
#. http://bugzilla.kernel.org/show_bug.cgi?id=6443
#. "setitimer() should reject noncanonical arguments"
#. type: Plain text
-#: build/C/man2/getitimer.2:219
+#: build/C/man2/getitimer.2:246
msgid ""
"POSIX.1-2001 says that B<setitimer>() should fail if a I<tv_usec> value is "
"specified that is outside of the range 0 to 999999. However, in kernels up "
"I<tv_usec> の値が不適切な場合には B<EINVAL> エラーとなる。"
#. type: Plain text
-#: build/C/man2/getitimer.2:226
+#: build/C/man2/getitimer.2:253
msgid ""
"B<gettimeofday>(2), B<sigaction>(2), B<signal>(2), B<timer_create>(2), "
"B<timerfd_create>(2), B<time>(7)"
"B<timerfd_create>(2), B<time>(7)"
#. type: TH
-#: build/C/man3/gsignal.3:25
+#: build/C/man3/gsignal.3:27
#, no-wrap
msgid "GSIGNAL"
msgstr "GSIGNAL"
#. type: TH
-#: build/C/man3/gsignal.3:25 build/C/man3/profil.3:28 build/C/man3/sigvec.3:24
+#: build/C/man3/gsignal.3:27
#, no-wrap
msgid "2007-07-26"
msgstr "2007-07-26"
#. type: Plain text
-#: build/C/man3/gsignal.3:28
+#: build/C/man3/gsignal.3:30
msgid "gsignal, ssignal - software signal facility"
-msgstr "gsignal, ssignal - ã\82½ã\83\95ã\83\88ã\82¦ã\82§ã\82¢ã\83»ã\82·ã\82°ã\83\8aã\83«æ©\9fè\83½"
+msgstr "gsignal, ssignal - ソフトウェアシグナル機能"
#. type: Plain text
-#: build/C/man3/gsignal.3:31 build/C/man2/kill.2:52 build/C/man3/psignal.3:34
-#: build/C/man3/raise.3:33 build/C/man2/sigaction.2:51
-#: build/C/man3/siginterrupt.3:35 build/C/man3/sigpause.3:29
-#: build/C/man3/sigwait.3:30 build/C/man2/sigwaitinfo.2:29
+#: build/C/man3/gsignal.3:33 build/C/man2/kill.2:52 build/C/man3/psignal.3:36
+#: build/C/man3/raise.3:35 build/C/man2/sigaction.2:55
+#: build/C/man3/siginterrupt.3:37 build/C/man3/sigpause.3:31
+#: build/C/man3/sigwait.3:32 build/C/man2/sigwaitinfo.2:31
#, no-wrap
msgid "B<#include E<lt>signal.hE<gt>>\n"
msgstr "B<#include E<lt>signal.hE<gt>>\n"
#. type: Plain text
-#: build/C/man3/gsignal.3:33
+#: build/C/man3/gsignal.3:35
#, no-wrap
msgid "B<typedef void (*sighandler_t)(int);>\n"
msgstr "B<typedef void (*sighandler_t)(int);>\n"
#. type: Plain text
-#: build/C/man3/gsignal.3:35
+#: build/C/man3/gsignal.3:37
#, no-wrap
-msgid "B<int gsignal(int>I<signum>B<);>\n"
+msgid "B<int gsignal(int >I<signum>B<);>\n"
msgstr "B<int gsignal(int >I<signum>B<);>\n"
#. type: Plain text
-#: build/C/man3/gsignal.3:37
+#: build/C/man3/gsignal.3:39
#, no-wrap
msgid "B<sighandler_t ssignal(int >I<signum>B<, sighandler_t >I<action>B<);>\n"
msgstr "B<sighandler_t ssignal(int >I<signum>B<, sighandler_t >I<action>B<);>\n"
#. type: Plain text
-#: build/C/man3/gsignal.3:42 build/C/man2/kill.2:59 build/C/man2/killpg.2:51
-#: build/C/man3/profil.3:40 build/C/man3/psignal.3:44
-#: build/C/man2/sigaction.2:59 build/C/man2/sigaltstack.2:36
-#: build/C/man3/siginterrupt.3:42 build/C/man2/sigpending.2:38
-#: build/C/man2/sigprocmask.2:39 build/C/man3/sigqueue.3:37
-#: build/C/man3/sigset.3:43 build/C/man3/sigsetops.3:49
-#: build/C/man2/sigsuspend.2:38 build/C/man3/sigvec.3:43
-#: build/C/man3/sigwait.3:37 build/C/man2/sigwaitinfo.2:39
-#: build/C/man2/timer_create.2:46 build/C/man2/timer_delete.2:38
-#: build/C/man2/timer_getoverrun.2:38 build/C/man2/timer_settime.2:42
-#: build/C/man2/wait.2:68 build/C/man2/wait4.2:54
+#: build/C/man3/gsignal.3:44 build/C/man2/kill.2:59 build/C/man2/killpg.2:53
+#: build/C/man3/profil.3:42 build/C/man3/psignal.3:46
+#: build/C/man2/sigaction.2:63 build/C/man2/sigaltstack.2:38
+#: build/C/man3/siginterrupt.3:44 build/C/man2/sigpending.2:40
+#: build/C/man2/sigprocmask.2:41 build/C/man3/sigqueue.3:39
+#: build/C/man3/sigset.3:45 build/C/man3/sigsetops.3:51
+#: build/C/man2/sigsuspend.2:40 build/C/man3/sigvec.3:45
+#: build/C/man3/sigwait.3:39 build/C/man2/sigwaitinfo.2:41
+#: build/C/man2/timer_create.2:50 build/C/man2/timer_delete.2:41
+#: build/C/man2/timer_getoverrun.2:41 build/C/man2/timer_settime.2:45
+#: build/C/man2/wait.2:69 build/C/man2/wait4.2:53
msgid ""
"Feature Test Macro Requirements for glibc (see B<feature_test_macros>(7)):"
msgstr "glibc 向けの機能検査マクロの要件 (B<feature_test_macros>(7) 参照):"
#. type: Plain text
-#: build/C/man3/gsignal.3:47
+#: build/C/man3/gsignal.3:49
msgid "B<gsignal>(), B<ssignal>(): _SVID_SOURCE"
msgstr "B<gsignal>(), B<ssignal>(): _SVID_SOURCE"
#. type: Plain text
-#: build/C/man3/gsignal.3:55
+#: build/C/man3/gsignal.3:57
msgid ""
"Don't use these functions under Linux. Due to a historical mistake, under "
"Linux these functions are aliases for B<raise>(3) and B<signal>(2), "
"名になっている。"
#. type: Plain text
-#: build/C/man3/gsignal.3:93
+#: build/C/man3/gsignal.3:95
msgid ""
"Elsewhere, on System V-like systems, these functions implement software "
-"signaling, entirely independent of the classical B<signal>(2) and B<kill>"
-"(2) functions. The function B<ssignal>() defines the action to take when "
-"the software signal with number I<signum> is raised using the function "
-"B<gsignal>(), and returns the previous such action or B<SIG_DFL>. The "
-"function B<gsignal>() does the following: if no action (or the action "
+"signaling, entirely independent of the classical B<signal>(2) and "
+"B<kill>(2) functions. The function B<ssignal>() defines the action to "
+"take when the software signal with number I<signum> is raised using the "
+"function B<gsignal>(), and returns the previous such action or B<SIG_DFL>. "
+"The function B<gsignal>() does the following: if no action (or the action "
"B<SIG_DFL>) was specified for I<signum>, then it does nothing and returns "
"0. If the action B<SIG_IGN> was specified for I<signum>, then it does "
"nothing and returns 1. Otherwise, it resets the action to B<SIG_DFL> and "
"(often 1-15 or 1-17)."
msgstr ""
"一方、System V 風のシステムでは、これらの関数で、 従来の B<signal>(2) や "
-"B<kill>(2) ã\81®é\96¢æ\95°ç¾¤ã\81¨ã\81¯å®\8cå\85¨ã\81«ç\8b¬ç«\8bã\81ªã\80\81 ã\82½ã\83\95ã\83\88ã\82¦ã\82§ã\82¢ã\83»ã\82·ã\82°ã\83\8aã\83ªã\83³ã\82°ã\82\92å®\9fç\8f¾ã\81\97ã\81¦ã\81\84"
-"ã\82\8bã\80\82 B<ssignal>() é\96¢æ\95°ã\81¯ã\80\81ç\95ªå\8f· I<signum> ã\81®ã\82½ã\83\95ã\83\88ã\82¦ã\82§ã\82¢ã\83»ã\82·ã\82°ã\83\8aã\83«ã\81\8c "
+"B<kill>(2) の関数群とは完全に独立な、 ソフトウェアシグナリングを実現してい"
+"る。 B<ssignal>() 関数は、番号 I<signum> のソフトウェアシグナルが "
"B<gsignal>() 関数を使って発生された時にとるべきアクションを定義する。 "
"B<gsignal>() の返り値は、一つ前に指定されていたアクション、もしくは "
"B<SIG_DFL> である。 B<gsignal>() は以下のような動作を行う: I<signum> に対し"
"場合 1〜15 か 1〜17 である)。"
#. type: Plain text
-#: build/C/man3/gsignal.3:101
+#: build/C/man3/gsignal.3:103
msgid ""
"These functions are available under AIX, DG/UX, HP-UX, SCO, Solaris, Tru64. "
"They are called obsolete under most of these systems, and are broken under "
"されているシステムもある。"
#. type: Plain text
-#: build/C/man3/gsignal.3:105
+#: build/C/man3/gsignal.3:107
msgid "B<kill>(2), B<signal>(2), B<raise>(3)"
msgstr "B<kill>(2), B<signal>(2), B<raise>(3)"
#. type: TH
#: build/C/man2/kill.2:44
#, no-wrap
-msgid "2009-09-15"
-msgstr "2009-09-15"
+msgid "2013-09-17"
+msgstr "2013-09-17"
#. type: Plain text
#: build/C/man2/kill.2:47
"The B<kill>() system call can be used to send any signal to any process "
"group or process."
msgstr ""
-"ã\82·ã\82¹ã\83\86ã\83 ã\82³ã\83¼ã\83«ã\81® B<kill>() ã\81¯ã\80\81ä»»æ\84\8fã\81®ã\83\97ã\83ã\82»ã\82¹ã\83»ã\82°ã\83«ã\83¼ã\83\97ã\82\82ã\81\97ã\81\8fã\81¯ã\83\97ã\83ã\82»ã\82¹ã\81«ã\82·"
-"ã\82°ã\83\8aã\83«ã\82\92 é\80\81ã\82\8bã\81®ã\81«ä½¿ã\82\8fã\82\8cã\82\8bã\80\82"
+"ã\82·ã\82¹ã\83\86ã\83 ã\82³ã\83¼ã\83«ã\81® B<kill>() ã\81¯ã\80\81ä»»æ\84\8fã\81®ã\83\97ã\83ã\82»ã\82¹ã\82°ã\83«ã\83¼ã\83\97ã\82\82ã\81\97ã\81\8fã\81¯ã\83\97ã\83ã\82»ã\82¹ã\81«ã\82·ã\82°"
+"ナルを 送るのに使われる。"
#. type: Plain text
#: build/C/man2/kill.2:73
"If I<pid> equals 0, then I<sig> is sent to every process in the process "
"group of the calling process."
msgstr ""
-"I<pid> ã\81« 0 ã\82\92æ\8c\87å®\9aã\81\97ã\81\9få ´å\90\88ã\80\81 å\91¼ã\81³å\87ºã\81\97å\85\83ã\81®ã\83\97ã\83ã\82»ã\82¹ã\81®ã\83\97ã\83ã\82»ã\82¹ã\83»ã\82°ã\83«ã\83¼ã\83\97ã\81«å±\9eã\81\99ã\82\8b"
-"ã\81\99ã\81¹ã\81¦ã\81®ã\83\97ã\83ã\82»ã\82¹ã\81« I<sig> ã\81§æ\8c\87å®\9aã\81\97ã\81\9fã\82·ã\82°ã\83\8aã\83«ã\81\8cé\80\81ã\82\89ã\82\8cã\82\8bã\80\82"
+"I<pid> ã\81« 0 ã\82\92æ\8c\87å®\9aã\81\97ã\81\9få ´å\90\88ã\80\81 å\91¼ã\81³å\87ºã\81\97å\85\83ã\81®ã\83\97ã\83ã\82»ã\82¹ã\81®ã\83\97ã\83ã\82»ã\82¹ã\82°ã\83«ã\83¼ã\83\97ã\81«å±\9eã\81\99ã\82\8bã\81\99"
+"べてのプロセスに I<sig> で指定したシグナルが送られる。"
#. type: Plain text
#: build/C/man2/kill.2:80
"If I<pid> is less than -1, then I<sig> is sent to every process in the "
"process group whose ID is I<-pid>."
msgstr ""
-"I<pid> ã\81« -1 ã\82\88ã\82\8aå°\8fã\81\95ã\81ªå\80¤ã\82\92æ\8c\87å®\9aã\81\97ã\81\9få ´å\90\88ã\80\81 ID ã\81\8c I<-pid> ã\81®ã\83\97ã\83ã\82»ã\82¹ã\83»ã\82°ã\83«ã\83¼ã\83\97"
-"に属するすべてのプロセスに I<sig> で指定したシグナルが送られる。"
+"I<pid> ã\81« -1 ã\82\88ã\82\8aå°\8fã\81\95ã\81ªå\80¤ã\82\92æ\8c\87å®\9aã\81\97ã\81\9få ´å\90\88ã\80\81 ID ã\81\8c I<-pid> ã\81®ã\83\97ã\83ã\82»ã\82¹ã\82°ã\83«ã\83¼ã\83\97ã\81«"
+"属するすべてのプロセスに I<sig> で指定したシグナルが送られる。"
#. type: Plain text
#: build/C/man2/kill.2:88
"きる。"
#. type: Plain text
-#: build/C/man2/kill.2:99 build/C/man2/killpg.2:88
+#: build/C/man2/kill.2:100
msgid ""
"For a process to have permission to send a signal it must either be "
"privileged (under Linux: have the B<CAP_KILL> capability), or the real or "
"effective user ID of the sending process must equal the real or saved set-"
"user-ID of the target process. In the case of B<SIGCONT> it suffices when "
-"the sending and receiving processes belong to the same session."
+"the sending and receiving processes belong to the same session. "
+"(Historically, the rules were different; see NOTES.)"
msgstr ""
"プロセスがシグナルを送信する許可を持つためには、 プロセスが特権 (Linux では "
"B<CAP_KILL> ケーパビリティ (capability)) を持つか、 送信元プロセスの実ユー"
"ザー ID または実効ユーザー ID が 送信先プロセスの実 set-user-ID または保存 "
"set-user-ID と 等しくなければならない。 B<SIGCONT> の場合、送信プロセスと受信"
-"プロセスが 同じセッションに属していれば十分である。"
+"プロセスが 同じセッションに属していれば十分である。 (過去には、 ルールは違っ"
+"ていた; 「注意」の節を参照。)"
#. type: Plain text
-#: build/C/man2/kill.2:104
+#: build/C/man2/kill.2:105
msgid ""
"On success (at least one signal was sent), zero is returned. On error, -1 "
"is returned, and I<errno> is set appropriately."
"ラーの場合 -1 が返され、 I<errno> が適切に設定される。"
#. type: Plain text
-#: build/C/man2/kill.2:108
+#: build/C/man2/kill.2:109
msgid "An invalid signal was specified."
msgstr "無効なシグナルを指定した。"
#. type: TP
-#: build/C/man2/kill.2:108 build/C/man2/killpg.2:98 build/C/man2/prctl.2:432
-#: build/C/man2/prctl.2:444 build/C/man2/prctl.2:454
-#: build/C/man2/rt_sigqueueinfo.2:143 build/C/man2/sigaltstack.2:149
-#: build/C/man3/sigqueue.3:100 build/C/man2/tkill.2:77
+#: build/C/man2/kill.2:109 build/C/man2/killpg.2:99 build/C/man2/prctl.2:1098
+#: build/C/man2/prctl.2:1110 build/C/man2/prctl.2:1120
+#: build/C/man2/prctl.2:1128 build/C/man2/rt_sigqueueinfo.2:148
+#: build/C/man2/sigaltstack.2:153 build/C/man3/sigqueue.3:102
+#: build/C/man2/tkill.2:96
#, no-wrap
msgid "B<EPERM>"
msgstr "B<EPERM>"
#. type: Plain text
-#: build/C/man2/kill.2:112 build/C/man2/killpg.2:102
+#: build/C/man2/kill.2:113 build/C/man2/killpg.2:103
msgid ""
"The process does not have permission to send the signal to any of the target "
"processes."
"い。"
#. type: TP
-#: build/C/man2/kill.2:112 build/C/man2/killpg.2:102 build/C/man2/killpg.2:106
-#: build/C/man2/rt_sigqueueinfo.2:151 build/C/man3/sigqueue.3:106
-#: build/C/man2/tkill.2:82
+#: build/C/man2/kill.2:113 build/C/man2/killpg.2:103 build/C/man2/killpg.2:107
+#: build/C/man2/rt_sigqueueinfo.2:156 build/C/man3/sigqueue.3:108
+#: build/C/man2/tkill.2:101
#, no-wrap
msgid "B<ESRCH>"
msgstr "B<ESRCH>"
#. type: Plain text
-#: build/C/man2/kill.2:120
+#: build/C/man2/kill.2:121
msgid ""
"The pid or process group does not exist. Note that an existing process "
"might be a zombie, a process which already committed termination, but has "
"not yet been B<wait>(2)ed for."
msgstr ""
-"æ\8c\87å®\9aã\81\97ã\81\9fã\83\97ã\83ã\82»ã\82¹ã\81¾ã\81\9fã\81¯ã\83\97ã\83ã\82»ã\82¹ã\83»ã\82°ã\83«ã\83¼ã\83\97ã\81\8cå\98å\9c¨ã\81\97ã\81ªã\81\8bã\81£ã\81\9fã\80\82 ã\82¾ã\83³ã\83\93ã\83\97ã\83ã\82»ã\82¹ã\81¯å\98"
-"在するプロセスとしてみなされる。 ゾンビプロセスとはすでに処理は終了している"
-"が、親プロセスによる B<wait>() 処理が行われていないプロセスのことである。"
+"æ\8c\87å®\9aã\81\97ã\81\9fã\83\97ã\83ã\82»ã\82¹ã\81¾ã\81\9fã\81¯ã\83\97ã\83ã\82»ã\82¹ã\82°ã\83«ã\83¼ã\83\97ã\81\8cå\98å\9c¨ã\81\97ã\81ªã\81\8bã\81£ã\81\9fã\80\82 ã\82¾ã\83³ã\83\93ã\83\97ã\83ã\82»ã\82¹ã\81¯å\98å\9c¨"
+"するプロセスとしてみなされる。 ゾンビプロセスとはすでに処理は終了しているが、"
+"親プロセスによる B<wait>() 処理が行われていないプロセスのことである。"
#. type: Plain text
-#: build/C/man2/kill.2:122 build/C/man2/pause.2:59 build/C/man2/wait.2:423
+#: build/C/man2/kill.2:123 build/C/man2/pause.2:59 build/C/man2/wait.2:425
msgid "SVr4, 4.3BSD, POSIX.1-2001."
msgstr "SVr4, 4.3BSD, POSIX.1-2001."
#. type: Plain text
-#: build/C/man2/kill.2:130
+#: build/C/man2/kill.2:131
msgid ""
"The only signals that can be sent to process ID 1, the I<init> process, are "
"those for which I<init> has explicitly installed signal handlers. This is "
"done to assure the system is not brought down accidentally."
msgstr ""
"プロセス番号 1 の I<init> プロセスに送ることができるシグナルは、 I<init> が明"
-"示ç\9a\84ã\81«ã\82·ã\82°ã\83\8aã\83«ã\83\8fã\83³ã\83\89ã\83©ã\82\92è¨å®\9aã\81\97ã\81\9fã\82·ã\82°ã\83\8aã\83«ã\81 ã\81\91ã\81§ã\81\82ã\82\8bã\80\82 ã\81\93ã\81\86ã\81ªã\81£ã\81¦ã\81\84ã\82\8bã\81®ã\81¯ã\80\81誤ã\81£"
-"てシステムをダウンさせないようにするためである。"
+"示ç\9a\84ã\81«ã\82·ã\82°ã\83\8aã\83«ã\83\8fã\83³ã\83\89ã\83©ã\83¼ã\82\92è¨å®\9aã\81\97ã\81\9fã\82·ã\82°ã\83\8aã\83«ã\81 ã\81\91ã\81§ã\81\82ã\82\8bã\80\82 ã\81\93ã\81\86ã\81ªã\81£ã\81¦ã\81\84ã\82\8bã\81®ã\81¯ã\80\81"
+"誤ってシステムをダウンさせないようにするためである。"
#. type: Plain text
-#: build/C/man2/kill.2:136
+#: build/C/man2/kill.2:137
msgid ""
"POSIX.1-2001 requires that I<kill(-1,sig)> send I<sig> to all processes that "
"the calling process may send signals to, except possibly for some "
"POSIX.1-2001 では、 I<kill(-1,sig)> が 呼び出し元のプロセスがシグナルを送るこ"
"とが出来るプロセス全てに I<sig> を送ることを要求している。 但し、システム実装"
"時に定められたシステムプロセスは シグナルの送信対象から除外される。 Linux で"
-"は、プロセスが自分自身にシグナルを送れるようになっているが、 Linux の I<kill"
-"(-1,sig)> は呼び出し元のプロセスにはシグナルを送らない。"
+"は、プロセスが自分自身にシグナルを送れるようになっているが、 Linux の "
+"I<kill(-1,sig)> は呼び出し元のプロセスにはシグナルを送らない。"
#. type: Plain text
-#: build/C/man2/kill.2:146
+#: build/C/man2/kill.2:147
msgid ""
"POSIX.1-2001 requires that if a process sends a signal to itself, and the "
"sending thread does not have the signal blocked, and no other thread has it "
"グナルがシグナルを送ったスレッドに配送されなければならない。"
#. type: SS
-#: build/C/man2/kill.2:146 build/C/man3/sigpause.3:75 build/C/man2/wait.2:477
+#: build/C/man2/kill.2:147 build/C/man3/sigpause.3:82 build/C/man2/wait.2:480
#, no-wrap
-msgid "Linux Notes"
+msgid "Linux notes"
msgstr "Linux での注意"
#. In the 0.* kernels things chopped and changed quite
#. a bit - MTK, 24 Jul 02
#. type: Plain text
-#: build/C/man2/kill.2:160
+#: build/C/man2/kill.2:161
msgid ""
"Across different kernel versions, Linux has enforced different rules for the "
"permissions required for an unprivileged process to send a signal to another "
"process. In kernels 1.0 to 1.2.2, a signal could be sent if the effective "
-"user ID of the sender matched that of the receiver, or the real user ID of "
-"the sender matched that of the receiver. From kernel 1.2.3 until 1.3.77, a "
-"signal could be sent if the effective user ID of the sender matched either "
-"the real or effective user ID of the receiver. The current rules, which "
-"conform to POSIX.1-2001, were adopted in kernel 1.3.78."
+"user ID of the sender matched effective user ID of the target, or the real "
+"user ID of the sender matched the real user ID of the target. From kernel "
+"1.2.3 until 1.3.77, a signal could be sent if the effective user ID of the "
+"sender matched either the real or effective user ID of the target. The "
+"current rules, which conform to POSIX.1-2001, were adopted in kernel 1.3.78."
msgstr ""
-"Linux では、特権のないプロセスが他のプロセスにシグナルを送信するために 必要な"
+"Linux では、特権のないプロセスが他のプロセスにシグナルを送信するために必要な"
"権限についてのルールが、カーネルバージョンにより違っている。 カーネル 1.0 か"
-"ら 1.2.2 では、送信側の実効ユーザーID が受信側の 実効ユーザー IDと一致すれば"
-"シグナルを送信できた。 カーネル 1.2.3 から 1.3.77では、送信側の実効ユーザー"
-"ID が受信側の 実ユーザーID か実効ユーザーID のいずれかと一致すればシグナルを"
-"送信できた。 現在のルールは、POSIX.1-2001 に準拠しており、カーネル 1.3.78 以"
-"降で 適用されている。"
+"ら 1.2.2 では、送信側の実効ユーザー ID が送信対象の実効ユーザー ID と一致する"
+"か、 送信側の実ユーザー ID が送信対象の実ユーザー ID と一致すれば、 シグナル"
+"を送信できた。 カーネル 1.2.3 から 1.3.77では、送信側の実効ユーザー ID が送信"
+"対象の実ユーザー ID か実効ユーザー ID のいずれかと一致すればシグナルを送信で"
+"きた。 現在のルールは、POSIX.1-2001 に準拠しており、カーネル 1.3.78 以降で 適"
+"用されている。"
#. type: Plain text
-#: build/C/man2/kill.2:170
+#: build/C/man2/kill.2:171
msgid ""
"In 2.6 kernels up to and including 2.6.7, there was a bug that meant that "
"when sending signals to a process group, B<kill>() failed with the error "
-"B<EPERM> if the caller did have permission to send the signal to I<any> "
+"B<EPERM> if the caller did not have permission to send the signal to I<any> "
"(rather than I<all>) of the members of the process group. Notwithstanding "
"this error return, the signal was still delivered to all of the processes "
"for which the caller had permission to signal."
msgstr ""
"バージョン 2.6.7 以前の 2.6 系のカーネルには、 プロセスグループにシグナルを"
"送ったときに、 呼び出し元のプロセスがプロセスグループの (全メンバーではなく) "
-"一部のメンバー に対してのみシグナルを送る許可を持っている場合に、 B<kill>() "
-"がエラー B<EPERM> で失敗するというバグがある。 このエラーが返るにもかかわら"
-"ã\81\9aã\80\81ã\81\9dã\81®ã\82·ã\82°ã\83\8aã\83«ã\81¯å\91¼ã\81³å\87ºã\81\97å\85\83ã\81\8c ã\82·ã\82°ã\83\8aã\83«ã\82\92é\80\81ã\82\8b許å\8f¯ã\82\92æ\8c\81ã\81¤å\85¨ã\81¦ã\81®ã\83\97ã\83ã\82»ã\82¹ã\81¸é\80\81ã\82\89ã\82\8c"
-"る。"
+"一部のメンバーに対してのみシグナルを送る許可を持っていない場合に、 "
+"B<kill>() がエラー B<EPERM> で失敗するというバグがある。 このエラーが返るに"
+"ã\82\82ã\81\8bã\81\8bã\82\8fã\82\89ã\81\9aã\80\81ã\81\9dã\81®ã\82·ã\82°ã\83\8aã\83«ã\81¯å\91¼ã\81³å\87ºã\81\97å\85\83ã\81\8c ã\82·ã\82°ã\83\8aã\83«ã\82\92é\80\81ã\82\8b許å\8f¯ã\82\92æ\8c\81ã\81¤å\85¨ã\81¦ã\81®ã\83\97ã\83ã\82»"
+"ã\82¹ã\81¸é\80\81ã\82\89ã\82\8cã\82\8bã\80\82"
#. type: Plain text
-#: build/C/man2/kill.2:180
+#: build/C/man2/kill.2:181
msgid ""
-"B<_exit>(2), B<killpg>(2), B<signal>(2), B<tkill>(2), B<exit>(3), B<sigqueue>"
-"(3), B<capabilities>(7), B<credentials>(7), B<signal>(7)"
+"B<_exit>(2), B<killpg>(2), B<signal>(2), B<tkill>(2), B<exit>(3), "
+"B<sigqueue>(3), B<capabilities>(7), B<credentials>(7), B<signal>(7)"
msgstr ""
-"B<_exit>(2), B<killpg>(2), B<signal>(2), B<tkill>(2), B<exit>(3), B<sigqueue>"
-"(3), B<credentials>(7), B<capabilities>(7), B<signal>(7)"
+"B<_exit>(2), B<killpg>(2), B<signal>(2), B<tkill>(2), B<exit>(3), "
+"B<sigqueue>(3), B<credentials>(7), B<capabilities>(7), B<signal>(7)"
#. type: TH
-#: build/C/man2/killpg.2:40
+#: build/C/man2/killpg.2:42
#, no-wrap
msgid "KILLPG"
msgstr "KILLPG"
#. type: TH
-#: build/C/man2/killpg.2:40 build/C/man3/sigset.3:24 build/C/man2/wait4.2:34
+#: build/C/man2/killpg.2:42 build/C/man3/sigset.3:26
#, no-wrap
msgid "2010-09-20"
msgstr "2010-09-20"
#. type: Plain text
-#: build/C/man2/killpg.2:43
+#: build/C/man2/killpg.2:45
msgid "killpg - send signal to a process group"
-msgstr "killpg - ã\82·ã\82°ã\83\8aã\83«ã\82\92ã\83\97ã\83ã\82»ã\82¹ã\83»ã\82°ã\83«ã\83¼ã\83\97ã\81«é\80\81ã\82\8b"
+msgstr "killpg - シグナルをプロセスグループに送る"
#. type: Plain text
-#: build/C/man2/killpg.2:47
+#: build/C/man2/killpg.2:49
msgid "B<int killpg(int >I<pgrp>B<, int >I<sig>B<);>"
msgstr "B<int killpg(int >I<pgrp>B<, int >I<sig>B<);>"
#. type: TP
-#: build/C/man2/killpg.2:54
+#: build/C/man2/killpg.2:55
#, no-wrap
msgid "B<killpg>():"
msgstr "B<killpg>():"
#. type: Plain text
-#: build/C/man2/killpg.2:58 build/C/man2/sigaltstack.2:44
-#: build/C/man3/siginterrupt.3:49 build/C/man2/wait4.2:61
+#: build/C/man2/killpg.2:59 build/C/man2/sigaltstack.2:46
+#: build/C/man3/siginterrupt.3:51 build/C/man2/wait4.2:60
msgid ""
"_BSD_SOURCE || _XOPEN_SOURCE\\ E<gt>=\\ 500 || _XOPEN_SOURCE\\ &&\\ "
"_XOPEN_SOURCE_EXTENDED"
"_XOPEN_SOURCE_EXTENDED"
#. type: Plain text
-#: build/C/man2/killpg.2:68
+#: build/C/man2/killpg.2:69
msgid ""
"B<killpg>() sends the signal I<sig> to the process group I<pgrp>. See "
"B<signal>(7) for a list of signals."
msgstr ""
-"B<killpg>() ã\81¯ I<sig> ã\81§æ\8c\87å®\9aã\81\97ã\81\9fã\82·ã\82°ã\83\8aã\83«ã\82\92 I<pgrp> ã\81§æ\8c\87å®\9aã\81\97ã\81\9fã\83\97ã\83ã\82»ã\82¹ã\83»ã\82°"
-"ã\83«ã\83¼ã\83\97ã\81«é\80\81ã\82\8bã\80\82 ã\82·ã\82°ã\83\8aã\83«ã\81®å®\9a義ã\81®ä¸\80覧ã\81¯ B<signal>(7) ã\82\92å\8f\82ç\85§ã\81®ã\81\93ã\81¨ã\80\82"
+"B<killpg>() ã\81¯ I<sig> ã\81§æ\8c\87å®\9aã\81\97ã\81\9fã\82·ã\82°ã\83\8aã\83«ã\82\92 I<pgrp> ã\81§æ\8c\87å®\9aã\81\97ã\81\9fã\83\97ã\83ã\82»ã\82¹ã\82°ã\83«ã\83¼"
+"プに送る。 シグナルの定義の一覧は B<signal>(7) を参照のこと。"
#. type: Plain text
-#: build/C/man2/killpg.2:77
+#: build/C/man2/killpg.2:78
msgid ""
"If I<pgrp> is 0, B<killpg>() sends the signal to the calling process's "
"process group. (POSIX says: If I<pgrp> is less than or equal to 1, the "
"behavior is undefined.)"
msgstr ""
"引き数 I<pgrp> に 0 を指定した場合には B<killpg>() は呼び出し元のプロセスが"
-"属しているプロセス・グループに対してシグナルを送る。 (POSIX では以下のように"
-"記述されている: I<pgrp> が 1 以下である場合、動作は未定義である。)"
+"属しているプロセスグループに対してシグナルを送る。 (POSIX では以下のように記"
+"述されている: I<pgrp> が 1 以下である場合、動作は未定義である。)"
+
+#. type: Plain text
+#: build/C/man2/killpg.2:89
+msgid ""
+"For a process to have permission to send a signal it must either be "
+"privileged (under Linux: have the B<CAP_KILL> capability), or the real or "
+"effective user ID of the sending process must equal the real or saved set-"
+"user-ID of the target process. In the case of B<SIGCONT> it suffices when "
+"the sending and receiving processes belong to the same session."
+msgstr ""
+"プロセスがシグナルを送信する許可を持つためには、 プロセスが特権 (Linux では "
+"B<CAP_KILL> ケーパビリティ (capability)) を持つか、 送信元プロセスの実ユー"
+"ザー ID または実効ユーザー ID が 送信先プロセスの実 set-user-ID または保存 "
+"set-user-ID と 等しくなければならない。 B<SIGCONT> の場合、送信プロセスと受信"
+"プロセスが 同じセッションに属していれば十分である。"
#. type: Plain text
-#: build/C/man2/killpg.2:98
-msgid "I<Sig> is not a valid signal number."
+#: build/C/man2/killpg.2:99
+msgid "I<sig> is not a valid signal number."
msgstr "I<sig> で指定された値は無効なシグナル番号である。"
#. type: Plain text
-#: build/C/man2/killpg.2:106
+#: build/C/man2/killpg.2:107
msgid "No process can be found in the process group specified by I<pgrp>."
-msgstr ""
-"I<pgrp> で指定されたプロセス・グループに属するプロセスが存在しなかった。"
+msgstr "I<pgrp> で指定されたプロセスグループに属するプロセスが存在しなかった。"
#. type: Plain text
-#: build/C/man2/killpg.2:110
+#: build/C/man2/killpg.2:111
msgid ""
"The process group was given as 0 but the sending process does not have a "
"process group."
msgstr ""
-"ã\83\97ã\83ã\82»ã\82¹ã\83»ã\82°ã\83«ã\83¼ã\83\97ã\81¨ã\81\97ã\81¦ 0 ã\81\8cæ\8c\87å®\9aã\81\95ã\82\8cã\81\9fã\81\8cã\80\81é\80\81ä¿¡ã\83\97ã\83ã\82»ã\82¹ã\81¯ ã\83\97ã\83ã\82»ã\82¹ã\83»ã\82°ã\83«ã\83¼ã\83\97"
-"を持っていない。"
+"ã\83\97ã\83ã\82»ã\82¹ã\82°ã\83«ã\83¼ã\83\97ã\81¨ã\81\97ã\81¦ 0 ã\81\8cæ\8c\87å®\9aã\81\95ã\82\8cã\81\9fã\81\8cã\80\81é\80\81ä¿¡ã\83\97ã\83ã\82»ã\82¹ã\81¯ ã\83\97ã\83ã\82»ã\82¹ã\82°ã\83«ã\83¼ã\83\97ã\82\92"
+"持っていない。"
#. type: Plain text
-#: build/C/man2/killpg.2:114
+#: build/C/man2/killpg.2:115
msgid ""
"SVr4, 4.4BSD (the B<killpg>() function call first appeared in 4BSD), "
"POSIX.1-2001."
msgstr "SVr4, 4.4BSD (B<killpg>() は 4BSD で初めて追加された), POSIX.1-2001。"
#. type: Plain text
-#: build/C/man2/killpg.2:128
+#: build/C/man2/killpg.2:129
msgid ""
"There are various differences between the permission checking in BSD-type "
-"systems and System V-type systems. See the POSIX rationale for B<kill>(). "
-"A difference not mentioned by POSIX concerns the return value B<EPERM>: BSD "
-"documents that no signal is sent and B<EPERM> returned when the permission "
-"check failed for at least one target process, while POSIX documents B<EPERM> "
-"only when the permission check failed for all target processes."
+"systems and System\\ V-type systems. See the POSIX rationale for "
+"B<kill>(). A difference not mentioned by POSIX concerns the return value "
+"B<EPERM>: BSD documents that no signal is sent and B<EPERM> returned when "
+"the permission check failed for at least one target process, while POSIX "
+"documents B<EPERM> only when the permission check failed for all target "
+"processes."
msgstr ""
-"BSD 系システムと System V 系システムでは、 許可のチェックに様々な違いがあ"
+"BSD 系システムと System\\ V 系システムでは、 許可のチェックに様々な違いがあ"
"る。 B<kill>(2) についての POSIX の原理 (rationale) を参照すること。 POSIX "
"で記述されていない違いとしては、返り値 B<EPERM> がある。 BSD では「送信先プロ"
"セスの許可のチェックが 1 つでも失敗した場合は、 シグナルが送信されず、 "
"チェックが全て失敗した場合にのみ、 B<EPERM> が返される」と記述されている。"
#. type: Plain text
-#: build/C/man2/killpg.2:133
+#: build/C/man2/killpg.2:134
msgid ""
"On Linux, B<killpg>() is implemented as a library function that makes the "
"call I<kill(-pgrp,\\ sig)>."
"pgrp,\\ sig)> の呼び出しが行われる。"
#. type: Plain text
-#: build/C/man2/killpg.2:139
+#: build/C/man2/killpg.2:140
msgid ""
-"B<getpgrp>(2), B<kill>(2), B<signal>(2), B<capabilities>(7), B<credentials>"
-"(7)"
+"B<getpgrp>(2), B<kill>(2), B<signal>(2), B<capabilities>(7), "
+"B<credentials>(7)"
msgstr ""
-"B<getpgrp>(2), B<kill>(2), B<signal>(2), B<credentials>(7), B<capabilities>"
-"(7)"
+"B<getpgrp>(2), B<kill>(2), B<signal>(2), B<credentials>(7), "
+"B<capabilities>(7)"
#. type: TH
#: build/C/man2/pause.2:30
msgstr "pause - シグナルを待つ"
#. type: Plain text
-#: build/C/man2/pause.2:35 build/C/man3/profil.3:33
+#: build/C/man2/pause.2:35
msgid "B<#include E<lt>unistd.hE<gt>>"
msgstr "B<#include E<lt>unistd.hE<gt>>"
#. type: Plain text
#: build/C/man2/pause.2:53
msgid ""
-"B<pause>() only returns when a signal was caught and the signal-catching "
-"function returned. In this case B<pause>() returns -1, and I<errno> is set "
-"to B<EINTR>."
+"B<pause>() returns only when a signal was caught and the signal-catching "
+"function returned. In this case, B<pause>() returns -1, and I<errno> is "
+"set to B<EINTR>."
msgstr ""
"B<pause>() が返るのは、シグナルを受け取りシグナル捕獲関数から返った場合だけ"
"である。 この場合は B<pause>() は -1 を返し、 I<errno> に B<EINTR> が設定さ"
"れる。"
#. type: TP
-#: build/C/man2/pause.2:54 build/C/man2/sigsuspend.2:77
-#: build/C/man2/sigwaitinfo.2:116 build/C/man2/wait.2:409
+#: build/C/man2/pause.2:54 build/C/man2/sigsuspend.2:81
+#: build/C/man2/sigwaitinfo.2:123 build/C/man2/wait.2:411
#, no-wrap
msgid "B<EINTR>"
msgstr "B<EINTR>"
msgstr "B<kill>(2), B<select>(2), B<signal>(2), B<sigsuspend>(2)"
#. type: TH
-#: build/C/man2/prctl.2:46
+#: build/C/man2/prctl.2:54
#, no-wrap
msgid "PRCTL"
msgstr "PRCTL"
#. type: TH
-#: build/C/man2/prctl.2:46
+#: build/C/man2/prctl.2:54 build/C/man7/signal.7:46
#, fuzzy, no-wrap
-#| msgid "2011-09-18"
-msgid "2011-09-17"
-msgstr "2011-09-18"
+#| msgid "2015-01-22"
+msgid "2015-02-01"
+msgstr "2015-01-22"
#. type: Plain text
-#: build/C/man2/prctl.2:49
+#: build/C/man2/prctl.2:57
msgid "prctl - operations on a process"
msgstr "prctl - プロセスの操作を行なう"
#. type: Plain text
-#: build/C/man2/prctl.2:52
+#: build/C/man2/prctl.2:60
#, no-wrap
msgid "B<#include E<lt>sys/prctl.hE<gt>>\n"
msgstr "B<#include E<lt>sys/prctl.hE<gt>>\n"
#. type: Plain text
-#: build/C/man2/prctl.2:55
+#: build/C/man2/prctl.2:63
#, no-wrap
msgid ""
"B<int prctl(int >I<option>B<, unsigned long >I<arg2>B<, unsigned long >I<arg3>B<,>\n"
"B< unsigned long >I<arg4>B<, unsigned long >I<arg5>B<);>\n"
#. type: Plain text
-#: build/C/man2/prctl.2:62
+#: build/C/man2/prctl.2:70
msgid ""
"B<prctl>() is called with a first argument describing what to do (with "
"values defined in I<E<lt>linux/prctl.hE<gt>>), and further arguments with a "
"る。 一番目の引き数として以下のものを指定できる:"
#. type: TP
-#: build/C/man2/prctl.2:62
+#: build/C/man2/prctl.2:70
#, no-wrap
msgid "B<PR_CAPBSET_READ> (since Linux 2.6.25)"
msgstr "B<PR_CAPBSET_READ> (Linux 2.6.25 以降)"
#. type: Plain text
-#: build/C/man2/prctl.2:74
+#: build/C/man2/prctl.2:82
msgid ""
"Return (as the function result) 1 if the capability specified in I<arg2> is "
"in the calling thread's capability bounding set, or 0 if it is not. (The "
"B<execve>(2)."
msgstr ""
"で指定されたケーパビリティが呼び出したスレッドのケーパビリティ バインディング"
-"セット (capability bounding set) に含まれている場合、 (関数の返り値として) 1 "
-"を返し、そうでない場合 0 を返す (ケーパビリティ定数は I<E<lt>linux/"
-"capability.hE<gt>> で定義されている)。 ケーパビリティバウンディングセット"
-"は、 B<execve>(2) を呼び出した際に、ファイルの許可 (permitted) ケーパビリ"
-"ã\83\86ã\82£ã\81®ä¸ã\81§ ã\81\9dã\81®ã\83\97ã\83ã\82»ã\82¹ã\81\8cç\8d²å¾\97ã\81§ã\81\8dã\82\8bã\82±ã\83¼ã\83\91ã\83\93ã\83ªã\83\86ã\82£ã\82\92æ\8c\87示ã\81\99ã\82\8bã\82\82ã\81®ã\81§ã\81\82ã\82\8bã\80\82"
+"セット (capability bounding set) に含まれている場合、 (関数の結果として) 1 を"
+"返し、そうでない場合 0 を返す (ケーパビリティ定数は I<E<lt>linux/capability."
+"hE<gt>> で定義されている)。 ケーパビリティバウンディングセットは、 "
+"B<execve>(2) を呼び出した際に、ファイルの許可 (permitted) ケーパビリティの中"
+"で そのプロセスが獲得できるケーパビリティを指示するものである。"
#. type: Plain text
-#: build/C/man2/prctl.2:79
+#: build/C/man2/prctl.2:87
msgid ""
"If the capability specified in I<arg2> is not valid, then the call fails "
"with the error B<EINVAL>."
"B<EINVAL> で失敗する。"
#. type: TP
-#: build/C/man2/prctl.2:79
+#: build/C/man2/prctl.2:87
#, no-wrap
msgid "B<PR_CAPBSET_DROP> (since Linux 2.6.25)"
msgstr "B<PR_CAPBSET_DROP> (Linux 2.6.25 以降)"
#. type: Plain text
-#: build/C/man2/prctl.2:88
+#: build/C/man2/prctl.2:96
msgid ""
"If the calling thread has the B<CAP_SETPCAP> capability, then drop the "
"capability specified by I<arg2> from the calling thread's capability "
"を 継承する。"
#. type: Plain text
-#: build/C/man2/prctl.2:100
+#: build/C/man2/prctl.2:108
msgid ""
"The call fails with the error: B<EPERM> if the calling thread does not have "
"the B<CAP_SETPCAP>; B<EINVAL> if I<arg2> does not represent a valid "
"る。"
#. type: TP
-#: build/C/man2/prctl.2:100
+#: build/C/man2/prctl.2:108
+#, no-wrap
+msgid "B<PR_SET_CHILD_SUBREAPER> (since Linux 3.4)"
+msgstr "B<PR_SET_CHILD_SUBREAPER> (Linux 3.4 以降)"
+
+#. commit ebec18a6d3aa1e7d84aab16225e87fd25170ec2b
+#. type: Plain text
+#: build/C/man2/prctl.2:133
+msgid ""
+"If I<arg2> is nonzero, set the \"child subreaper\" attribute of the calling "
+"process; if I<arg2> is zero, unset the attribute. When a process is marked "
+"as a child subreaper, all of the children that it creates, and their "
+"descendants, will be marked as having a subreaper. In effect, a subreaper "
+"fulfills the role of B<init>(1) for its descendant processes. Upon "
+"termination of a process that is orphaned (i.e., its immediate parent has "
+"already terminated) and marked as having a subreaper, the nearest still "
+"living ancestor subreaper will receive a B<SIGCHLD> signal and be able to "
+"B<wait>(2) on the process to discover its termination status."
+msgstr ""
+"I<arg2> が 0 以外の場合、 呼び出し元プロセスの \"child subreaper\" 属性をセッ"
+"トする。 I<arg2> が 0 の場合、 この属性をクリアする。 プロセスが child "
+"subreaper のマークが付いている場合、 このプロセスの子プロセスやその子孫にはす"
+"べて subreaper のマークが付与される。 subreaper は事実上その子孫のプロセスに"
+"対して B<init>(1) の役割を果たす。 孤児になったプロセス (直接の親プロセスがす"
+"でに終了しているプロセス) が終了した際、 そのプロセスに subreaper のマークが"
+"付いていると、 最も近い存在する先祖の subreaper プロセスに B<SIGCHLD> シグナ"
+"ルが送られ、 そのプロセスの B<wait> を使って終了ステータスを知ることができ"
+"る。"
+
+#. type: TP
+#: build/C/man2/prctl.2:133
+#, no-wrap
+msgid "B<PR_GET_CHILD_SUBREAPER> (since Linux 3.4)"
+msgstr "B<PR_GET_CHILD_SUBREAPER> (Linux 3.4 以降)"
+
+#. type: Plain text
+#: build/C/man2/prctl.2:138
+msgid ""
+"Return the \"child subreaper\" setting of the caller, in the location "
+"pointed to by I<(int\\ *) arg2>."
+msgstr ""
+"呼び出し元の \"child subreaper\" 設定を、 I<(int\\ *) arg2> が指す場所に返"
+"す。"
+
+#. type: TP
+#: build/C/man2/prctl.2:138
#, no-wrap
msgid "B<PR_SET_DUMPABLE> (since Linux 2.3.20)"
msgstr "B<PR_SET_DUMPABLE> (Linux 2.3.20 以降)"
#. From: Marcel Holtmann <marcel () holtmann ! org>
#. Date: 2006-07-12 11:12:00
#. type: Plain text
-#: build/C/man2/prctl.2:126
-#, fuzzy
-#| msgid ""
-#| "Set the state of the flag determining whether core dumps are produced for "
-#| "this process upon delivery of a signal whose default behavior is to "
-#| "produce a core dump. (Normally this flag is set for a process by "
-#| "default, but it is cleared when a set-user-ID or set-group-ID program is "
-#| "executed and also by various system calls that manipulate process UIDs "
-#| "and GIDs). In kernels up to and including 2.6.12, I<arg2> must be either "
-#| "0 (process is not dumpable) or 1 (process is dumpable). Between kernels "
-#| "2.6.13 and 2.6.17, the value 2 was also permitted, which caused any "
-#| "binary which normally would not be dumped to be dumped readable by root "
-#| "only; for security reasons, this feature has been removed. (See also the "
-#| "description of I</proc/sys/fs/suid_dumpable> in B<proc>(5).)"
+#: build/C/man2/prctl.2:164
msgid ""
"Set the state of the flag determining whether core dumps are produced for "
-"this process upon delivery of a signal whose default behavior is to produce "
-"a core dump. (Normally this flag is set for a process by default, but it is "
-"cleared when a set-user-ID or set-group-ID program is executed and also by "
-"various system calls that manipulate process UIDs and GIDs). In kernels up "
-"to and including 2.6.12, I<arg2> must be either 0 (process is not dumpable) "
-"or 1 (process is dumpable). Between kernels 2.6.13 and 2.6.17, the value 2 "
-"was also permitted, which caused any binary which normally would not be "
-"dumped to be dumped readable by root only; for security reasons, this "
+"the calling process upon delivery of a signal whose default behavior is to "
+"produce a core dump. (Normally, this flag is set for a process by default, "
+"but it is cleared when a set-user-ID or set-group-ID program is executed and "
+"also by various system calls that manipulate process UIDs and GIDs). In "
+"kernels up to and including 2.6.12, I<arg2> must be either 0 (process is not "
+"dumpable) or 1 (process is dumpable). Between kernels 2.6.13 and 2.6.17, "
+"the value 2 was also permitted, which caused any binary which normally would "
+"not be dumped to be dumped readable by root only; for security reasons, this "
"feature has been removed. (See also the description of I</proc/sys/fs/"
"suid_dumpable> in B<proc>(5).) Processes that are not dumpable can not be "
-"attached via B<ptrace(2)> B<PTRACE_ATTACH>."
+"attached via B<ptrace>(2) B<PTRACE_ATTACH>."
msgstr ""
-"(Linux 2.3.20 以降) デフォルトの振る舞いではコアダンプを引き起こすようなシグ"
-"ナルを受信したときに、 コアダンプするかどうかを決定するフラグを設定する (通常"
-"このフラグは、デフォルトではセットされているが、 set-user-ID あるいは set-"
-"group-ID プログラムが実行されたり、 さまざまなシステムコールによってプロセス"
-"の UID や GID が操作されたときに クリアされる)。 2.6.12 以前のカーネルでは、 "
-"I<arg2> は 0 (プロセスはダンプ不可) あるいは 1 (プロセスはダンプ可能) の どち"
-"らかでなければならない。 2.6.13 から 2.6.17 までのカーネルでは、値 2 も認めら"
-"れていた。 この値を指定すると、通常はダンプされないバイナリが root だけが 読"
-"み込み可能な形でダンプされた。 セキュリティ上の理由から、この機能は削除され"
-"た (B<proc>(5) の I</proc/sys/fs/suid_dumpable> の説明も参照)。"
+"(Linux 2.3.20 以降) デフォルトの振る舞いではコアダンプを引き起こすようなシグ"
+"ナルを受信したときに、呼び出し元のプロセスでコアダンプを生成するかどうかを決"
+"定するフラグを設定する (通常このフラグは、デフォルトではセットされているが、 "
+"set-user-ID あるいは set-group-ID プログラムが実行されたり、 さまざまなシステ"
+"ムコールによってプロセスの UID や GID が操作されたときに クリアされる)。 "
+"2.6.12 以前のカーネルでは、 I<arg2> は 0 (プロセスはダンプ不可) あるいは 1 "
+"(プロセスはダンプ可能) の どちらかでなければならない。 2.6.13 から 2.6.17 ま"
+"でのカーネルでは、値 2 も認められていた。 この値を指定すると、通常はダンプさ"
+"れないバイナリが root だけが 読み込み可能な形でダンプされた。 セキュリティ上"
+"の理由から、この機能は削除された (B<proc>(5) の I</proc/sys/fs/"
+"suid_dumpable> の説明も参照)。 ダンプ不可のプロセスを B<ptrace>(2) "
+"B<PTRACE_ATTACH> 経由で接続することはできない。"
#. type: TP
-#: build/C/man2/prctl.2:126
+#: build/C/man2/prctl.2:164
#, no-wrap
msgid "B<PR_GET_DUMPABLE> (since Linux 2.3.20)"
msgstr "B<PR_GET_DUMPABLE> (Linux 2.3.20 以降)"
#. but in 2.6.13 PR_GET_DUMPABLE simply returns 1 if the dumpable
#. flags has a nonzero value. This was fixed in 2.6.14.
#. type: Plain text
-#: build/C/man2/prctl.2:133
+#: build/C/man2/prctl.2:171
msgid ""
"Return (as the function result) the current state of the calling process's "
"dumpable flag."
msgstr ""
"(Linux 2.3.20 以降) 呼び出し元プロセスにおけるダンプ可能フラグの 現在の状態"
-"を (関数の返り値として) 返す。"
+"を (関数の結果として) 返す。"
#. type: TP
-#: build/C/man2/prctl.2:133
+#: build/C/man2/prctl.2:171
#, no-wrap
msgid "B<PR_SET_ENDIAN> (since Linux 2.6.18, PowerPC only)"
msgstr "B<PR_SET_ENDIAN> (Linux 2.6.18 以降、PowerPC のみ)"
#. Respectively 0, 1, 2
#. type: Plain text
-#: build/C/man2/prctl.2:143
+#: build/C/man2/prctl.2:181
msgid ""
"Set the endian-ness of the calling process to the value given in I<arg2>, "
"which should be one of the following: B<PR_ENDIAN_BIG>, B<PR_ENDIAN_LITTLE>, "
"る。"
#. type: TP
-#: build/C/man2/prctl.2:143
+#: build/C/man2/prctl.2:181
#, no-wrap
msgid "B<PR_GET_ENDIAN> (since Linux 2.6.18, PowerPC only)"
msgstr "B<PR_GET_ENDIAN> (Linux 2.6.18 以降、PowerPC のみ)"
#. type: Plain text
-#: build/C/man2/prctl.2:148
+#: build/C/man2/prctl.2:186
msgid ""
"Return the endian-ness of the calling process, in the location pointed to by "
"I<(int\\ *) arg2>."
"す場所に格納して返す。"
#. type: TP
-#: build/C/man2/prctl.2:148
+#: build/C/man2/prctl.2:186
#, no-wrap
msgid "B<PR_SET_FPEMU> (since Linux 2.4.18, 2.5.9, only on ia64)"
msgstr "B<PR_SET_FPEMU> (Linux 2.4.18 以降, 2.5.9, ia64 のみ)"
#. type: Plain text
-#: build/C/man2/prctl.2:155
+#: build/C/man2/prctl.2:193
msgid ""
"Set floating-point emulation control bits to I<arg2>. Pass "
"B<PR_FPEMU_NOPRINT> to silently emulate fp operations accesses, or "
"ミュレートせず、 代わりに B<SIGFPE> を送る) である。"
#. type: TP
-#: build/C/man2/prctl.2:155
+#: build/C/man2/prctl.2:193
#, no-wrap
msgid "B<PR_GET_FPEMU> (since Linux 2.4.18, 2.5.9, only on ia64)"
msgstr "B<PR_GET_FPEMU> (Linux 2.4.18 以降, 2.5.9, ia64 のみ)"
#. type: Plain text
-#: build/C/man2/prctl.2:160
+#: build/C/man2/prctl.2:198
msgid ""
"Return floating-point emulation control bits, in the location pointed to by "
"I<(int\\ *) arg2>."
"して返す。"
#. type: TP
-#: build/C/man2/prctl.2:160
+#: build/C/man2/prctl.2:198
#, no-wrap
msgid "B<PR_SET_FPEXC> (since Linux 2.4.21, 2.5.32, only on PowerPC)"
msgstr "B<PR_SET_FPEXC> (Linux 2.4.21 および 2.5.32 以降、PowerPC のみ)"
#. type: Plain text
-#: build/C/man2/prctl.2:173
+#: build/C/man2/prctl.2:211
msgid ""
"Set floating-point exception mode to I<arg2>. Pass B<PR_FP_EXC_SW_ENABLE> "
"to use FPEXC for FP exception enables, B<PR_FP_EXC_DIV> for floating-point "
"(precise exception mode)。"
#. type: TP
-#: build/C/man2/prctl.2:173
+#: build/C/man2/prctl.2:211
#, no-wrap
msgid "B<PR_GET_FPEXC> (since Linux 2.4.21, 2.5.32, only on PowerPC)"
msgstr "B<PR_GET_FPEXC>(Linux 2.4.21 および 2.5.32 以降、PowerPC のみ)"
#. type: Plain text
-#: build/C/man2/prctl.2:178
+#: build/C/man2/prctl.2:216
msgid ""
"Return floating-point exception mode, in the location pointed to by I<(int\\ "
"*) arg2>."
"浮動小数点例外モードの値を I<(int\\ *) arg2> が指す場所に格納して返す。"
#. type: TP
-#: build/C/man2/prctl.2:178
+#: build/C/man2/prctl.2:216
#, no-wrap
msgid "B<PR_SET_KEEPCAPS> (since Linux 2.2.18)"
msgstr "B<PR_SET_KEEPCAPS> (Linux 2.2.18 以降)"
#. type: Plain text
-#: build/C/man2/prctl.2:196
-#, fuzzy
-#| msgid ""
-#| "Set the state of the thread's \"keep capabilities\" flag, which "
-#| "determines whether the threads's effective and permitted capability sets "
-#| "are cleared when a change is made to the threads's user IDs such that the "
-#| "threads's real UID, effective UID, and saved set-user-ID all become "
-#| "nonzero when at least one of them previously had the value 0. (By "
-#| "default, these credential sets are cleared). I<arg2> must be either 0 "
-#| "(capabilities are cleared) or 1 (capabilities are kept). This value will "
-#| "be reset to 0 on subsequent calls to B<execve>(2)."
+#: build/C/man2/prctl.2:234
msgid ""
"Set the state of the thread's \"keep capabilities\" flag, which determines "
"whether the threads's permitted capability set is cleared when a change is "
"subsequent calls to B<execve>(2)."
msgstr ""
"スレッドの「ケーパビリティ保持」フラグを設定する。 このフラグは、スレッドの"
-"実 UID、実効 UID、保存 set-user-ID のうち少なくとも 一つが 0 であった状態か"
-"ら、これら全てが 0 以外に変更されたとき、 スレッドの実効/許可のケーパビリティ"
-"集合がクリアされるかどうかを決定する (デフォルトでは、これらのケーパビリティ"
-"集合はクリアされる)。 I<arg2> は 0 (ケーパビリティをクリアする) あるいは 1 "
-"(ケーパビリティを保持する) の どちらかでなければならない。 B<execve>(2) が呼"
-"び出されると、この値は 0 にリセットされる。"
+"実 UID、実効 UID、保存 set-user-ID のうち少なくとも一つが 0 であった状態か"
+"ら、これら全てが 0 以外に変更されたとき、 スレッドの許可ケーパビリティ集合が"
+"クリアされるかどうかを決定する。 デフォルトでは、このような変更が行われた場"
+"合、許可ケーパビリティセットはクリアされる。「ケーパビリティ保持」フラグを設"
+"定すると、許可ケーパビリティセットはクリアされなくなる。 I<arg2> は 0 (許可"
+"ケーパビリティをクリアする) か 1 (許可ケーパビリティを保持する) の どちらかで"
+"なければならない。 (このような ID の変更が行われた場合、「ケーパビリティ保"
+"持」フラグの設定に関わらず、スレッドのI<実効>ケーパビリティセットは常にクリア"
+"される。) B<execve>(2) が呼び出されると、「ケーパビリティ保持」フラグは 0 に"
+"リセットされる。"
#. type: TP
-#: build/C/man2/prctl.2:196
+#: build/C/man2/prctl.2:234
#, no-wrap
msgid "B<PR_GET_KEEPCAPS> (since Linux 2.2.18)"
msgstr "B<PR_GET_KEEPCAPS> (Linux 2.2.18 以降)"
#. type: Plain text
-#: build/C/man2/prctl.2:200
+#: build/C/man2/prctl.2:238
msgid ""
"Return (as the function result) the current state of the calling threads's "
"\"keep capabilities\" flag."
msgstr ""
"呼び出し元スレッドにおける「ケーパビリティ保持」フラグの 現在の状態を (関数の"
-"返り値として) 返す。"
+"結果として) 返す。"
#. type: TP
-#: build/C/man2/prctl.2:200
+#: build/C/man2/prctl.2:238
#, no-wrap
msgid "B<PR_SET_NAME> (since Linux 2.6.9)"
msgstr "B<PR_SET_NAME> (Linux 2.6.9 以降)"
#. TASK_COMM_LEN in include/linux/sched.h
#. type: Plain text
-#: build/C/man2/prctl.2:208
+#: build/C/man2/prctl.2:257
msgid ""
-"Set the process name for the calling process, using the value in the "
-"location pointed to by I<(char\\ *) arg2>. The name can be up to 16 bytes "
-"long, and should be null-terminated if it contains fewer bytes."
+"Set the name of the calling thread, using the value in the location pointed "
+"to by I<(char\\ *) arg2>. The name can be up to 16 bytes long, including "
+"the terminating null byte. (If the length of the string, including the "
+"terminating null byte, exceeds 16 bytes, the string is silently truncated.) "
+"This is the same attribute that can be set via B<pthread_setname_np>(3) and "
+"retrieved using B<pthread_getname_np>(3). The attribute is likewise "
+"accessible via I</proc/self/task/[tid]/comm>, where I<tid> is the name of "
+"the calling thread."
msgstr ""
-"呼び出し元プロセスのプロセス名を I<(char\\ *) arg2> が指す場所に格納された値"
-"を使って設定する。 名前は最大で 16 バイトであり、 それより少ないバイト数の場"
-"合は NULL で終端すべきである。"
+"呼び出し元スレッドのプロセス名を I<(char\\ *) arg2> が指す場所に格納された値"
+"を使って設定する。 名前は終端の NULL バイトを含めて最大で 16 バイトである (終"
+"端の NULL バイトを含めた文字列の長さが 16 バイトを超える場合、 文字列は黙って"
+"切り詰められる)。 これは、 B<pthread_setname_np>(3) で設定でき、 "
+"B<pthread_getname_np>(3) で取得できるのと同じ属性である。 同様に、 I<tid> が"
+"呼び出し元スレッドの ID の場合、 この属性は I</proc/self/task/[tid]/comm> 経"
+"由でもアクセス可能である。"
#. type: TP
-#: build/C/man2/prctl.2:208
+#: build/C/man2/prctl.2:257
#, no-wrap
msgid "B<PR_GET_NAME> (since Linux 2.6.11)"
msgstr "B<PR_GET_NAME> (Linux 2.6.11 以降)"
#. type: Plain text
-#: build/C/man2/prctl.2:215
+#: build/C/man2/prctl.2:264
+msgid ""
+"Return the name of the calling thread, in the buffer pointed to by I<(char\\ "
+"*) arg2>. The buffer should allow space for up to 16 bytes; the returned "
+"string will be null-terminated."
+msgstr ""
+"呼び出し元スレッドの名前を I<(char\\ *) arg2> が指す場所に格納して返す。 バッ"
+"ファーは最大で 16 バイトを格納できるようにすべきである。 返される文字列はヌル"
+"終端される。"
+
+#. type: TP
+#: build/C/man2/prctl.2:264
+#, no-wrap
+msgid "B<PR_SET_NO_NEW_PRIVS> (since Linux 3.5)"
+msgstr "B<PR_SET_NO_NEW_PRIVS> (Linux 3.5 以降)"
+
+#. type: Plain text
+#: build/C/man2/prctl.2:287
+msgid ""
+"Set the calling process's I<no_new_privs> bit to the value in I<arg2>. With "
+"I<no_new_privs> set to 1, B<execve>(2) promises not to grant privileges to "
+"do anything that could not have been done without the B<execve>(2) call "
+"(for example, rendering the set-user-ID and set-group-ID permission bits, "
+"and file capabilities non-functional). Once set, this bit cannot be unset. "
+"The setting of this bit is inherited by children created by B<fork>(2) and "
+"B<clone>(2), and preserved across B<execve>(2)."
+msgstr ""
+"呼び出し元プロセスの I<no_new_privs> ビットを I<arg2> の値に設定する。 "
+"I<no_new_privs> が 1 に設定されると、 B<execve>(2) は、 B<execve>(2) の呼び出"
+"しなしでは実行できなかったことに対する特権を許可しなくなる (例えば、 set-"
+"user-ID/set-group-ID 許可ビットやファイルケーパビリティが動作しなくなる)。 一"
+"度設定される、 このビットは解除することができない。 このビットの設定は "
+"B<fork>(2) や B<clone>(2) で作成された子プロセスに継承され、 B<execve>(2) の"
+"前後で保持される。"
+
+#. type: Plain text
+#: build/C/man2/prctl.2:290
+msgid ""
+"For more information, see the kernel source file I<Documentation/prctl/"
+"no_new_privs.txt>."
+msgstr ""
+"詳しい情報は、カーネルソースファイル I<Documentation/prctl/no_new_privs.txt> "
+"を参照。"
+
+#. type: TP
+#: build/C/man2/prctl.2:290
+#, no-wrap
+msgid "B<PR_GET_NO_NEW_PRIVS> (since Linux 3.5)"
+msgstr "B<PR_GET_NO_NEW_PRIVS> (Linux 3.5 以降)"
+
+#. type: Plain text
+#: build/C/man2/prctl.2:301
msgid ""
-"Return the process name for the calling process, in the buffer pointed to by "
-"I<(char\\ *) arg2>. The buffer should allow space for up to 16 bytes; the "
-"returned string will be null-terminated if it is shorter than that."
+"Return (as the function result) the value of the I<no_new_privs> bit for the "
+"current process. A value of 0 indicates the regular B<execve>(2) "
+"behavior. A value of 1 indicates B<execve>(2) will operate in the "
+"privilege-restricting mode described above."
msgstr ""
-"呼び出し元プロセスのプロセス名を I<(char\\ *) arg2> が指す場所に格納して返"
-"ã\81\99ã\80\82 ã\83\90ã\83\83ã\83\95ã\82¡ã\81¯æ\9c\80大ã\81§ 16 ã\83\90ã\82¤ã\83\88ã\82\92æ ¼ç´\8dã\81§ã\81\8dã\82\8bã\82\88ã\81\86ã\81«ã\81\99ã\81¹ã\81\8dã\81§ã\81\82ã\82\8bã\80\82 è¿\94ã\81\95ã\82\8cã\82\8bæ\96\87å\97"
-"列は、長さが 16 バイトより短い場合は NULL 終端される。"
+"現在のプロセスの I<no_new_privs> ビットの値を (関数の結果として) 返す。 値 0 "
+"ã\81¯é\80\9a常ã\81® B<execve>(2) ã\81®å\8b\95ä½\9cã\82\92æ\84\8få\91³ã\81\99ã\82\8bã\80\82 å\80¤ 1 ã\81¯ B<execve>(2) ã\81\8cä¸\8aè¨\98ã\81§è¿°ã\81¹ã\81\9f"
+"特権を制限する動作をすることを示す。"
#. type: TP
-#: build/C/man2/prctl.2:215
+#: build/C/man2/prctl.2:301
#, no-wrap
msgid "B<PR_SET_PDEATHSIG> (since Linux 2.1.57)"
msgstr "B<PR_SET_PDEATHSIG> (Linux 2.1.57 以降)"
#. type: Plain text
-#: build/C/man2/prctl.2:224
+#: build/C/man2/prctl.2:314
msgid ""
"Set the parent process death signal of the calling process to I<arg2> "
"(either a signal value in the range 1..maxsig, or 0 to clear). This is the "
"signal that the calling process will get when its parent dies. This value "
-"is cleared for the child of a B<fork>(2)."
+"is cleared for the child of a B<fork>(2) and (since Linux 2.4.36 / 2.6.23) "
+"when executing a set-user-ID or set-group-ID binary. This value is "
+"preserved across B<execve>(2)."
msgstr ""
"親プロセス死亡シグナル (parent process death signal) を I<arg2> に設定する "
"(設定できるシグナル値の範囲は 1..maxsig であり、0 は通知の解除である)。 呼び"
"出し元プロセスの親プロセスが死んだ際に、ここで設定した値が シグナルとして通知"
-"される。この値は B<fork>(2) の子プロセスでは解除される。"
+"される。この値は B<fork>(2) の子プロセスでは解除される。 (Linux 2.4.36 以降お"
+"よび 2.6.23 以降では) set-user-ID もしくは set-group-ID されたバイナリを実行"
+"した場合にも、このフラグは解除される。この値は B<execve>(2) の前後で保持され"
+"る。"
#. type: TP
-#: build/C/man2/prctl.2:224
+#: build/C/man2/prctl.2:314
#, no-wrap
msgid "B<PR_GET_PDEATHSIG> (since Linux 2.3.15)"
msgstr "B<PR_GET_PDEATHSIG> (Linux 2.3.15 以降)"
#. type: Plain text
-#: build/C/man2/prctl.2:229
+#: build/C/man2/prctl.2:319
msgid ""
"Return the current value of the parent process death signal, in the location "
"pointed to by I<(int\\ *) arg2>."
"す。"
#. type: TP
-#: build/C/man2/prctl.2:229
+#: build/C/man2/prctl.2:319
+#, no-wrap
+msgid "B<PR_SET_PTRACER> (since Linux 3.4)"
+msgstr "B<PR_SET_PTRACER> (Linux 3.4 以降)"
+
+#. commit 2d514487faf188938a4ee4fb3464eeecfbdcf8eb
+#. commit bf06189e4d14641c0148bea16e9dd24943862215
+#. type: Plain text
+#: build/C/man2/prctl.2:344
+msgid ""
+"This is meaningful only when the Yama LSM is enabled and in mode 1 "
+"(\"restricted ptrace\", visible via I</proc/sys/kernel/yama/ptrace_scope>). "
+"When a \"ptracer process ID\" is passed in I<arg2>, the caller is declaring "
+"that the ptracer process can B<ptrace>(2) the calling process as if it were "
+"a direct process ancestor. Each B<PR_SET_PTRACER> operation replaces the "
+"previous \"ptracer process ID\". Employing B<PR_SET_PTRACER> with I<arg2> "
+"set to 0 clears the caller's \"ptracer process ID\". If I<arg2> is "
+"B<PR_SET_PTRACER_ANY>, the ptrace restrictions introduced by Yama are "
+"effectively disabled for the calling process."
+msgstr ""
+"この設定は Yama LSM が有効になっていてモード 1 (\"restricted ptrace\") の場合"
+"のみに意味を持つ (モードは I</proc/sys/kernel/yama/ptrace_scope> で参照可"
+"能)。 \"ptrace プロセス ID\" が I<arg2> で渡された場合、 呼び出し元は "
+"ptracer プロセスがそのプロセスが直接のプロセスの先祖であるかのよう呼び出した"
+"プロセスを B<ptrace> できる、 と宣言しているということだ。 B<PR_SET_PTRACER> "
+"操作を行う毎に、 直前の \"ptracer プロセス ID\" は置きかえられる。 I<arg2> "
+"で B<PR_SET_PTRACER> を 0 に設定すると、 呼び出し元の \"ptracer プロセス ID"
+"\" がクリアされる。 I<arg2> が B<PR_SET_PTRACER> の場合、 Yama が導入した "
+"ptrace の制限は呼び出し元プロセスに対しては無効になる。"
+
+#. type: Plain text
+#: build/C/man2/prctl.2:347
+msgid ""
+"For further information, see the kernel source file I<Documentation/security/"
+"Yama.txt>."
+msgstr ""
+"詳しい情報は、カーネルソースファイル I<Documentation/security/Yama.txt> を参"
+"照。"
+
+#. type: TP
+#: build/C/man2/prctl.2:347
#, no-wrap
msgid "B<PR_SET_SECCOMP> (since Linux 2.6.23)"
msgstr "B<PR_SET_SECCOMP> (Linux 2.6.23 以降)"
#. [PATCH 0 of 2] seccomp updates
#. andrea@cpushare.com
#. type: Plain text
-#: build/C/man2/prctl.2:253
+#: build/C/man2/prctl.2:358
+msgid ""
+"Set the secure computing (seccomp) mode for the calling thread, to limit the "
+"available system calls. The more recent B<seccomp>(2) system call provides "
+"a superset of the functionality of B<PR_SET_SECCOMP>."
+msgstr ""
+"呼び出したスレッドのセキュアコンピューティング (seccomp) モードを設定する。 "
+"最近の B<seccomp>(2) システムコールは B<PR_SET_SECCOMP> の上位互換の機能を提"
+"供する。"
+
+#. type: Plain text
+#: build/C/man2/prctl.2:363
+msgid ""
+"The seccomp mode is selected via I<arg2>. (The seccomp constants are "
+"defined in I<E<lt>linux/seccomp.hE<gt>>.)"
+msgstr ""
+"seccomp モードは I<arg2> で指定できる (seccomp 定数は I<E<lt>linux/seccomp."
+"hE<gt>> で定義されている)。"
+
+#. type: Plain text
+#: build/C/man2/prctl.2:384
+msgid ""
+"With I<arg2> set to B<SECCOMP_MODE_STRICT>, the only system calls that the "
+"thread is permitted to make are B<read>(2), B<write>(2), B<_exit>(2), and "
+"B<sigreturn>(2). Other system calls result in the delivery of a B<SIGKILL> "
+"signal. Strict secure computing mode is useful for number-crunching "
+"applications that may need to execute untrusted byte code, perhaps obtained "
+"by reading from a pipe or socket. This operation is available only if the "
+"kernel is configured with B<CONFIG_SECCOMP> enabled."
+msgstr ""
+"I<arg2> を B<SECCOMP_MODE_STRICT> に設定すると、 そのスレッドが呼び出しを許可"
+"されるシステムコールは B<read>(2), B<write>(2), B<_exit>(2), B<sigreturn>(2) "
+"だけになる。 それ以外のシステムコールを呼び出すと、シグナル B<SIGKILL> が配送"
+"される。 パイプやソケットから読み込んだ、 信頼できないバイトコードを実行する"
+"必要がある大量の演算を行うアプリケーションにおいて、 strict secure computing "
+"モードは役立つ。 この操作は利用できるのは、 カーネルが B<CONFIG_SECCOMP> を有"
+"効にして作成されている場合だけである。"
+
+#. type: Plain text
+#: build/C/man2/prctl.2:399
+msgid ""
+"With I<arg2> set to B<SECCOMP_MODE_FILTER> (since Linux 3.5), the system "
+"calls allowed are defined by a pointer to a Berkeley Packet Filter passed in "
+"I<arg3>. This argument is a pointer to I<struct sock_fprog>; it can be "
+"designed to filter arbitrary system calls and system call arguments. This "
+"mode is available only if the kernel is configured with "
+"B<CONFIG_SECCOMP_FILTER> enabled."
+msgstr ""
+"I<arg2> を B<SECCOMP_MODE_FILTER> (Linux 3.5 以降) に設定すると、 許可される"
+"システムコールは I<arg3> で渡された Berkeley Packet Filter へのポインターで定"
+"義される。 この引き数は I<struct sock_fprog> へのポインターである。 これは任"
+"意のシステムコールやシステムコール引き数をフィルタリングするために設計され"
+"た。 このモードはカーネルで B<CONFIG_SECCOMP_FILTER> が有効になっている場合に"
+"のみ利用可能である。"
+
+#. type: Plain text
+#: build/C/man2/prctl.2:414
+msgid ""
+"If B<SECCOMP_MODE_FILTER> filters permit B<fork>(2), then the seccomp mode "
+"is inherited by children created by B<fork>(2); if B<execve>(2) is "
+"permitted, then the seccomp mode is preserved across B<execve>(2). If the "
+"filters permit B<prctl>() calls, then additional filters can be added; they "
+"are run in order until the first non-allow result is seen."
+msgstr ""
+"B<SECCOMP_MODE_FILTER> フィルターで B<fork>(2) が許可されている場合、 "
+"seccomp モードは B<fork>(2) で作成された子プロセスに継承される。 "
+"B<execve>(2) が許可されている場合、 seccomp モードは B<execve>(2) の前後で維"
+"持される。 フィルターで B<prctl>() コールが許可されている場合、 追加でフィル"
+"ターが定義され、 これらのフィルターは許可されないものが見つかるまで指定された"
+"順序で実行される。"
+
+#. type: Plain text
+#: build/C/man2/prctl.2:417
msgid ""
-"Set the secure computing mode for the calling thread. In the current "
-"implementation, I<arg2> must be 1. After the secure computing mode has been "
-"set to 1, the only system calls that the thread is permitted to make are "
-"B<read>(2), B<write>(2), B<_exit>(2), and B<sigreturn>(2). Other system "
-"calls result in the delivery of a B<SIGKILL> signal. Secure computing mode "
-"is useful for number-crunching applications that may need to execute "
-"untrusted byte code, perhaps obtained by reading from a pipe or socket. "
-"This operation is only available if the kernel is configured with "
-"CONFIG_SECCOMP enabled."
+"For further information, see the kernel source file I<Documentation/prctl/"
+"seccomp_filter.txt>."
msgstr ""
-"呼び出したスレッドの secure computing モードを設定する。 現在の実装では、 "
-"I<arg2> は 1 にしなければならない。 secure computing モードを 1 に設定する"
-"と、 そのスレッドが呼び出しを許可されるシステムコールは B<read>(2), B<write>"
-"(2), B<_exit>(2), B<sigreturn>(2) だけになる。 それ以外のシステムコールを呼"
-"び出すと、シグナル B<SIGKILL> が配送される。 パイプやソケットから読み込んだ、"
-"信頼できないバイトコードを実行する 必要がある大量の演算を行うアプリケーション"
-"において、 secure computing モードは役立つ。 この操作は利用できるのは、カーネ"
-"ルが CONFIG_SECCOMP を有効にして 作成されている場合だけである。"
+"詳しい情報は、カーネルソースファイル I<Documentation/prctl/seccomp_filter."
+"txt> を参照。"
#. type: TP
-#: build/C/man2/prctl.2:253
+#: build/C/man2/prctl.2:417
#, no-wrap
msgid "B<PR_GET_SECCOMP> (since Linux 2.6.23)"
msgstr "B<PR_GET_SECCOMP> (Linux 2.6.23 以降)"
#. type: Plain text
-#: build/C/man2/prctl.2:266
+#: build/C/man2/prctl.2:435
msgid ""
-"Return the secure computing mode of the calling thread. Not very useful for "
-"the current implementation (mode equals 1), but may be useful for other "
-"possible future modes: if the caller is not in secure computing mode, this "
-"operation returns 0; if the caller is in secure computing mode, then the "
+"Return (as the function result) the secure computing mode of the calling "
+"thread. If the caller is not in secure computing mode, this operation "
+"returns 0; if the caller is in strict secure computing mode, then the "
"B<prctl>() call will cause a B<SIGKILL> signal to be sent to the process. "
-"This operation is only available if the kernel is configured with "
-"CONFIG_SECCOMP enabled."
+"If the caller is in filter mode, and this system call is allowed by the "
+"seccomp filters, it returns 2; otherwise, the process is killed with a "
+"B<SIGKILL> signal. This operation is available only if the kernel is "
+"configured with B<CONFIG_SECCOMP> enabled."
+msgstr ""
+"呼び出したスレッドの secure computing モードを (関数の結果として) 返す。 呼び"
+"出したスレッドが secure computing モードでなかった場合、 この操作は 0 を返"
+"し、 呼び出したスレッドが strict secure computing モードの場合、 B<prctl>() "
+"を呼び出すとシグナル B<SIGKILL> がそのプロセスに送信される。 呼び出したスレッ"
+"ドがフィルタモードで、 このシステムコールが seccomp フィルタにより許可されて"
+"いる場合、 2 を返し、 そうでない場合プロセスは B<SIGKILL> シグナルで kill さ"
+"れづ。 この操作が利用できるのは、カーネルが B<CONFIG_SECCOMP> を有効にして作"
+"成されている場合だけである。"
+
+#. type: Plain text
+#: build/C/man2/prctl.2:443
+msgid ""
+"Since Linux 3.8, the I<Seccomp> field of the I</proc/[pid]/status> file "
+"provides a method of obtaining the same information, without the risk that "
+"the process is killed; see B<proc>(5)."
msgstr ""
-"呼び出したスレッドの secure computing モードを返す。 現在の実装 (モードは 1 "
-"固定) はあまり役に立たないが、 将来他のモードが実装されると役立つようになるか"
-"もしれない。 呼び出したスレッドが secure computing モードでなかった場合、 こ"
-"の操作は 0 を返す。 呼び出したスレッドが secure computing モードの場合、 "
-"B<prctl>() を呼び出すとシグナル B<SIGKILL> がそのプロセスに送信される。 この"
-"操作が利用できるのは、カーネルが CONFIG_SECCOMP を有効にして 作成されている場"
-"合だけである。"
+"Linux 3.8 以降では、 I</proc/[pid]/status> の I<seccomp> フィールドからも同じ"
+"情報を取得できる。 この方法の場合はプロセスが kill される危険はない。 "
+"B<proc>(5) を参照。"
#. type: TP
-#: build/C/man2/prctl.2:266
+#: build/C/man2/prctl.2:443
#, no-wrap
msgid "B<PR_SET_SECUREBITS> (since Linux 2.6.26)"
msgstr "B<PR_SET_SECUREBITS> (Linux 2.6.26 以降)"
#. type: Plain text
-#: build/C/man2/prctl.2:272
+#: build/C/man2/prctl.2:449
msgid ""
"Set the \"securebits\" flags of the calling thread to the value supplied in "
"I<arg2>. See B<capabilities>(7)."
"る。 B<capabilities>(7) 参照。"
#. type: TP
-#: build/C/man2/prctl.2:272
+#: build/C/man2/prctl.2:449
#, no-wrap
msgid "B<PR_GET_SECUREBITS> (since Linux 2.6.26)"
msgstr "B<PR_GET_SECUREBITS> (Linux 2.6.26 以降)"
#. type: Plain text
-#: build/C/man2/prctl.2:278
+#: build/C/man2/prctl.2:455
msgid ""
"Return (as the function result) the \"securebits\" flags of the calling "
"thread. See B<capabilities>(7)."
msgstr ""
-"呼び出したスレッドの \"securebits\" フラグを (関数の返り値として) 返す。 "
+"呼び出したスレッドの \"securebits\" フラグを (関数の結果として) 返す。 "
"B<capabilities>(7) 参照。"
#. type: TP
-#: build/C/man2/prctl.2:278
+#: build/C/man2/prctl.2:455
+#, no-wrap
+msgid "B<PR_SET_THP_DISABLE> (since Linux 3.15)"
+msgstr "B<PR_SET_THP_DISABLE> (Linux 3.15 以降)"
+
+#. commit a0715cc22601e8830ace98366c0c2bd8da52af52
+#. type: Plain text
+#: build/C/man2/prctl.2:471
+msgid ""
+"Set the state of the \"THP disable\" flag for the calling thread. If "
+"I<arg2> has a nonzero value, the flag is set, otherwise it is cleared. "
+"Setting this flag provides a method for disabling transparent huge pages for "
+"jobs where the code cannot be modified, and using a malloc hook with "
+"B<madvise>(2) is not an option (i.e., statically allocated data). The "
+"setting of the \"THP disable\" flag is inherited by a child created via "
+"B<fork>(2) and is preserved across B<execve>(2)."
+msgstr ""
+"呼び出したスレッドの \"THP disable\" (THP 無効) フラグの状態を設定する。 "
+"I<arg2> が 0 以外の場合、フラグは有効になり、そうでない場合はクリーンされ"
+"る。 このフラグを設定する方法により、 コードを変更できなかったり "
+"B<madvise>(2) の malloc hook をが有効ではないジョブ (この方法は静的に割り当て"
+"られたデータには有効ではない)に対して、 transparent huge pages を無効にする手"
+"段が提供される。 \"THP disable\" フラグの設定は B<fork>(2) で作成された子プロ"
+"セスに継承され、 B<execve> の前後で維持される。"
+
+#. type: TP
+#: build/C/man2/prctl.2:471
+#, no-wrap
+msgid "B<PR_GET_THP_DISABLE> (since Linux 3.15)"
+msgstr "B<PR_GET_THP_DISABLE> (Linux 3.15 以降)"
+
+#. type: Plain text
+#: build/C/man2/prctl.2:476
+msgid ""
+"Return (via the function result) the current setting of the \"THP disable\" "
+"flag for the calling thread: either 1, if the flag is set, or 0, if it is "
+"not."
+msgstr ""
+"呼び出し元スレッドの \"THP disable\" フラグの現在の設定を (関数の結果として) "
+"返す。フラグがセットされている場合は 1 が、セットされていない場合は 0 が返"
+"る。"
+
+#. type: TP
+#: build/C/man2/prctl.2:476
+#, no-wrap
+msgid "B<PR_GET_TID_ADDRESS> (since Linux 3.5)"
+msgstr "B<PR_GET_TID_ADDRESS> (Linux 3.5 以降)"
+
+#. commit 300f786b2683f8bb1ec0afb6e1851183a479c86d
+#. type: Plain text
+#: build/C/man2/prctl.2:491
+msgid ""
+"Retrieve the I<clear_child_tid> address set by B<set_tid_address>(2) and "
+"the B<clone>(2) B<CLONE_CHILD_CLEARTID> flag, in the location pointed to by "
+"I<(int\\ **)\\ arg2>. This feature is available only if the kernel is built "
+"with the B<CONFIG_CHECKPOINT_RESTORE> option enabled."
+msgstr ""
+"B<set_tid_address>(2) や B<clone>(2) B<CLONE_CHILD_CLEARTID> フラグで設定され"
+"た I<clear_child_tid> を取得し、 I<(int\\ **)\\ arg2> が指す場所に格納して返"
+"す。 この機能はカーネルが B<CONFIG_CHECKPOINT_RESTORE> オプションを有効にして"
+"作成されている場合にのみ利用できる。"
+
+#. type: TP
+#: build/C/man2/prctl.2:491
+#, no-wrap
+msgid "B<PR_SET_TIMERSLACK> (since Linux 2.6.28)"
+msgstr "B<PR_SET_TIMERSLACK> (Linux 2.6.28 以降)"
+
+#. See https://lwn.net/Articles/369549/
+#. commit 6976675d94042fbd446231d1bd8b7de71a980ada
+#. It seems that it's not possible to set the timer slack to zero;
+#. The minimum value is 1? Seems a little strange.
+#. type: Plain text
+#: build/C/man2/prctl.2:510
+msgid ""
+"Set the current timer slack for the calling thread to the nanosecond value "
+"supplied in I<arg2>. If I<arg2> is less than or equal to zero, reset the "
+"current timer slack to the thread's default timer slack value. The timer "
+"slack is used by the kernel to group timer expirations for the calling "
+"thread that are close to one another; as a consequence, timer expirations "
+"for the thread may be up to the specified number of nanoseconds late (but "
+"will never expire early). Grouping timer expirations can help reduce system "
+"power consumption by minimizing CPU wake-ups."
+msgstr ""
+"呼び出し元スレッドの現在の timer slack を I<arg2> で指定されたナノ秒に設定す"
+"る。 I<arg2> が 0 以下の場合、 現在の timer slack をそのスレッドのデフォルト"
+"の timer slack 値にリセットする。 カーネルは timer slack を使って、 呼び出し"
+"元スレッドのタイマー満了のうち、どのくらい近いものグルーピングする (一纏めに"
+"する) かを決める。 その結果、 そのスレッドのタイマーの満了は最大で指定された"
+"ナノ秒分だけ遅れる場合がある。 タイマー満了をグルーピングすることで、 CPU を"
+"起こす回数が最小化されシステムの消費電力を減らすことができる。"
+
+#. List obtained by grepping for futex usage in glibc source
+#. type: Plain text
+#: build/C/man2/prctl.2:530
+msgid ""
+"The timer expirations affected by timer slack are those set by B<select>(2), "
+"B<pselect>(2), B<poll>(2), B<ppoll>(2), B<epoll_wait>(2), B<epoll_pwait>(2), "
+"B<clock_nanosleep>(2), B<nanosleep>(2), and B<futex>(2) (and thus the "
+"library functions implemented via futexes, including "
+"B<pthread_cond_timedwait>(3), B<pthread_mutex_timedlock>(3), "
+"B<pthread_rwlock_timedrdlock>(3), B<pthread_rwlock_timedwrlock>(3), and "
+"B<sem_timedwait>(3))."
+msgstr ""
+"timer slack の影響を受けるのは、 システムコール B<select>(2), B<pselect>(2), "
+"B<poll>(2), B<ppoll>(2), B<epoll_wait>(2), B<epoll_pwait>(2), "
+"B<clock_nanosleep>(2), B<nanosleep>(2), B<futex>(2) により設定されたタイマー"
+"満了である \n"
+"(また、 futex を使って実装されているライブラリ関数 "
+"B<pthread_cond_timedwait>(3), B<pthread_mutex_timedlock>(3), "
+"B<pthread_rwlock_timedrdlock>(3), B<pthread_rwlock_timedwrlock>(3), "
+"B<sem_timedwait>(3) も影響を受ける)。"
+
+#. type: Plain text
+#: build/C/man2/prctl.2:534
+msgid ""
+"Timer slack is not applied to threads that are scheduled under a real-time "
+"scheduling policy (see B<sched_setscheduler>(2))."
+msgstr ""
+"timer slack はリアルタイムスケジューリングポリシーでスケジューリングされるス"
+"レッドには提供されない (B<sched_setscheduler>(2) 参照)。"
+
+#. type: Plain text
+#: build/C/man2/prctl.2:551
+msgid ""
+"Each thread has two associated timer slack values: a \"default\" value, and "
+"a \"current\" value. The current value is the one that governs grouping of "
+"timer expirations. When a new thread is created, the two timer slack values "
+"are made the same as the current value of the creating thread. Thereafter, "
+"a thread can adjust its current timer slack value via B<PR_SET_TIMERSLACK> "
+"(the default value can't be changed). The timer slack values of I<init> "
+"(PID 1), the ancestor of all processes, are 50,000 nanoseconds (50 "
+"microseconds). The timer slack values are preserved across B<execve>(2)."
+msgstr ""
+"各スレッドには timer slack に関連する値が 2 つある。 「デフォルト値」と「現在"
+"値」である。 現在値はタイマー満了のグルーピングを制御する。 新しいスレッドが"
+"作成される際、 2 つの timer slack 値はそのスレッドを作成したスレッドの現在値"
+"と同じに設定される。 その後、 スレッドは B<PR_SET_TIMERSLACK> で現在の timer "
+"slack 値を調整できる (デフォルト値は変更できない)。 すべてのプロセスの先祖と"
+"なる I<init> (PID 1) の timer slack 値は 50,000 ナノ秒 (50 ミリ秒) である。 "
+"timer slack 値は B<execve>(2) の前後で保持される。"
+
+#. type: TP
+#: build/C/man2/prctl.2:551
+#, no-wrap
+msgid "B<PR_GET_TIMERSLACK> (since Linux 2.6.28)"
+msgstr "B<PR_GET_TIMERSLACK> (Linux 2.6.28 以降)"
+
+#. type: Plain text
+#: build/C/man2/prctl.2:555
+msgid ""
+"Return (as the function result) the current timer slack value of the "
+"calling thread."
+msgstr ""
+"呼び出し元スレッドの現在のタイマーのスラック値を (関数の結果として) 返す。"
+
+#. type: TP
+#: build/C/man2/prctl.2:555
#, no-wrap
msgid "B<PR_SET_TIMING> (since Linux 2.6.0-test4)"
msgstr "B<PR_SET_TIMING> (Linux 2.6.0-test4 以降)"
#. and looking at the patch history, it appears
#. that it never did anything.
#. type: Plain text
-#: build/C/man2/prctl.2:295
-#, fuzzy
-#| msgid ""
-#| "Set whether to use (normal, traditional) statistical process timing or "
-#| "accurate timestamp based process timing, by passing "
-#| "B<PR_TIMING_STATISTICAL> or B<PR_TIMING_TIMESTAMP> to I<arg2>. "
-#| "B<PR_TIMING_TIMESTAMP> is not currently implemented (attempting to set "
-#| "this mode will yield the error B<EINVAL>)."
+#: build/C/man2/prctl.2:572
msgid ""
"Set whether to use (normal, traditional) statistical process timing or "
"accurate timestamp-based process timing, by passing B<PR_TIMING_STATISTICAL> "
"とするとエラー B<EINVAL> が起こることだろう)。"
#. type: TP
-#: build/C/man2/prctl.2:295
+#: build/C/man2/prctl.2:572
#, no-wrap
msgid "B<PR_GET_TIMING> (since Linux 2.6.0-test4)"
msgstr "B<PR_GET_TIMING> (Linux 2.6.0-test4 以降)"
#. type: Plain text
-#: build/C/man2/prctl.2:299
+#: build/C/man2/prctl.2:576
msgid ""
"Return (as the function result) which process timing method is currently in "
"use."
-msgstr "現在使用中のプロセスタイミングを決める方法を返す。"
+msgstr "現在使用中のプロセスタイミングを決める方法を (関数の結果として) 返す。"
#. type: TP
-#: build/C/man2/prctl.2:299
+#: build/C/man2/prctl.2:576
+#, no-wrap
+msgid "B<PR_TASK_PERF_EVENTS_DISABLE> (since Linux 2.6.31)"
+msgstr "B<PR_TASK_PERF_EVENTS_DISABLE> (Linux 2.6.31 以降)"
+
+#. type: Plain text
+#: build/C/man2/prctl.2:585
+msgid ""
+"Disable all performance counters attached to the calling process, regardless "
+"of whether the counters were created by this process or another process. "
+"Performance counters created by the calling process for other processes are "
+"unaffected. For more information on performance counters, see the Linux "
+"kernel source file I<tools/perf/design.txt>."
+msgstr ""
+"呼び出したプロセスに接続されたすべての性能カウンターを無効にする。 カウンター"
+"がこのプロセスにより作成されたか他のプロセスにより作成されたかは関係ない。 呼"
+"び出したプロセスが他のプロセス用に作成した性能カウンターは影響を受けない。 性"
+"能カウンターの詳細については Linux カーネルソースの I<tools/perf/design.txt> "
+"を参照。"
+
+#. commit 1d1c7ddbfab358445a542715551301b7fc363e28
+#. type: Plain text
+#: build/C/man2/prctl.2:591
+msgid ""
+"Originally called B<PR_TASK_PERF_COUNTERS_DISABLE>; renamed (with same "
+"numerical value) in Linux 2.6.32."
+msgstr ""
+"以前は B<PR_TASK_PERF_COUNTERS_DISABLE> と呼ばれていた。 Linux 2.6.32 で名前"
+"が変更された (数値は同じままである)。"
+
+#. type: TP
+#: build/C/man2/prctl.2:591
+#, no-wrap
+msgid "B<PR_TASK_PERF_EVENTS_ENABLE> (since Linux 2.6.31)"
+msgstr "B<PR_TASK_PERF_EVENTS_ENABLE> (Linux 2.6.31 以降)"
+
+#. type: Plain text
+#: build/C/man2/prctl.2:596
+msgid ""
+"The converse of B<PR_TASK_PERF_EVENTS_DISABLE>; enable performance counters "
+"attached to the calling process."
+msgstr ""
+"B<PR_TASK_PERF_EVENTS_DISABLE> の逆。 呼び出したプロセスに接続された性能カウ"
+"ンターを有効にする。"
+
+#. commit 1d1c7ddbfab358445a542715551301b7fc363e28
+#. commit cdd6c482c9ff9c55475ee7392ec8f672eddb7be6
+#. type: Plain text
+#: build/C/man2/prctl.2:603
+msgid ""
+"Originally called B<PR_TASK_PERF_COUNTERS_ENABLE>; renamed in Linux 2.6.32."
+msgstr ""
+"以前は B<PR_TASK_PERF_COUNTERS_ENABLE> と呼ばれていた。 Linux 2.6.32 で名前が"
+"変更された。"
+
+#. type: TP
+#: build/C/man2/prctl.2:603
#, no-wrap
msgid "B<PR_SET_TSC> (since Linux 2.6.26, x86 only)"
msgstr "B<PR_SET_TSC> (Linux 2.6.26 以降, x86 のみ)"
#. type: Plain text
-#: build/C/man2/prctl.2:312
+#: build/C/man2/prctl.2:616
msgid ""
"Set the state of the flag determining whether the timestamp counter can be "
"read by the process. Pass B<PR_TSC_ENABLE> to I<arg2> to allow it to be "
"read, or B<PR_TSC_SIGSEGV> to generate a B<SIGSEGV> when the process tries "
"to read the timestamp counter."
msgstr ""
-"ã\81\9dã\81®ã\83\97ã\83ã\82»ã\82¹ã\81\8cã\82¿ã\82¤ã\83 ã\82¹ã\82¿ã\83³ã\83\97ã\83»ã\82«ã\82¦ã\83³ã\82¿を読み出せるかを決定する フラグの状態を"
+"ã\81\9dã\81®ã\83\97ã\83ã\82»ã\82¹ã\81\8cã\82¿ã\82¤ã\83 ã\82¹ã\82¿ã\83³ã\83\97ã\82«ã\82¦ã\83³ã\82¿ã\83¼を読み出せるかを決定する フラグの状態を"
"設定する。 読み出しを許可する場合は I<arg2> に B<PR_TSC_ENABLE> を、そのプロ"
-"ã\82»ã\82¹ã\81\8cã\82¿ã\82¤ã\83 ã\82¹ã\82¿ã\83³ã\83\97ã\83»ã\82«ã\82¦ã\83³ã\82¿を読み出そうとした際に B<SIGSEGV> を発生させる"
+"ã\82»ã\82¹ã\81\8cã\82¿ã\82¤ã\83 ã\82¹ã\82¿ã\83³ã\83\97ã\82«ã\82¦ã\83³ã\82¿ã\83¼を読み出そうとした際に B<SIGSEGV> を発生させる"
"場合には B<PR_TSC_SIGSEGV> を渡す。"
#. type: TP
-#: build/C/man2/prctl.2:312
+#: build/C/man2/prctl.2:616
#, no-wrap
msgid "B<PR_GET_TSC> (since Linux 2.6.26, x86 only)"
msgstr "B<PR_GET_TSC> (Linux 2.6.26 以降, x86 のみ)"
#. type: Plain text
-#: build/C/man2/prctl.2:318
+#: build/C/man2/prctl.2:622
msgid ""
"Return the state of the flag determining whether the timestamp counter can "
"be read, in the location pointed to by I<(int\\ *) arg2>."
msgstr ""
-"ã\81\9dã\81®ã\83\97ã\83ã\82»ã\82¹ã\81\8cã\82¿ã\82¤ã\83 ã\82¹ã\82¿ã\83³ã\83\97ã\83»ã\82«ã\82¦ã\83³ã\82¿を読み出せるかを決定する フラグの状態"
+"ã\81\9dã\81®ã\83\97ã\83ã\82»ã\82¹ã\81\8cã\82¿ã\82¤ã\83 ã\82¹ã\82¿ã\83³ã\83\97ã\82«ã\82¦ã\83³ã\82¿ã\83¼を読み出せるかを決定する フラグの状態"
"を I<(int\\ *) arg2> が指す場所に格納して返す。"
#. type: TP
-#: build/C/man2/prctl.2:318
+#: build/C/man2/prctl.2:622
#, no-wrap
msgid "B<PR_SET_UNALIGN>"
msgstr "B<PR_SET_UNALIGN>"
#. type: Plain text
-#: build/C/man2/prctl.2:328
+#: build/C/man2/prctl.2:632
msgid ""
"(Only on: ia64, since Linux 2.3.48; parisc, since Linux 2.6.15; PowerPC, "
"since Linux 2.6.18; Alpha, since Linux 2.6.22) Set unaligned access control "
"user access."
msgstr ""
"(ia64 では Linux 2.3.48 以降; parisc では Linux 2.6.15 以降; PowerPC では "
-"Linux 2.6.18 以降; Alpha では Linux 2.6.22 以降; これらのアーキテクチャの"
+"Linux 2.6.18 以é\99\8d; Alpha ã\81§ã\81¯ã\80\80Linux 2.6.22 以é\99\8d; ã\81\93ã\82\8cã\82\89ã\81®ã\82¢ã\83¼ã\82ã\83\86ã\82¯ã\83\81ã\83£ã\83¼ã\81®"
"み) unaligned アクセス制御ビットを I<arg2> で指定された値に設定する。 指定で"
-"ã\81\8dã\82\8bå\80¤ã\81¯ B<PR_UNALIGN_NOPRINT> (unaligned ã\81ªã\83¦ã\83¼ã\82¶ã\82¢ã\82¯ã\82»ã\82¹ã\82\92é»\99ã\81£ã\81¦ ä¿®æ£ã\81\99ã\82\8b) "
-"ã\81\8b B<PR_UNALIGN_SIGBUS> (unaligned ã\81ªã\83¦ã\83¼ã\82¶ã\82¢ã\82¯ã\82»ã\82¹ã\81\8cã\81\82ã\81£ã\81\9få ´å\90\88 B<SIGBUS> ã\82\92"
-"生成する) である。"
+"ã\81\8dã\82\8bå\80¤ã\81¯ B<PR_UNALIGN_NOPRINT> (unaligned ã\81ªã\83¦ã\83¼ã\82¶ã\83¼ã\82¢ã\82¯ã\82»ã\82¹ã\82\92é»\99ã\81£ã\81¦ ä¿®æ£ã\81\99"
+"ã\82\8b) ã\81\8b B<PR_UNALIGN_SIGBUS> (unaligned ã\81ªã\83¦ã\83¼ã\82¶ã\83¼ã\82¢ã\82¯ã\82»ã\82¹ã\81\8cã\81\82ã\81£ã\81\9få ´å\90\88 "
+"B<SIGBUS> を生成する) である。"
#. type: TP
-#: build/C/man2/prctl.2:328
+#: build/C/man2/prctl.2:632
#, no-wrap
msgid "B<PR_GET_UNALIGN>"
msgstr "B<PR_GET_UNALIGN>"
#. type: Plain text
-#: build/C/man2/prctl.2:335
+#: build/C/man2/prctl.2:639
msgid ""
"(see B<PR_SET_UNALIGN> for information on versions and architectures) "
"Return unaligned access control bits, in the location pointed to by I<(int\\ "
"*) arg2>."
msgstr ""
-"(ã\83\90ã\83¼ã\82¸ã\83§ã\83³ã\81¨ã\82¢ã\83¼ã\82ã\83\86ã\82¯ã\83\81ã\83£ã\81®æ\83\85å ±ã\81¯ B<PR_SET_UNALIGN> å\8f\82ç\85§) unaligned ã\82¢ã\82¯ã\82»"
-"ス制御ビットの値を I<(int\\ *) arg2> が指す場所に格納して返す。"
+"(ã\83\90ã\83¼ã\82¸ã\83§ã\83³ã\81¨ã\82¢ã\83¼ã\82ã\83\86ã\82¯ã\83\81ã\83£ã\83¼ã\81®æ\83\85å ±ã\81¯ B<PR_SET_UNALIGN> å\8f\82ç\85§) unaligned ã\82¢ã\82¯"
+"ã\82»ã\82¹å\88¶å¾¡ã\83\93ã\83\83ã\83\88ã\81®å\80¤ã\82\92 I<(int\\ *) arg2> ã\81\8cæ\8c\87ã\81\99å ´æ\89\80ã\81«æ ¼ç´\8dã\81\97ã\81¦è¿\94ã\81\99ã\80\82"
#. type: TP
-#: build/C/man2/prctl.2:335
-#, fuzzy, no-wrap
-#| msgid "B<PR_CAPBSET_READ> (since Linux 2.6.25)"
+#: build/C/man2/prctl.2:639
+#, 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:375
+#: build/C/man2/prctl.2:679
msgid ""
"Set the machine check memory corruption kill policy for the current thread. "
"If I<arg2> is B<PR_MCE_KILL_CLEAR>, clear the thread memory corruption kill "
"(B<PR_MCE_KILL_EARLY>), I<late kill> (B<PR_MCE_KILL_LATE>), or the system-"
"wide default (B<PR_MCE_KILL_DEFAULT>). Early kill means that the thread "
"receives a B<SIGBUS> signal as soon as hardware memory corruption is "
-"detected inside its address space. In late kill mode, the process is only "
-"killed when it accesses a corrupted page. See B<sigaction>(2) for more "
+"detected inside its address space. In late kill mode, the process is killed "
+"only when it accesses a corrupted page. See B<sigaction>(2) for more "
"information on the B<SIGBUS> signal. The policy is inherited by children. "
"The remaining unused B<prctl>() arguments must be zero for future "
"compatibility."
msgstr ""
-
-#. type: TP
-#: build/C/man2/prctl.2:375
-#, fuzzy, no-wrap
-#| msgid "B<PR_CAPBSET_READ> (since Linux 2.6.25)"
+"現在のスレッドの machine check memory corruption kill ポリシーを設定する。 "
+"I<arg2> が B<PR_MCE_KILL_CLEAR> の場合、 このスレッドの memory corruption "
+"kill ポリシーをクリアし、 システム全体のデフォルト値を使用する (システム全体"
+"のデフォルトは I</proc/sys/vm/memory_failure_early_kill> で定義される。 "
+"B<proc>(5) 参照)。 I<arg2> が B<PR_MCE_KILL_SET> の場合、 スレッド固有の "
+"memory corruption kill ポリシーを使用する。 この場合、 I<arg3> によりこのポリ"
+"シーが I<early kill> (B<PR_MCE_KILL_EARLY> か、 I<late kill> "
+"(B<PR_MCE_KILL_LATE>) か、 システム全体のデフォルト値 "
+"(B<PR_MCE_KILL_DEFAULT>) が指定される。 early kill は、 ハードウェアメモリー"
+"破壊 (corruption) がスレッドのアドレス空間内で検出されるとすぐに、 そのスレッ"
+"ドが B<SIGBUS> シグナルを受信することを意味する。 late kill モードでは、 メモ"
+"リー破壊が起こったページにアクセスした場合にのみ、 そのプロセスが kill され"
+"る。 B<SIGBUS> シグナルの詳細は B<sigaction>(2) を参照。 このポリシーは子プロ"
+"セスに継承される。 未使用の残りの B<prctl>() の引き数は将来の互換性のため 0 "
+"にしなければならない。"
+
+#. type: TP
+#: build/C/man2/prctl.2:679
+#, 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:381
+#: build/C/man2/prctl.2:685
msgid ""
"Return the current per-process machine check kill policy. All unused "
"B<prctl>() arguments must be zero."
msgstr ""
+"現在のプロセス単位の machine check kill ポリシーを返す。 未使用の B<prctl>() "
+"の引き数はすべて 0 にしなければならない。"
+
+#. type: TP
+#: build/C/man2/prctl.2:685
+#, no-wrap
+msgid "B<PR_SET_MM> (since Linux 3.3)"
+msgstr "B<PR_SET_MM> (Linux 3.3 以降)"
+
+#. commit 028ee4be34a09a6d48bdf30ab991ae933a7bc036
+#. type: Plain text
+#: build/C/man2/prctl.2:706
+msgid ""
+"Modify certain kernel memory map descriptor fields of the calling process. "
+"Usually these fields are set by the kernel and dynamic loader (see B<ld."
+"so>(8) for more information) and a regular application should not use this "
+"feature. However, there are cases, such as self-modifying programs, where a "
+"program might find it useful to change its own memory map. This feature is "
+"available only if the kernel is built with the B<CONFIG_CHECKPOINT_RESTORE> "
+"option enabled. The calling process must have the B<CAP_SYS_RESOURCE> "
+"capability. The value in I<arg2> is one of the options below, while I<arg3> "
+"provides a new value for the option."
+msgstr ""
+"呼び出したプロセスのカーネルメモリーマップディスクリプターのフィールドを変更"
+"する。 これらのフィールドは通常カーネルと動的リンカーにより設定される (詳しい"
+"情報は B<ld.so> を参照)。 通常のアプリケーションはこの機能を利用すべきではな"
+"い。 しかしながら、自分を書き換えるプログラムなど、 プログラムが自分自身のメ"
+"モリーマップを変更するのが有用な場面もある。 この機能はカーネルが "
+"B<CONFIG_CHECKPOINT_RESTORE> オプションを有効にして作成されている場合にのみ利"
+"用できる。 呼び出したプロセスは B<CAP_SYS_RESOURCE> ケーパビリティを持ってい"
+"なければならない。 I<arg2> の値には以下のいずれかを指定し、 I<arg3> でそのオ"
+"プションの新しい値を指定する。"
+
+#. type: TP
+#: build/C/man2/prctl.2:707
+#, no-wrap
+msgid "B<PR_SET_MM_START_CODE>"
+msgstr "B<PR_SET_MM_START_CODE>"
+
+#. type: Plain text
+#: build/C/man2/prctl.2:716
+msgid ""
+"Set the address above which the program text can run. The corresponding "
+"memory area must be readable and executable, but not writable or sharable "
+"(see B<mprotect>(2) and B<mmap>(2) for more information)."
+msgstr ""
+"プログラムテキストを実行できるアドレスの上限を設定する。 対応するメモリー領域"
+"は読み出し可能で実行可能でなければならないが、 書き込み可能だったり共有可能"
+"だったりしてはならない (詳しい情報は B<mprotect>(2) と B<mmap>(2) 参照)。"
+
+#. type: TP
+#: build/C/man2/prctl.2:716
+#, no-wrap
+msgid "B<PR_SET_MM_END_CODE>"
+msgstr "B<PR_SET_MM_END_CODE>"
#. type: Plain text
-#: build/C/man2/prctl.2:398
+#: build/C/man2/prctl.2:721
+msgid ""
+"Set the address below which the program text can run. The corresponding "
+"memory area must be readable and executable, but not writable or sharable."
+msgstr ""
+"プログラムテキストを実行できるアドレスの下限を設定する。 対応するメモリー領域"
+"は読み出し可能で実行可能でなければならないが、 書き込み可能だったり共有可能"
+"だったりしてはならない。"
+
+#. type: TP
+#: build/C/man2/prctl.2:721
+#, no-wrap
+msgid "B<PR_SET_MM_START_DATA>"
+msgstr "B<PR_SET_MM_START_DATA>"
+
+#. type: Plain text
+#: build/C/man2/prctl.2:727
+msgid ""
+"Set the address above which initialized and uninitialized (bss) data are "
+"placed. The corresponding memory area must be readable and writable, but "
+"not executable or sharable."
+msgstr ""
+"初期化済データや未初期化 (bss) データを配置する領域のアドレス上限を指定す"
+"る。 対応するメモリー領域は読み書き可能でなければならないが、 実行可能だった"
+"り共有可能だったりしてはならない。"
+
+#. type: TP
+#: build/C/man2/prctl.2:727
+#, no-wrap
+msgid "B<PR_SET_MM_END_DATA>"
+msgstr "B<PR_SET_MM_END_DATA>"
+
+#. type: Plain text
+#: build/C/man2/prctl.2:733
+msgid ""
+"Set the address below which initialized and uninitialized (bss) data are "
+"placed. The corresponding memory area must be readable and writable, but "
+"not executable or sharable."
+msgstr ""
+"初期化済データや未初期化 (bss) データを配置する領域のアドレス下限を指定す"
+"る。 対応するメモリー領域は読み書き可能でなければならないが、 実行可能だった"
+"り共有可能だったりしてはならない。"
+
+#. type: TP
+#: build/C/man2/prctl.2:733
+#, no-wrap
+msgid "B<PR_SET_MM_START_STACK>"
+msgstr "B<PR_SET_MM_START_STACK>"
+
+#. type: Plain text
+#: build/C/man2/prctl.2:737
+msgid ""
+"Set the start address of the stack. The corresponding memory area must be "
+"readable and writable."
+msgstr ""
+"スタックの開始アドレスを設定する。 対応するメモリー領域は読み書き可能でなけれ"
+"ばならない。"
+
+#. type: TP
+#: build/C/man2/prctl.2:737
+#, no-wrap
+msgid "B<PR_SET_MM_START_BRK>"
+msgstr "B<PR_SET_MM_START_BRK>"
+
+#. type: Plain text
+#: build/C/man2/prctl.2:749
+msgid ""
+"Set the address above which the program heap can be expanded with B<brk>(2) "
+"call. The address must be greater than the ending address of the current "
+"program data segment. In addition, the combined size of the resulting heap "
+"and the size of the data segment can't exceed the B<RLIMIT_DATA> resource "
+"limit (see B<setrlimit>(2))."
+msgstr ""
+"B<brk>(2) コールで拡張できるプログラムのヒープ領域のアドレス上限を設定する。 "
+"このアドレスは、プログラムの現在のデータセグメントの最終アドレスより大きくな"
+"ければならない。 また、 変更後のヒープとデータセグメントのサイズを合わせたサ"
+"イズが B<RLIMIT_DATA> リソースリミットを超えることはできない "
+"(B<setrlimit>(2) 参照)。"
+
+#. type: TP
+#: build/C/man2/prctl.2:749
+#, no-wrap
+msgid "B<PR_SET_MM_BRK>"
+msgstr "B<PR_SET_MM_BRK>"
+
+#. type: Plain text
+#: build/C/man2/prctl.2:757
+msgid ""
+"Set the current B<brk>(2) value. The requirements for the address are the "
+"same as for the B<PR_SET_MM_START_BRK> option."
+msgstr ""
+"現在の B<brk>(2) 値を設定する。 このアドレスの要件は B<PR_SET_MM_START_BRK> "
+"オプションと同じである。"
+
+#. commit fe8c7f5cbf91124987106faa3bdf0c8b955c4cf7
+#. type: Plain text
+#: build/C/man2/prctl.2:760
+msgid "The following options are available since Linux 3.5."
+msgstr "以下のオプションは Linux 3.5 以降で利用できる。"
+
+#. type: TP
+#: build/C/man2/prctl.2:760
+#, no-wrap
+msgid "B<PR_SET_MM_ARG_START>"
+msgstr "B<PR_SET_MM_ARG_START>"
+
+#. type: Plain text
+#: build/C/man2/prctl.2:763
+msgid "Set the address above which the program command line is placed."
+msgstr "プログラムのコマンドラインを配置するアドレスの上限を設定する。"
+
+#. type: TP
+#: build/C/man2/prctl.2:763
+#, no-wrap
+msgid "B<PR_SET_MM_ARG_END>"
+msgstr "B<PR_SET_MM_ARG_END>"
+
+#. type: Plain text
+#: build/C/man2/prctl.2:766
+msgid "Set the address below which the program command line is placed."
+msgstr "プログラムのコマンドラインを配置するアドレスの下限を設定する。"
+
+#. type: TP
+#: build/C/man2/prctl.2:766
+#, no-wrap
+msgid "B<PR_SET_MM_ENV_START>"
+msgstr "B<PR_SET_MM_ENV_START>"
+
+#. type: Plain text
+#: build/C/man2/prctl.2:769
+msgid "Set the address above which the program environment is placed."
+msgstr ""
+"プログラムの環境情報 (environment) を配置するアドレスの上限を設定する。"
+
+#. type: TP
+#: build/C/man2/prctl.2:769
+#, no-wrap
+msgid "B<PR_SET_MM_ENV_END>"
+msgstr "B<PR_SET_MM_ENV_END>"
+
+#. type: Plain text
+#: build/C/man2/prctl.2:772
+msgid "Set the address below which the program environment is placed."
+msgstr ""
+"プログラムの環境情報 (environment) を配置するアドレスの下限を設定する。"
+
+#. type: Plain text
+#: build/C/man2/prctl.2:785
+msgid ""
+"The address passed with B<PR_SET_MM_ARG_START>, B<PR_SET_MM_ARG_END>, "
+"B<PR_SET_MM_ENV_START>, and B<PR_SET_MM_ENV_END> should belong to a process "
+"stack area. Thus, the corresponding memory area must be readable, writable, "
+"and (depending on the kernel configuration) have the B<MAP_GROWSDOWN> "
+"attribute set (see B<mmap>(2))."
+msgstr ""
+"B<PR_SET_MM_ARG_START>, B<PR_SET_MM_ARG_END>, B<PR_SET_MM_ENV_START>, "
+"B<PR_SET_MM_ENV_END> で指定されるアドレスはプロセスのスタック領域に属している"
+"必要がある。 したがって、これらのメモリー領域は読み書き可能でなければならな"
+"い。 また、 (カーネル設定によっては) B<MAP_GROWSDOWN> 属性がセットされていな"
+"ければならない (B<mmap>(2) 参照)。"
+
+#. type: TP
+#: build/C/man2/prctl.2:785
+#, no-wrap
+msgid "B<PR_SET_MM_AUXV>"
+msgstr "B<PR_SET_MM_AUXV>"
+
+#. type: Plain text
+#: build/C/man2/prctl.2:794
+msgid ""
+"Set a new auxiliary vector. The I<arg3> argument should provide the address "
+"of the vector. The I<arg4> is the size of the vector."
+msgstr ""
+"新しい補助ベクトル (auxiliary vector) を設定する。 I<arg3> 引き数はベクトルの"
+"アドレスを指定し、 I<arg4> はベクトルのサイズを指定する。"
+
+#. type: TP
+#: build/C/man2/prctl.2:794
+#, no-wrap
+msgid "B<PR_SET_MM_EXE_FILE>"
+msgstr "B<PR_SET_MM_EXE_FILE>"
+
+#. commit b32dfe377102ce668775f8b6b1461f7ad428f8b6
+#. type: Plain text
+#: build/C/man2/prctl.2:806
+msgid ""
+"Supersede the I</proc/pid/exe> symbolic link with a new one pointing to a "
+"new executable file identified by the file descriptor provided in I<arg3> "
+"argument. The file descriptor should be obtained with a regular B<open>(2) "
+"call."
+msgstr ""
+"I</proc/pid/exe> シンボリックリンクを I<arg3> 引き数で渡された新しい実行可能"
+"なファイルディスクリプターを指すシンボリックリンクで置き換える。 ファイルディ"
+"スクリプターは通常の B<open>(2) コールで取得すべきである。"
+
+#. type: Plain text
+#: build/C/man2/prctl.2:813
+msgid ""
+"To change the symbolic link, one needs to unmap all existing executable "
+"memory areas, including those created by the kernel itself (for example the "
+"kernel usually creates at least one executable memory area for the ELF I<."
+"text> section)."
+msgstr ""
+"シンボリックリンクを変更するには、 既存の実行可能なメモリー領域のすべてをアン"
+"マップする必要がある。これにはカーネル自身が作成した領域も含まれる (例えば、"
+"カーネルは通常 ELF I<.text> セクションに少なくとも一つの実行可能なメモリー領"
+"域を作成する)。"
+
+#. type: Plain text
+#: build/C/man2/prctl.2:819
+msgid ""
+"The second limitation is that such transitions can be done only once in a "
+"process life time. Any further attempts will be rejected. This should help "
+"system administrators monitor unusual symbolic-link transitions over all "
+"processes running on a system."
+msgstr ""
+"二つ目の制限は、このような変更はプロセスの生存期間で一度だけ行うことができる"
+"という点である。 一度変更を行った後で変更を行おうとすると拒否される。 この動"
+"作は、 システム管理者が、 システムで動作するすべてのプロセスが行う、 普通でな"
+"いシンボリックリンクの変更を監視するのを楽にする。"
+
+#. type: TP
+#: build/C/man2/prctl.2:820
+#, no-wrap
+msgid "B<PR_MPX_ENABLE_MANAGEMENT>, B<PR_MPX_DISABLE_MANAGEMENT> (since Linux 3.19) "
+msgstr "B<PR_MPX_ENABLE_MANAGEMENT>, B<PR_MPX_DISABLE_MANAGEMENT> (Linux 3.19 以降) "
+
+#. commit fe3d197f84319d3bce379a9c0dc17b1f48ad358c
+#. See also http://lwn.net/Articles/582712/
+#. See also https://gcc.gnu.org/wiki/Intel%20MPX%20support%20in%20the%20GCC%20compiler
+#. commit e9d1b4f3c60997fe197bf0243cb4a41a44387a88
+#. type: Plain text
+#: build/C/man2/prctl.2:835
#, fuzzy
#| msgid ""
-#| "On success, B<PR_GET_DUMPABLE>, B<PR_GET_KEEPCAPS>, B<PR_CAPBSET_READ>, "
-#| "B<PR_GET_TIMING>, B<PR_GET_SECUREBITS>, and (if it returns) "
-#| "B<PR_GET_SECCOMP> return the nonnegative values described above. All "
-#| "other I<option> values return 0 on success. On error, -1 is returned, "
-#| "and I<errno> is set appropriately."
-msgid ""
-"On success, B<PR_GET_DUMPABLE>, B<PR_GET_KEEPCAPS>, B<PR_CAPBSET_READ>, "
-"B<PR_GET_TIMING>, B<PR_GET_SECUREBITS>, B<PR_MCE_KILL_GET>, and (if it "
+#| "Enable or disable kernel management of Memory Protection eXtensions "
+#| "(MPX) bounds tables."
+msgid ""
+"Enable or disable kernel management of Memory Protection eXtensions (MPX) "
+"bounds tables. The I<arg2>, I<arg3>, I<arg4>, and I<arg5> arguments must be "
+"zero."
+msgstr ""
+"Memory Protection eXtensions (MPX) の境界テーブル (bounds table) のカーネル管"
+"理の有効化/無効化を行う。"
+
+#. type: Plain text
+#: build/C/man2/prctl.2:848
+msgid ""
+"MPX is a hardware-assisted mechanism for performing bounds checking on "
+"pointers. It consists of a set of registers storing bounds information and "
+"a set of special instruction prefixes that tell the CPU on which "
+"instructions it should do bounds enforcement. There is a limited number of "
+"these registers and when there are more pointers than registers, their "
+"contents must be \"spilled\" into a set of tables. These tables are called "
+"\"bounds tables\" and the MPX B<prctl>() operations control whether the "
+"kernel manages their allocation and freeing."
+msgstr ""
+"MPX は、 ポインターの境界チェックを行うハードウェア支援機構である。 この機能"
+"は、 境界情報を格納するレジスター群と、 境界チェックをどの命令に課すかを CPU "
+"に教えるための特別な命令プレフィックスの集合で構成される。 これらのレジスター"
+"数は限られており、 レジスター数よりも多くのポインターがある場合には、 その内"
+"容をテーブル群に退避する (spilled) 必要がある。 これらのテーブル群は「境界"
+"テーブル (bounds tables)」と呼ばれ、 MPX B<prctl> 命令はカーネルがこれらの割"
+"り当てと解放を行うかどうかを制御する。"
+
+#. type: Plain text
+#: build/C/man2/prctl.2:858
+msgid ""
+"When management is enabled, the kernel will take over allocation and freeing "
+"of the bounds tables. It does this by trapping the #BR exceptions that "
+"result at first use of missing bounds tables and instead of delivering the "
+"exception to user space, it allocates the table and populates the bounds "
+"directory with the location of the new table. For freeing, the kernel "
+"checks to see if bounds tables are present for memory which is not "
+"allocated, and frees them if so."
+msgstr ""
+"管理が有効になっている場合、 カーネルが境界テーブルの割り当てと解放を担当す"
+"る。 最初に存在しない境界テーブルを使おうとした際に上がる #BR 例外を捕捉し、 "
+"ユーザー空間に例外を配送せずに、 テーブルの割り当てを行い、 新しいテーブルに"
+"境界情報 (bounds directory) を書き込む。 解放に関しては、 カーネルが割り当て"
+"られていないメモリーに対応する境界テーブルが存在するかを確認し、 そうであれば"
+"解放を行う。"
+
+#. type: Plain text
+#: build/C/man2/prctl.2:865
+msgid ""
+"Before enabling MPX management using B<PR_MPX_ENABLE_MANAGEMENT>, the "
+"application must first have allocated a user-space buffer for the bounds "
+"directory and placed the location of that directory in the I<bndcfgu> "
+"register."
+msgstr ""
+"B<PR_MPX_ENABLE_MANAGEMENT> を使って MPX 管理を有効にする前に、 アプリケー"
+"ションはまず境界情報管理用のユーザー空間バッファーを割り当て、 その管理情報の"
+"場所を I<bndcfgu> レジスターに設定しなければならない。"
+
+#. type: Plain text
+#: build/C/man2/prctl.2:872
+msgid ""
+"These calls will fail if the CPU or kernel does not support MPX. Kernel "
+"support for MPX is enabled via the B<CONFIG_X86_INTEL_MPX> configuration "
+"option. You can check whether the CPU supports MPX by looking for the 'mpx' "
+"CPUID bit, like with the following command:"
+msgstr ""
+"CPU やカーネルが MPX をサポートしていない場合、 これらの呼び出しは失敗する。 "
+"カーネルによる MPX のサポートは B<CONFIG_X86_INTEL_MPX> 設定オプションで有効"
+"にできる。 CPU が MPX をサポートしているかを確認するには、 以下のように "
+"'mpx' CPUID ビットを見ればよい。"
+
+#. type: Plain text
+#: build/C/man2/prctl.2:874
+msgid " cat /proc/cpuinfo | grep ' mpx '"
+msgstr " cat /proc/cpuinfo | grep ' mpx '"
+
+#. type: Plain text
+#: build/C/man2/prctl.2:877
+msgid ""
+"A thread may not switch in or out of long (64-bit) mode while MPX is enabled."
+msgstr ""
+"MPX が有効になっている間は、 スレッドはロング (64 ビット) モードのオン/オフの"
+"切り替えはできない。"
+
+#. type: Plain text
+#: build/C/man2/prctl.2:879
+msgid "All threads in a process are affected by these calls."
+msgstr "プロセス内のすべてのスレッドがこれらの呼び出しの影響を受ける。"
+
+#. type: Plain text
+#: build/C/man2/prctl.2:888
+msgid ""
+"The child of a B<fork>(2) inherits the state of MPX management. During "
+"B<execve>(2), MPX management is reset to a state as if "
+"B<PR_MPX_DISABLE_MANAGEMENT> had been called."
+msgstr ""
+"B<fork>(2) で作成された子プロセスは MPX 管理の状態を継承する。 B<execve>(2) "
+"の中で、 MPX 管理は B<PR_MPX_DISABLE_MANAGEMENT> が呼ばれた場合と同じ状態がリ"
+"セットされる。"
+
+#. type: Plain text
+#: build/C/man2/prctl.2:892
+msgid ""
+"For further information on Intel MPX, see the kernel source file "
+"I<Documentation/x86/intel_mpx.txt>."
+msgstr ""
+"Intel MPX についての詳しい情報は、カーネルソースファイル I<Documentation/x86/"
+"intel_mpx.txt> を参照。"
+
+#. type: Plain text
+#: build/C/man2/prctl.2:912
+msgid ""
+"On success, B<PR_GET_DUMPABLE>, B<PR_GET_KEEPCAPS>, B<PR_GET_NO_NEW_PRIVS>, "
+"B<PR_GET_THP_DISABLE>, B<PR_CAPBSET_READ>, B<PR_GET_TIMING>, "
+"B<PR_GET_TIMERSLACK>, B<PR_GET_SECUREBITS>, B<PR_MCE_KILL_GET>, and (if it "
"returns) B<PR_GET_SECCOMP> return the nonnegative values described above. "
"All other I<option> values return 0 on success. On error, -1 is returned, "
"and I<errno> is set appropriately."
msgstr ""
-"成功すると、 B<PR_GET_DUMPABLE>, B<PR_GET_KEEPCAPS>, B<PR_CAPBSET_READ>, "
-"B<PR_GET_TIMING>, B<PR_GET_SECUREBITS>, B<PR_GET_SECCOMP> は上述の負でない値"
-"を返す (B<PR_GET_SECCOMP> は返らない場合もある)。 I<option> が他の値の場合は"
-"成功時に 0 を返す。 エラーの場合、-1 を返し、 I<errno> に適切な値を設定する。"
+"成功すると、 B<PR_GET_DUMPABLE>, B<PR_GET_KEEPCAPS>, B<PR_GET_NO_NEW_PRIVS>, "
+"B<PR_GET_THP_DISABLE>, B<PR_CAPBSET_READ>, B<PR_GET_TIMING>, "
+"B<PR_GET_TIMERSLACK>, B<PR_GET_SECUREBITS>, B<PR_MCE_KILL_GET>, "
+"B<PR_GET_SECCOMP> は上述の負でない値を返す (なお、B<PR_GET_SECCOMP> は返らな"
+"い場合もある)。 I<option> が他の値の場合は成功時に 0 を返す。 エラーの場"
+"合、-1 を返し、 I<errno> に適切な値を設定する。"
#. type: Plain text
-#: build/C/man2/prctl.2:403
+#: build/C/man2/prctl.2:917
msgid "I<arg2> is an invalid address."
msgstr "I<arg2> が不正なアドレスである。"
#. type: Plain text
-#: build/C/man2/prctl.2:408
+#: build/C/man2/prctl.2:930
+msgid ""
+"I<option> is B<PR_SET_SECCOMP>, I<arg2> is B<SECCOMP_MODE_FILTER>, the "
+"system was built with B<CONFIG_SECCOMP_FILTER>, and I<arg3> is an invalid "
+"address."
+msgstr ""
+"I<option> が B<PR_SET_SECCOMP> で、 I<arg2> が B<SECCOMP_MODE_FILTER> で、 "
+"カーネルが B<CONFIG_SECCOMP_FILTER> を有効にして作成されており、 I<arg3> が無"
+"効なアドレスである。"
+
+#. type: Plain text
+#: build/C/man2/prctl.2:935
msgid "The value of I<option> is not recognized."
msgstr "I<option> の値が理解できない。"
#. type: Plain text
-#: build/C/man2/prctl.2:418
+#: build/C/man2/prctl.2:947
msgid ""
-"I<option> is B<PR_MCE_KILL> or B<PR_MCE_KILL_GET>, and unused B<prctl>() "
-"arguments were not specified as zero."
+"I<option> is B<PR_MCE_KILL> or B<PR_MCE_KILL_GET> or B<PR_SET_MM>, and "
+"unused B<prctl>() arguments were not specified as zero."
msgstr ""
+"I<option> が B<PR_MCE_KILL>, B<PR_MCE_KILL_GET>, B<PR_SET_MM> のいずれかで、"
+"かつ未使用の B<prctl>() 引き数に 0 が指定されていなかった。"
#. type: Plain text
-#: build/C/man2/prctl.2:423
+#: build/C/man2/prctl.2:952
msgid "I<arg2> is not valid value for this I<option>."
msgstr "I<arg2> が指定された I<option> で有効な値ではない。"
#. type: Plain text
-#: build/C/man2/prctl.2:432
+#: build/C/man2/prctl.2:961
msgid ""
-"I<option> is B<PR_SET_SECCOMP> or B<PR_SET_SECCOMP>, and the kernel was not "
+"I<option> is B<PR_SET_SECCOMP> or B<PR_GET_SECCOMP>, and the kernel was not "
"configured with B<CONFIG_SECCOMP>."
msgstr ""
"I<option> が B<PR_SET_SECCOMP> か B<PR_GET_SECCOMP> だが、カーネルが "
"B<CONFIG_SECCOMP> を有効にして作成されていなかった。"
#. type: Plain text
-#: build/C/man2/prctl.2:444
+#: build/C/man2/prctl.2:971
+msgid ""
+"I<option> is B<PR_SET_SECCOMP>, I<arg2> is B<SECCOMP_MODE_FILTER>, and the "
+"kernel was not configured with B<CONFIG_SECCOMP_FILTER>."
+msgstr ""
+"I<option> が B<PR_SET_SECCOMP> で、 I<arg2> が B<SECCOMP_MODE_FILTER> で、 "
+"カーネルが B<CONFIG_SECCOMP> を有効にして作成されていなかった。"
+
+#. type: Plain text
+#: build/C/man2/prctl.2:977
+msgid "I<option> is B<PR_SET_MM>, and one of the following is true"
+msgstr "I<option> が B<PR_SET_MM> で、以下のいずれかが真である。"
+
+#. type: Plain text
+#: build/C/man2/prctl.2:983
+msgid "I<arg4> or I<arg5> is nonzero;"
+msgstr "I<arg4> が I<arg5> で 0 以外である。"
+
+#. type: Plain text
+#: build/C/man2/prctl.2:988
+msgid ""
+"I<arg3> is greater than B<TASK_SIZE> (the limit on the size of the user "
+"address space for this architecture);"
+msgstr ""
+"I<arg3> が B<TASK_SIZE> よりも大きい (B<TASK_SIZE> はこのアーキテクチャーで"
+"ユーザー空間アドレススペースの最大サイズである)。"
+
+#. type: Plain text
+#: build/C/man2/prctl.2:998
+msgid ""
+"I<arg2> is B<PR_SET_MM_START_CODE>, B<PR_SET_MM_END_CODE>, "
+"B<PR_SET_MM_START_DATA>, B<PR_SET_MM_END_DATA>, or B<PR_SET_MM_START_STACK>, "
+"and the permissions of the corresponding memory area are not as required;"
+msgstr ""
+"I<arg2> が B<PR_SET_MM_START_CODE>, B<PR_SET_MM_END_CODE>, "
+"B<PR_SET_MM_START_DATA>, B<PR_SET_MM_END_DATA>, B<PR_SET_MM_START_STACK> のど"
+"れかで、対応するメモリー領域のアクセス許可が要件を満たしていない。"
+
+#. type: Plain text
+#: build/C/man2/prctl.2:1010
+msgid ""
+"I<arg2> is B<PR_SET_MM_START_BRK> or B<PR_SET_MM_BRK>, and I<arg3> is less "
+"than or equal to the end of the data segment or specifies a value that would "
+"cause the B<RLIMIT_DATA> resource limit to be exceeded."
+msgstr ""
+"I<arg2> が B<PR_SET_MM_START_BRK> か B<PR_SET_MM_BRK> で、 I<arg3> データセグ"
+"メントの末尾と同じかそれより前か、 I<arg3> に B<RLIMIT_DATA> リソースリミット"
+"を超えてしまうような値が指定されている。"
+
+#. type: Plain text
+#: build/C/man2/prctl.2:1021
+msgid ""
+"I<option> is B<PR_SET_PTRACER> and I<arg2> is not 0, B<PR_SET_PTRACER_ANY>, "
+"or the PID of an existing process."
+msgstr ""
+"I<option> が B<PR_SET_PTRACER> で I<arg2> が 0, B<PR_SET_PTRACER_ANY>, 既存プ"
+"ロセスの PID のいずれでもない。"
+
+#. type: Plain text
+#: build/C/man2/prctl.2:1029
+msgid ""
+"I<option> is B<PR_SET_PDEATHSIG> and I<arg2> is not a valid signal number."
+msgstr ""
+"I<option> が B<PR_SET_PDEATHSIG> で、 I<arg2> で指定された値は無効なシグナル"
+"番号である。"
+
+#. type: Plain text
+#: build/C/man2/prctl.2:1040
+msgid ""
+"I<option> is B<PR_SET_DUMPABLE> and I<arg2> is neither B<SUID_DUMP_DISABLE> "
+"nor B<SUID_DUMP_USER>."
+msgstr ""
+"I<option> が B<PR_SET_DUMPABLE> で、 I<arg2> が B<SUID_DUMP_DISABLE> でも "
+"B<SUID_DUMP_USER> でもない。"
+
+#. type: Plain text
+#: build/C/man2/prctl.2:1049
+msgid ""
+"I<option> is B<PR_SET_TIMING> and I<arg2> is not B<PR_TIMING_STATISTICAL>."
+msgstr ""
+"I<option> が B<PR_SET_TIMING> で、 I<arg2> が B<PR_TIMING_STATISTICAL> ではな"
+"い。"
+
+#. type: Plain text
+#: build/C/man2/prctl.2:1063
+msgid ""
+"I<option> is B<PR_SET_NO_NEW_PRIVS> and I<arg2> is not equal to 1 or "
+"I<arg3>, I<arg4>, or I<arg5> is nonzero."
+msgstr ""
+"I<option> が B<PR_SET_NO_NEW_PRIVS> で、 I<arg2> が 1 以外か、 I<arg3>, "
+"I<arg4>, I<arg5> のどれかが 0 ではない。"
+
+#. type: Plain text
+#: build/C/man2/prctl.2:1075
+msgid ""
+"I<option> is B<PR_GET_NO_NEW_PRIVS> and I<arg2>, I<arg3>, I<arg4>, or "
+"I<arg5> is nonzero."
+msgstr ""
+"I<option> が B<PR_GET_NO_NEW_PRIVS> で、 I<arg2>, I<arg3>, I<arg4>, I<arg5> "
+"のどれかが 0 ではない。"
+
+#. type: Plain text
+#: build/C/man2/prctl.2:1086
+msgid ""
+"I<option> is B<PR_SET_THP_DISABLE> and I<arg3>, I<arg4>, or I<arg5> is "
+"nonzero."
+msgstr ""
+"I<option> が B<PR_SET_THP_DISABLE> で I<arg3>, I<arg4>, I<arg5> のどれかが 0 "
+"ではない。"
+
+#. type: Plain text
+#: build/C/man2/prctl.2:1098
+msgid ""
+"I<option> is B<PR_GET_THP_DISABLE> and I<arg2>, I<arg3>, I<arg4>, or I<arg5> "
+"is nonzero."
+msgstr ""
+"I<option> が B<PR_GET_THP_DISABLE> で I<arg2>, I<arg3>, I<arg4>, I<arg5> のい"
+"ずれが 0 ではない。"
+
+#. type: Plain text
+#: build/C/man2/prctl.2:1110
msgid ""
"I<option> is B<PR_SET_SECUREBITS>, and the caller does not have the "
"B<CAP_SETPCAP> capability, or tried to unset a \"locked\" flag, or tried to "
"(B<capabilities>(7) 参照)。"
#. type: Plain text
-#: build/C/man2/prctl.2:454
+#: build/C/man2/prctl.2:1120
msgid ""
"I<option> is B<PR_SET_KEEPCAPS>, and the callers's "
"B<SECURE_KEEP_CAPS_LOCKED> flag is set (see B<capabilities>(7))."
"I<option> が B<PR_SET_KEEPCAPS> で、呼び出し元のフラグ "
"B<SECURE_KEEP_CAPS_LOCKED> がセットされている (B<capabilities>(7) 参照)。"
+#. type: Plain text
+#: build/C/man2/prctl.2:1128
+msgid ""
+"I<option> is B<PR_CAPBSET_DROP>, and the caller does not have the "
+"B<CAP_SETPCAP> capability."
+msgstr ""
+"I<option> が B<PR_CAPBSET_DROP> で、呼び出し元がケーパビリティ "
+"B<CAP_SETPCAP> を持っていない。"
+
+#. type: Plain text
+#: build/C/man2/prctl.2:1136
+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_SET_MM> で、呼び出し元がケーパビリティ B<CAP_SYS_RESOURCE> "
+"を持っていない。"
+
+#. type: TP
+#: build/C/man2/prctl.2:1136
+#, no-wrap
+msgid "B<EACCES>"
+msgstr "B<EACCES>"
+
+#. type: Plain text
+#: build/C/man2/prctl.2:1146
+msgid ""
+"I<option> is B<PR_SET_MM>, and I<arg3> is B<PR_SET_MM_EXE_FILE>, the file is "
+"not executable."
+msgstr ""
+"I<option> が B<PR_SET_MM>、かつ I<arg3> が B<PR_SET_MM_EXE_FILE> で、ファイル"
+"が実行可能ではない。"
+
+#. type: TP
+#: build/C/man2/prctl.2:1146
+#, no-wrap
+msgid "B<EBUSY>"
+msgstr "B<EBUSY>"
+
+#. type: Plain text
+#: build/C/man2/prctl.2:1157
+msgid ""
+"I<option> is B<PR_SET_MM>, I<arg3> is B<PR_SET_MM_EXE_FILE>, and this the "
+"second attempt to change the I</proc/pid/exe> symbolic link, which is "
+"prohibited."
+msgstr ""
+"I<option> が B<PR_SET_MM> で、 I<arg3> が B<PR_SET_MM_EXE_FILE> で、 I</proc/"
+"pid/exe> シンボリックリンクを変更しようとしたが、 禁止されている。"
+
+#. type: TP
+#: build/C/man2/prctl.2:1157 build/C/man2/signalfd.2:266
+#: build/C/man2/timerfd_create.2:345
+#, no-wrap
+msgid "B<EBADF>"
+msgstr "B<EBADF>"
+
#. The following can't actually happen, because prctl() in
#. seccomp mode will cause SIGKILL.
#. .TP
#. .BR PR_SET_SECCOMP ,
#. and secure computing mode is already 1.
#. type: Plain text
-#: build/C/man2/prctl.2:470
+#: build/C/man2/prctl.2:1176
msgid ""
-"I<option> is B<PR_CAPBSET_DROP>, and the caller does not have the "
-"B<CAP_SETPCAP> capability."
+"I<option> is B<PR_SET_MM>, I<arg3> is B<PR_SET_MM_EXE_FILE>, and the file "
+"descriptor passed in I<arg4> is not valid."
msgstr ""
-"I<option> が B<PR_CAPBSET_DROP> で、呼び出し元がケーパビリティ "
-"B<CAP_SETPCAP> を持っていない。"
+"I<option> が B<PR_SET_MM> で、 I<arg3> が B<PR_SET_MM_EXE_FILE> で、 I<arg4> "
+"で渡されたファイルディスクリプターが有効ではない。"
+
+#. type: TP
+#: build/C/man2/prctl.2:1176
+#, no-wrap
+msgid "B<ENXIO>"
+msgstr "B<ENXIO>"
+
+#. type: Plain text
+#: build/C/man2/prctl.2:1185
+msgid ""
+"I<option> was B<PR_MPX_ENABLE_MANAGEMENT> or B<PR_MPX_DISABLE_MANAGEMENT> "
+"and the kernel or the CPU does not support MPX management. Check that the "
+"kernel and processor have MPX support."
+msgstr ""
+"I<option> が B<PR_MPX_ENABLE_MANAGEMENT> か B<PR_MPX_DISABLE_MANAGEMENT> "
+"で、 カーネルか CPU が MPX の管理をサポートしていない。 カーネルとプロセスが "
+"MPX をサポートしているか確認すること。"
#. The library interface was added in glibc 2.0.6
#. type: Plain text
-#: build/C/man2/prctl.2:475
+#: build/C/man2/prctl.2:1190
msgid "The B<prctl>() system call was introduced in Linux 2.1.57."
msgstr "B<prctl>() システムコールは Linux 2.1.57 で導入された。"
#. type: Plain text
-#: build/C/man2/prctl.2:482
+#: build/C/man2/prctl.2:1197
msgid ""
"This call is Linux-specific. IRIX has a B<prctl>() system call (also "
"introduced in Linux 2.1.44 as irix_prctl on the MIPS architecture), with "
"prototype"
msgstr ""
-"ã\81\93ã\81®ã\82³ã\83¼ã\83«ã\81¯ Linux ç\89¹æ\9c\89ã\81§ã\81\82ã\82\8bã\80\82 IRIX ã\81«ã\81¯ B<prctl>() ã\82·ã\82¹ã\83\86ã\83 ã\83»ã\82³ã\83¼ã\83«ã\81\8cã\81\82ã\82\8b"
-"が (MIPS アーキテクチャにおいて irix_prctl として Linux 2.1.44 で同様に導入さ"
+"ã\81\93ã\81®ã\82³ã\83¼ã\83«ã\81¯ Linux ç\89¹æ\9c\89ã\81§ã\81\82ã\82\8bã\80\82 IRIX ã\81«ã\81¯ B<prctl>() ã\82·ã\82¹ã\83\86ã\83 ã\82³ã\83¼ã\83«ã\81\8cã\81\82ã\82\8bã\81\8c "
+"(MIPS アーキテクチャーにおいて irix_prctl として Linux 2.1.44 で同様に導入さ"
"れた)、 そのプロトタイプは"
#. type: Plain text
-#: build/C/man2/prctl.2:484
+#: build/C/man2/prctl.2:1199
msgid "B<ptrdiff_t prctl(int >I<option>B<, int >I<arg2>B<, int >I<arg3>B<);>"
msgstr "B<ptrdiff_t prctl(int >I<option>B<, int >I<arg2>B<, int >I<arg3>B<);>"
#. type: Plain text
-#: build/C/man2/prctl.2:489
+#: build/C/man2/prctl.2:1204
msgid ""
"and options to get the maximum number of processes per user, get the maximum "
"number of processors the calling process can use, find out whether a "
"specified process is currently blocked, get or set the maximum stack size, "
-"etc."
+"and so on."
msgstr ""
"である。ユーザー当りのプロセス最大数を取得するオプション、 プロセスの使用でき"
"る最大プロッサー数を取得するオプション、 現在特定のプロセスが停止(block)させ"
"うオプションなどがある。"
#. type: Plain text
-#: build/C/man2/prctl.2:492
+#: build/C/man2/prctl.2:1207
msgid "B<signal>(2), B<core>(5)"
msgstr "B<signal>(2), B<core>(5)"
msgstr "profil - 実行時間プロファイル (profile)"
#. type: Plain text
-#: build/C/man3/profil.3:36
+#: build/C/man3/profil.3:34
+#, no-wrap
+msgid "B<#include E<lt>unistd.hE<gt>>\n"
+msgstr "B<#include E<lt>unistd.hE<gt>>\n"
+
+#. type: Plain text
+#: build/C/man3/profil.3:37
+#, no-wrap
msgid ""
-"B<int profil(unsigned short *>I<buf>B<, size_t >I<bufsiz>B<, size_t "
-">I<offset>B<, unsigned int >I<scale>B<);>"
+"B<int profil(unsigned short *>I<buf>B<, size_t >I<bufsiz>B<,>\n"
+"B< size_t >I<offset>B<, unsigned int >I<scale>B<);>\n"
msgstr ""
-"B<int profil(unsigned short *>I<buf>B<, size_t >I<bufsiz>B<, size_t "
-">I<offset>B<, unsigned int >I<scale>B<);>"
+"B<int profil(unsigned short *>I<buf>B<, size_t >I<bufsiz>B<,>\n"
+"B< size_t >I<offset>B<, unsigned int >I<scale>B<);>\n"
#. type: Plain text
-#: build/C/man3/profil.3:44
+#: build/C/man3/profil.3:46
msgid ""
"B<profil>(): _BSD_SOURCE || (_XOPEN_SOURCE && _XOPEN_SOURCE\\ E<lt>\\ 500)"
msgstr ""
"B<profil>(): _BSD_SOURCE || (_XOPEN_SOURCE && _XOPEN_SOURCE\\ E<lt>\\ 500)"
#. type: Plain text
-#: build/C/man3/profil.3:66
+#: build/C/man3/profil.3:68
msgid ""
"This routine provides a means to find out in what areas your program spends "
"most of its time. The argument I<buf> points to I<bufsiz> bytes of core. "
"is disabled."
msgstr ""
"このルーティンはプログラムのどこの部分で時間を費やしているかを調べる 手段を提"
-"ä¾\9bã\81\99ã\82\8bã\80\82å¼\95ã\81\8dæ\95° I<buf> ã\81¯ I<bufsiz> ã\83\90ã\82¤ã\83\88ã\81®ã\83¡ã\83¢ã\83ªã\82\92æ\8c\87ã\81\97ã\81¦ã\81\84ã\82\8bã\80\82ä»®æ\83³ã\81® 10 ã\83\9fã\83ª"
-"秒ごとに、ユーザーの プログラム・カウンター (PC) が検査される: I<offset> が引"
+"ä¾\9bã\81\99ã\82\8bã\80\82å¼\95ã\81\8dæ\95° I<buf> ã\81¯ I<bufsiz> ã\83\90ã\82¤ã\83\88ã\81®ã\83¡ã\83¢ã\83ªã\83¼ã\82\92æ\8c\87ã\81\97ã\81¦ã\81\84ã\82\8bã\80\82ä»®æ\83³ã\81® 10 ã\83\9f"
+"リ秒ごとに、ユーザーの プログラムカウンター (PC) が検査される: I<offset> が引"
"かれ、その結果が I<scale> 倍され 65536 で割られる。 結果が I<bufsiz> より小さ"
-"ã\81\84å ´å\90\88ã\81¯ I<buf> ã\81®å¯¾å¿\9cã\81\99ã\82\8bã\82¨ã\83³ã\83\88ã\83ªã\81\8cã\82¤ã\83³ã\82¯ã\83ªã\83¡ã\83³ã\83\88ã\81\95ã\82\8cã\82\8bã\80\82 I<buf> ã\81\8c NULL ã\81ª"
-"らば、プロファイル (profile) は無効にされる。"
+"ã\81\84å ´å\90\88ã\81¯ I<buf> ã\81®å¯¾å¿\9cã\81\99ã\82\8bã\82¨ã\83³ã\83\88ã\83ªã\83¼ã\81\8cã\82¤ã\83³ã\82¯ã\83ªã\83¡ã\83³ã\83\88ã\81\95ã\82\8cã\82\8bã\80\82 I<buf> ã\81\8c NULL "
+"ã\81ªã\82\89ã\81°ã\80\81ã\83\97ã\83ã\83\95ã\82¡ã\82¤ã\83« (profile) ã\81¯ç\84¡å\8a¹ã\81«ã\81\95ã\82\8cã\82\8bã\80\82"
#. type: Plain text
-#: build/C/man3/profil.3:68
+#: build/C/man3/profil.3:70
msgid "Zero is always returned."
msgstr "常に 0 が返される。"
#. type: Plain text
-#: build/C/man3/profil.3:70
+#: build/C/man3/profil.3:72
msgid "Similar to a call in SVr4 (but not POSIX.1-2001)."
msgstr "SVr4 のコールに似ている (しかし POSIX.1-2001 ではない)。"
#. type: Plain text
-#: build/C/man3/profil.3:76
+#: build/C/man3/profil.3:78
msgid ""
"B<profil>() cannot be used on a program that also uses B<ITIMER_PROF> "
"interval timers (see B<setitimer>(2))."
msgstr ""
-"B<profil>() ã\81¯ B<ITIMER_PROF> ã\82¤ã\83³ã\82¿ã\83¼ã\83\90ã\83«ã\83»ã\82¿ã\82¤ã\83\9eã\83¼ã\82\82使ç\94¨ã\81\97ã\81¦ã\81\84ã\82\8bã\83\97ã\83ã\82°ã\83©ã\83 "
-"ã\81§ã\81¯ä½¿ç\94¨ã\81§ã\81\8dã\81ªã\81\84 (B<setitimer>(2) å\8f\82ç\85§)ã\80\82"
+"B<profil>() ã\81¯ B<ITIMER_PROF> ã\82¤ã\83³ã\82¿ã\83¼ã\83\90ã\83«ã\82¿ã\82¤ã\83\9eã\83¼ã\82\82使ç\94¨ã\81\97ã\81¦ã\81\84ã\82\8bã\83\97ã\83ã\82°ã\83©ã\83 ã\81§"
+"は使用できない (B<setitimer>(2) 参照)。"
#. type: Plain text
-#: build/C/man3/profil.3:79
+#: build/C/man3/profil.3:81
msgid ""
"True kernel profiling provides more accurate results. Libc 4.4 contained a "
"kernel patch providing a system call profil."
msgstr ""
-"æ\9c¬å½\93ã\81®ã\82«ã\83¼ã\83\8dã\83«ã\83»ã\83\97ã\83ã\83\95ã\82¡ã\82¤ã\83«ã\81¯ã\82\88ã\82\8aæ£ç¢ºã\81ªçµ\90æ\9e\9cã\82\92ä¸\8eã\81\88ã\82\8bã\80\82 libc 4.4 ã\81«ã\81¯ã\82·ã\82¹ã\83\86ã\83 "
+"本当のカーネルプロファイルはより正確な結果を与える。 libc 4.4 にはシステム"
"コール profil を提供するための カーネルパッチが含まれていた。"
#. type: Plain text
-#: build/C/man3/profil.3:84
-msgid "B<gprof>(1), B<setitimer>(2), B<sigaction>(2), B<signal>(2)"
-msgstr "B<gprof>(1), B<setitimer>(2), B<sigaction>(2), B<signal>(2)"
+#: build/C/man3/profil.3:87
+msgid ""
+"B<gprof>(1), B<sprof>(1), B<setitimer>(2), B<sigaction>(2), B<signal>(2)"
+msgstr ""
+"B<gprof>(1), B<sprof>(1), B<setitimer>(2), B<sigaction>(2), B<signal>(2)"
#. type: TH
-#: build/C/man3/psignal.3:28
+#: build/C/man3/psignal.3:30
#, no-wrap
msgid "PSIGNAL"
msgstr "PSIGNAL"
#. type: TH
-#: build/C/man3/psignal.3:28
-#, fuzzy, no-wrap
-#| msgid "2008-10-06"
+#: build/C/man3/psignal.3:30
+#, 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
-#: build/C/man7/sigevent.7:24
+#: build/C/man3/psignal.3:30 build/C/man3/raise.3:29
+#: build/C/man7/sigevent.7:26
#, no-wrap
msgid "GNU"
msgstr "GNU"
#. type: Plain text
-#: build/C/man3/psignal.3:31
-#, fuzzy
-#| msgid "psignal - print signal message"
+#: build/C/man3/psignal.3:33
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"
+#: build/C/man3/psignal.3:39
+#, 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
+#: build/C/man3/psignal.3:41
#, no-wrap
msgid "B<extern const char *const >I<sys_siglist>B<[];>\n"
msgstr "B<extern const char *const >I<sys_siglist>B<[];>\n"
#. type: Plain text
-#: build/C/man3/psignal.3:48
+#: build/C/man3/psignal.3:50
msgid "B<psignal>(): _SVID_SOURCE || _BSD_SOURCE"
msgstr "B<psignal>(): _SVID_SOURCE || _BSD_SOURCE"
#. type: Plain text
-#: build/C/man3/psignal.3:51
-#, fuzzy
-#| msgid ""
-#| "B<sigwaitinfo>(), B<sigtimedwait>(): _POSIX_C_SOURCE\\ E<gt>=\\ 199309L"
+#: build/C/man3/psignal.3:53
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"
+"B<psiginfo>(): _XOPEN_SOURCE\\ E<gt>=\\ 700 || _POSIX_C_SOURCE\\ E<gt>=\\ "
+"200809L"
#. type: Plain text
-#: build/C/man3/psignal.3:54
+#: build/C/man3/psignal.3:56
msgid "I<sys_siglist>: _BSD_SOURCE"
msgstr "I<sys_siglist>: _BSD_SOURCE"
#. 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."
+#: build/C/man3/psignal.3:65
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>、コロン、スペース、シグナル番号 I<sig> を説"
+"明する文字列、終端の改行から構成されるメッセージを I<stderr> に表示する。 文"
+"字列 I<s> が NULL か空の場合、コロンとスペースは省略される。 I<sig> が不正な"
+"らば、表示される メッセージは未知のシグナルを示す。"
#. type: Plain text
-#: build/C/man3/psignal.3:84
+#: build/C/man3/psignal.3:86
msgid ""
"The B<psiginfo>() function is like B<psignal>(), except that it displays "
"information about the signal described by I<pinfo>, which should point to a "
-"valid I<siginfo_t> structure. As well as the signal description, B<psiginfo>"
-"() displays information about the origin of the signal, and other "
-"information relevant to the signal (e.g., the relevant memory address for "
-"hardware-generated signals, the child process ID for B<SIGCHLD>, and the "
+"valid I<siginfo_t> structure. As well as the signal description, "
+"B<psiginfo>() displays information about the origin of the signal, and "
+"other information relevant to the signal (e.g., the relevant memory address "
+"for hardware-generated signals, the child process ID for B<SIGCHLD>, and the "
"user ID and process ID of the sender, for signals set using B<kill>(2) or "
"B<sigqueue>(3))."
msgstr ""
+"B<psiginfo>() 関数は B<psignal>() と同じだが、 I<pinfo> に書かれたシグナルの"
+"情報を表示する点が異なる。 I<pinfo> は有効な I<siginfo_t> 構造体を指している"
+"必要がある。 B<psiginfo>() は、 シグナルの説明だけでなく、 シグナルの送信元や"
+"そのシグナルに関連するその他の情報も表示する (例えば、ハードウェアが発生した"
+"シグナルの関連メモリーアドレス、 B<SIGCHLD> の子プロセス ID、 I<kill>(2) や "
+"B<sigqueue>(3) を使って送信されたシグナルの送信元プロセスのユーザー ID とプロ"
+"セス ID など)。"
#. type: Plain text
-#: build/C/man3/psignal.3:87
+#: build/C/man3/psignal.3:89
msgid ""
"The array I<sys_siglist> holds the signal description strings indexed by "
"signal number."
"スにはシグナル番号を添え字として用いる事ができる。"
#. type: Plain text
-#: build/C/man3/psignal.3:93
-#, fuzzy
-#| msgid "The B<psignal>() function returns no value."
+#: build/C/man3/psignal.3:95
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."
+#: build/C/man3/psignal.3:99
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
+#: build/C/man3/psignal.3:101
msgid "POSIX.1-2008, 4.3BSD."
msgstr "POSIX.1-2008, 4.3BSD."
#. type: Plain text
-#: build/C/man3/psignal.3:103
+#: build/C/man3/psignal.3:105
msgid "In glibc versions up to 2.12, B<psiginfo>() had the following bugs:"
msgstr ""
+"バージョン 2.12 までの glibc では B<psiginfo>() には以下のバグがあった。"
-#. FIXME http://sourceware.org/bugzilla/show_bug.cgi?id=12107
+#. 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:107
+#: build/C/man3/psignal.3:109
msgid "In some circumstances, a trailing newline is not printed."
-msgstr ""
+msgstr "特定の状況で、末尾の改行が出力されない。"
-#. FIXME http://sourceware.org/bugzilla/show_bug.cgi?id=12108
+#. FIXME . http://sourceware.org/bugzilla/show_bug.cgi?id=12108
#. Reportedly now fixed; check glibc 2.13
#. type: Plain text
-#: build/C/man3/psignal.3:111
+#: build/C/man3/psignal.3:113
msgid "Additional details are not displayed for real-time signals."
+msgstr "リアルタイムシグナルの場合に、追加の詳細情報が表示されない。"
+
+#. type: Plain text
+#: build/C/man3/psignal.3:118
+msgid "B<sigaction>(2), B<perror>(3), B<strsignal>(3), B<signal>(7)"
+msgstr "B<sigaction>(2), B<perror>(3), B<strsignal>(3), B<signal>(7)"
+
+#. type: TH
+#: build/C/man3/raise.3:29
+#, no-wrap
+msgid "RAISE"
+msgstr "RAISE"
+
+#. type: TH
+#: build/C/man3/raise.3:29
+#, no-wrap
+msgid "2014-03-10"
+msgstr "2014-03-10"
+
+#. type: Plain text
+#: build/C/man3/raise.3:32
+msgid "raise - send a signal to the caller"
+msgstr "raise - 呼び出し元にシグナルを送る"
+
+#. type: Plain text
+#: build/C/man3/raise.3:37
+#, no-wrap
+msgid "B<int raise(int >I<sig>B<);>\n"
+msgstr "B<int raise(int >I<sig>B<);>\n"
+
+#. type: Plain text
+#: build/C/man3/raise.3:43
+msgid ""
+"The B<raise>() function sends a signal to the calling process or thread. "
+"In a single-threaded program it is equivalent to"
+msgstr ""
+"B<raise>() 関数は、呼び出し元のプロセスもしくはスレッドにシグナルを送る。 シ"
+"ングルスレッドのプログラムでは、以下と等価である。"
+
+#. type: Plain text
+#: build/C/man3/raise.3:47
+#, no-wrap
+msgid "kill(getpid(), sig);\n"
+msgstr "kill(getpid(), sig);\n"
+
+#. type: Plain text
+#: build/C/man3/raise.3:51
+msgid "In a multithreaded program it is equivalent to"
+msgstr "マルチスレッドのプログラムでは、以下と等価である。"
+
+#. type: Plain text
+#: build/C/man3/raise.3:55
+#, no-wrap
+msgid "pthread_kill(pthread_self(), sig);\n"
+msgstr "pthread_kill(pthread_self(), sig);\n"
+
+#. type: Plain text
+#: build/C/man3/raise.3:61
+msgid ""
+"If the signal causes a handler to be called, B<raise>() will return only "
+"after the signal handler has returned."
+msgstr ""
+"シグナルに起因してシグナルハンドラーが呼び出される場合には、 B<raise>() が返"
+"るのは必ずシグナルハンドラーが返った後になる。"
+
+#. type: Plain text
+#: build/C/man3/raise.3:64
+msgid "B<raise>() returns 0 on success, and nonzero for failure."
+msgstr "成功した場合は 0 を、失敗した場合は 0 以外の値を返す。"
+
+#. type: Plain text
+#: build/C/man3/raise.3:69
+msgid "The B<raise>() function is thread-safe."
+msgstr "B<raise>() 関数はスレッドセーフである。"
+
+#. type: Plain text
+#: build/C/man3/raise.3:71 build/C/man2/signal.2:112
+msgid "C89, C99, POSIX.1-2001."
+msgstr "C89, C99, POSIX.1-2001."
+
+#. 2.3.2 used the obsolete tkill(), if available.
+#. type: Plain text
+#: build/C/man3/raise.3:82
+msgid ""
+"Since version 2.3.3, glibc implements B<raise>() by calling B<tgkill>(2), "
+"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) システムコールをサ"
+"ポートしている場合はB<raise>() は B<tgkill>(2) を使って実装されている。古い"
+"バージョンの glibc では、B<raise>() は B<kill>(2) を使って実装されている。"
+
+#. type: Plain text
+#: build/C/man3/raise.3:89
+msgid ""
+"B<getpid>(2), B<kill>(2), B<sigaction>(2), B<signal>(2), B<pthread_kill>(3), "
+"B<signal>(7)"
msgstr ""
-
-#. 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)"
+"B<getpid>(2), B<kill>(2), B<sigaction>(2), B<signal>(2), B<pthread_kill>(3), "
+"B<signal>(7)"
#. type: TH
-#: build/C/man3/raise.3:27
+#: build/C/man2/restart_syscall.2:33
#, no-wrap
-msgid "RAISE"
-msgstr "RAISE"
+msgid "RESTART_SYSCALL"
+msgstr "RESTART_SYSCALL"
#. type: TH
-#: build/C/man3/raise.3:27 build/C/man2/sigprocmask.2:27
+#: build/C/man2/restart_syscall.2:33 build/C/man2/sgetmask.2:26
+#: build/C/man2/sigreturn.2:30 build/C/man3/sigvec.3:26
+#: build/C/man2/tkill.2:29
#, no-wrap
-msgid "2008-10-17"
-msgstr "2008-10-17"
+msgid "2014-12-31"
+msgstr "2014-12-31"
#. type: Plain text
-#: build/C/man3/raise.3:30
-msgid "raise - send a signal to the caller"
-msgstr "raise - 呼び出し元にシグナルを送る"
+#: build/C/man2/restart_syscall.2:36
+msgid ""
+"restart_syscall - restart a system call after interruption by a stop signal"
+msgstr ""
+"restart_syscall - 一時停止シグナルによる割り込み後にシステムコールを再開する"
#. type: Plain text
-#: build/C/man3/raise.3:35
-#, no-wrap
-msgid "B<int raise(int >I<sig>B<);>\n"
-msgstr "B<int raise(int >I<sig>B<);>\n"
+#: build/C/man2/restart_syscall.2:38
+msgid "B<int restart_syscall(void);>"
+msgstr "B<int restart_syscall(void);>"
#. type: Plain text
-#: build/C/man3/raise.3:41
-msgid ""
-"The B<raise>() function sends a signal to the calling process or thread. "
-"In a single-threaded program it is equivalent to"
+#: build/C/man2/restart_syscall.2:41
+msgid "I<Note>: There is no glibc wrapper for this system call; see NOTES."
msgstr ""
-"B<raise>() 関数は、呼び出し元のプロセスもしくはスレッドにシグナルを送る。 シ"
-"ングルスレッドのプログラムでは、以下と等価である。"
+"I<注>: このシステムコールには、glibc のラッパー関数はない。「注意」の節を参"
+"照。"
#. type: Plain text
-#: build/C/man3/raise.3:45
-#, no-wrap
-msgid "kill(getpid(), sig);\n"
-msgstr "kill(getpid(), sig);\n"
+#: build/C/man2/restart_syscall.2:53
+msgid ""
+"The B<restart_syscall>() system call is used to restart certain system "
+"calls after a process that was stopped by a signal (e.g., B<SIGSTOP> or "
+"B<SIGTSTP>) is later resumed after receiving a B<SIGCONT> signal. This "
+"system call is designed only for internal use by the kernel."
+msgstr ""
+"B<restart_syscall>() システムコールは、 シグナル (B<SIGSTOP> や B<SIGTSTP> な"
+"ど) によって停止されたプロセスが B<SIGCONT> シグナルを受信して再開された後"
+"に、 特定のシステムコールを再開するのに使用される。 このシステムコールはカー"
+"ネル内部での利用のみを想定している。"
+#. These system calls correspond to the special internal errno value
+#. ERESTART_RESTARTBLOCK. Each of the system calls has a "restart"
+#. helper function that is invoked by restart_syscall().
+#. Notable (as at Linux 3.17) is that poll() has such a "restart"
+#. function, but ppoll(), select(), and pselect() do not.
+#. This means that the latter system calls do not take account of the
+#. time spent in the stopped state when restarting.
#. type: Plain text
-#: build/C/man3/raise.3:49
-msgid "In a multithreaded program it is equivalent to"
-msgstr "マルチスレッドのプログラムでは、以下と等価である。"
+#: build/C/man2/restart_syscall.2:88
+msgid ""
+"B<restart_syscall>() is used for restarting only those system calls that, "
+"when restarted, should adjust their time-related parameters\\(emnamely "
+"B<poll>(2) (since Linux 2.6.24), B<nanosleep>(2) (since Linux 2.6), "
+"B<clock_nanosleep>(2) (since Linux 2.6), and B<futex>(2), when employed "
+"with the B<FUTEX_WAIT> (since Linux 2.6.22) and B<FUTEX_WAIT_BITSET> (since "
+"Linux 2.6.31) operations. B<restart_syscall>() restarts the interrupted "
+"system call with a time argument that is suitably adjusted to account for "
+"the time that has already elapsed (including the time where the process was "
+"stopped by a signal). Without the B<restart_syscall>() mechanism, "
+"restarting these system calls would not correctly deduct the already elapsed "
+"time when the process continued execution."
+msgstr ""
+"B<restart_syscall>() は、 再開時に時刻関連のパラメーターを調整する必要がある"
+"システムコールを再開させる場合にのみ使用される。 概要するシステムコールは "
+"B<poll>(2) (Linux 2.6.24 以降)、 B<nanosleep>(2) (Linux 2.6 以降)、 "
+"B<clock_nanosleep>(2) (Linux 2.6 以降)、 B<FUTEX_WAIT> (Linux 2.6.22 以降) "
+"や B<FUTEX_WAIT_BITSET> (Linux 2.6.31 以降) 操作を利用した場合の B<futex>(2) "
+"である。 B<restart_syscall>() は、 中断されたシステムコールを、 経過した時間 "
+"(プロセスがシグナルにより停止されていた時間も含む) を考慮に入れて適切に調整し"
+"た時刻引き数で再開する。 B<restart_syscall>() の仕組みがないと、 これらのシス"
+"テムコールの再開で、 プロセスが実行を継続する際にすでに経過した時間を正しく減"
+"算できない。"
#. type: Plain text
-#: build/C/man3/raise.3:53
-#, no-wrap
-msgid "pthread_kill(pthread_self(), sig);\n"
-msgstr "pthread_kill(pthread_self(), sig);\n"
+#: build/C/man2/restart_syscall.2:92
+msgid ""
+"The return value of B<restart_syscall>() is the return value of whatever "
+"system call is being restarted."
+msgstr ""
+"B<restart_syscall>() の返り値は、 再開中のシステムコールの返り値となる。"
#. type: Plain text
-#: build/C/man3/raise.3:59
+#: build/C/man2/restart_syscall.2:96
msgid ""
-"If the signal causes a handler to be called, B<raise>() will only return "
-"after the signal handler has returned."
+"I<errno> is set as per the errors for whatever system call is being "
+"restarted by B<restart_syscall>()."
msgstr ""
-"シグナルに起因してシグナル・ハンドラが呼び出される場合には、 B<raise>() が返"
-"ã\82\8bã\81®ã\81¯å¿\85ã\81\9aã\82·ã\82°ã\83\8aã\83«ã\83»ã\83\8fã\83³ã\83\89ã\83©ã\81\8cè¿\94ã\81£ã\81\9få¾\8cã\81«ã\81ªる。"
+"I<errno> は B<restart_syscall>() が再開しているシステムコールのエラーに基づい"
+"ã\81¦è¨å®\9aã\81\95ã\82\8cる。"
#. type: Plain text
-#: build/C/man3/raise.3:62
-msgid "B<raise>() returns 0 on success, and nonzero for failure."
-msgstr "成功した場合は 0 を、失敗した場合は 0 以外の値を返す。"
+#: build/C/man2/restart_syscall.2:100
+msgid "The B<restart_syscall>() system call is present since Linux 2.6."
+msgstr "B<restart_syscall>() システムコールは Linux 2.6 以降に存在する。"
#. type: Plain text
-#: build/C/man3/raise.3:64 build/C/man2/signal.2:107
-msgid "C89, C99, POSIX.1-2001."
-msgstr "C89, C99, POSIX.1-2001."
+#: build/C/man2/restart_syscall.2:102
+msgid "This system call is Linux-specific."
+msgstr "このシステムコールは Linux 固有である。"
#. type: Plain text
-#: build/C/man3/raise.3:71
+#: build/C/man2/restart_syscall.2:106
msgid ""
-"B<getpid>(2), B<kill>(2), B<sigaction>(2), B<signal>(2), B<pthread_kill>(3), "
-"B<signal>(7)"
+"There is no glibc wrapper for this system call, because it is intended for "
+"use only by the kernel and should never be called by applications."
msgstr ""
-"B<getpid>(2), B<kill>(2), B<sigaction>(2), B<signal>(2), B<pthread_kill>(3), "
-"B<signal>(7)"
+"このシステムコールには glibc のラッパー関数はない。 それはカーネルによる利用"
+"だけが想定されており、 アプリケーションは決してこのシステムコールを呼び出すべ"
+"きではない。"
+
+#. type: Plain text
+#: build/C/man2/restart_syscall.2:128
+msgid ""
+"The kernel uses B<restart_syscall>() to ensure that when a system call is "
+"restarted after a process has been stopped by a signal and then resumed by "
+"B<SIGCONT>, then the time that the process spent in the stopped state is "
+"counted against the timeout interval specified in the original system call. "
+"In the case of system calls that take a timeout argument and automatically "
+"restart after a stop signal plus B<SIGCONT>, but which do not have the "
+"B<restart_syscall>() mechanism built in, then, after the process resumes "
+"execution, the time that the process spent in the stop state is I<not> "
+"counted against the timeout value. Notable examples of system calls that "
+"suffer this problem are B<ppoll>(2), B<select>(2), and B<pselect>(2)."
+msgstr ""
+"カーネルは B<restart_syscall>() を使用することで、 シグナルにより停止されたプ"
+"ロセスが B<SIGCONT> により再開された後にシステムコールが再開される際に、 元の"
+"システムコールに指定されたタイムアウト時間の計算に、 プロセスが停止中に経過し"
+"た時間が含まれることを保証する。 タイムアウト引き数を取り、停止シグナルの後"
+"に B<SIGCONT> があった場合自動的に再開するシステムコールだが、 そのシステム"
+"コールに B<restart_syscall>() の仕組みが組込まれていない場合には、 プロセスの"
+"実行が再開された後、 停止中にプロセスが消費した時間はタイムアウト値としてカウ"
+"ント「されない」。 この問題を持つ有名なシステムコールとしては B<ppoll>(2), "
+"B<select>(2), B<pselect>(2) がある。"
+
+#
+#. type: Plain text
+#: build/C/man2/restart_syscall.2:135
+msgid ""
+"From user space, the operation of B<restart_syscall>() is largely "
+"invisible: to the process that made the system call that is restarted, it "
+"appears as though that system call executed and returned in the usual "
+"fashion."
+msgstr ""
+"ユーザー空間からは B<restart_syscall>() の動作はほとんど見えない。 再開された"
+"システムコールを呼び出したプロセスには、 そのシステムコールが通常通り実行され"
+"返ったように見える。"
+
+#. FIXME . ppoll(2), select(2), and pselect(2)
+#. should probably get the restart_syscall() treatment:
+#. If a select() call is suspended by stop-sig+SIGCONT, the time
+#. spent suspended is *not* deducted when the select() is restarted.
+#. FIXME . check whether recvmmsg() handles stop-sig+SIGCONT properly.
+#. type: Plain text
+#: build/C/man2/restart_syscall.2:144
+msgid "B<sigaction>(2), B<sigreturn>(2), B<signal>(7)"
+msgstr "B<sigaction>(2), B<sigreturn>(2), B<signal>(7)"
#. type: TH
-#: build/C/man2/rt_sigqueueinfo.2:23
+#: build/C/man2/rt_sigqueueinfo.2:25
#, no-wrap
msgid "RT_SIGQUEUEINFO"
msgstr "RT_SIGQUEUEINFO"
#. type: TH
-#: build/C/man2/rt_sigqueueinfo.2:23 build/C/man7/signal.7:44
-#: build/C/man3/sigqueue.3:26 build/C/man2/tkill.2:29
+#: build/C/man2/rt_sigqueueinfo.2:25
#, no-wrap
-msgid "2011-09-18"
-msgstr "2011-09-18"
+msgid "2012-07-13"
+msgstr "2012-07-13"
#. type: Plain text
-#: build/C/man2/rt_sigqueueinfo.2:26
+#: build/C/man2/rt_sigqueueinfo.2:28
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
+#: build/C/man2/rt_sigqueueinfo.2:31
#, no-wrap
msgid "B<int rt_sigqueueinfo(pid_t >I<tgid>B<, int >I<sig>B<, siginfo_t *>I<uinfo>B<);>\n"
msgstr "B<int rt_sigqueueinfo(pid_t >I<tgid>B<, int >I<sig>B<, siginfo_t *>I<uinfo>B<);>\n"
#. type: Plain text
-#: build/C/man2/rt_sigqueueinfo.2:32
+#: build/C/man2/rt_sigqueueinfo.2:34
#, no-wrap
msgid ""
"B<int rt_tgsigqueueinfo(pid_t >I<tgid>B<, pid_t >I<tid>B<, int >I<sig>B<,>\n"
"B< siginfo_t *>I<uinfo>B<);>\n"
#. type: Plain text
-#: build/C/man2/rt_sigqueueinfo.2:45
+#: build/C/man2/rt_sigqueueinfo.2:38 build/C/man2/sgetmask.2:36
+#: build/C/man2/tkill.2:41
+msgid "I<Note>: There are no glibc wrappers for these system calls; see NOTES."
+msgstr ""
+"I<注>: これらのシステムコールには、glibc のラッパー関数はない。「注意」の節を"
+"参照。"
+
+#. type: Plain text
+#: build/C/man2/rt_sigqueueinfo.2:50
msgid ""
"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."
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
+#: build/C/man2/rt_sigqueueinfo.2:56
msgid ""
"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)."
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
+#: build/C/man2/rt_sigqueueinfo.2:68
msgid ""
"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 "
"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
+#: build/C/man2/rt_sigqueueinfo.2:79
msgid ""
"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:"
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
-#: build/C/man2/wait.2:315
+#: build/C/man2/rt_sigqueueinfo.2:79 build/C/man7/sigevent.7:88
+#: build/C/man2/wait.2:316
#, no-wrap
msgid "I<si_code>"
msgstr "I<si_code>"
#. tkill(2) or
#. type: Plain text
-#: build/C/man2/rt_sigqueueinfo.2:90
+#: build/C/man2/rt_sigqueueinfo.2:95
msgid ""
-"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))."
+"This must be one of the B<SI_*> codes in the Linux 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))."
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
+#: build/C/man2/rt_sigqueueinfo.2:95 build/C/man2/wait.2:295
#, no-wrap
msgid "I<si_pid>"
msgstr "I<si_pid>"
#. type: Plain text
-#: build/C/man2/rt_sigqueueinfo.2:94
+#: build/C/man2/rt_sigqueueinfo.2:99
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
+#: build/C/man2/rt_sigqueueinfo.2:99 build/C/man2/wait.2:298
#, no-wrap
msgid "I<si_uid>"
msgstr "I<si_uid>"
#. type: Plain text
-#: build/C/man2/rt_sigqueueinfo.2:98
+#: build/C/man2/rt_sigqueueinfo.2:103
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
+#: build/C/man2/rt_sigqueueinfo.2:103 build/C/man7/sigevent.7:96
#, no-wrap
msgid "I<si_value>"
msgstr "I<si_value>"
#. type: Plain text
-#: build/C/man2/rt_sigqueueinfo.2:105
+#: build/C/man2/rt_sigqueueinfo.2:110
msgid ""
"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)."
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
+#: build/C/man2/rt_sigqueueinfo.2:117
msgid ""
"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."
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
+#: build/C/man2/rt_sigqueueinfo.2:129
msgid ""
-"The B<rt_tgsigueueinfo>() system call is like B<rt_sigueueinfo>(), but "
+"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
+#: build/C/man2/rt_sigqueueinfo.2:134
msgid ""
"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
-#: build/C/man2/sigwaitinfo.2:108 build/C/man2/timer_create.2:174
+#: build/C/man2/rt_sigqueueinfo.2:135 build/C/man3/sigqueue.3:92
+#: build/C/man2/sigwaitinfo.2:115 build/C/man2/timer_create.2:178
#, no-wrap
msgid "B<EAGAIN>"
msgstr "B<EAGAIN>"
#. type: Plain text
-#: build/C/man2/rt_sigqueueinfo.2:136 build/C/man3/sigqueue.3:96
+#: build/C/man2/rt_sigqueueinfo.2:141 build/C/man3/sigqueue.3:98
msgid ""
-"The limit of signals which may be queued has been reached. (See B<signal>"
-"(7) for further information.)"
+"The limit of signals which may be queued has been reached. (See "
+"B<signal>(7) for further information.)"
msgstr ""
"待ち行列に入れられるシグナルの最大数に達した (より詳しい情報は B<signal>(7) "
"を参照すること)。"
#. type: Plain text
-#: build/C/man2/rt_sigqueueinfo.2:143
+#: build/C/man2/rt_sigqueueinfo.2:148
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
+#: build/C/man2/rt_sigqueueinfo.2:156
msgid ""
"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."
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
-msgid "B<rt_sigqueinfo>(): No thread group matching I<tgid> was found."
-msgstr "B<rt_sigqueinfo>(): No thread group matching I<tgid> was found."
+#: build/C/man2/rt_sigqueueinfo.2:162
+msgid "B<rt_sigqueueinfo>(): No thread group matching I<tgid> was found."
+msgstr ""
#. type: Plain text
-#: build/C/man2/rt_sigqueueinfo.2:164
-msgid "B<rt_rtsigqueinfo>(): No thread matching I<tgid> and I<tid> was found."
-msgstr "B<rt_rtsigqueinfo>(): No thread matching I<tgid> and I<tid> was found."
+#: build/C/man2/rt_sigqueueinfo.2:169
+msgid "B<rt_tgsigqueinfo>(): No thread matching I<tgid> and I<tid> was found."
+msgstr ""
#. type: Plain text
-#: build/C/man2/rt_sigqueueinfo.2:171
+#: build/C/man2/rt_sigqueueinfo.2:176
msgid ""
"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
-#: build/C/man2/timerfd_create.2:372
+#: build/C/man2/rt_sigqueueinfo.2:178 build/C/man2/sgetmask.2:75
+#: build/C/man2/timerfd_create.2:380
msgid "These system calls are Linux-specific."
msgstr "これらのシステムコールは Linux 固有である。"
#. type: Plain text
-#: build/C/man2/rt_sigqueueinfo.2:178
+#: build/C/man2/rt_sigqueueinfo.2:183
msgid ""
"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."
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."
+"これらのシステムコールはアプリケーションでの使用を目的として用意されたわけで"
+"はないので、 glibc のラッパー関数は存在しない。おそらくないと思うが、このシス"
+"テムコールを直接呼び出したい場合は B<syscall>(2) を使うこと。"
#. type: Plain text
-#: build/C/man2/rt_sigqueueinfo.2:183
+#: build/C/man2/rt_sigqueueinfo.2:188
msgid ""
"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
+#: build/C/man2/rt_sigqueueinfo.2:196
msgid ""
"B<kill>(2), B<sigaction>(2), B<sigprocmask>(2), B<tgkill>(2), "
"B<pthread_sigqueue>(3), B<sigqueue>(3), B<signal>(7)"
"B<pthread_sigqueue>(3), B<sigqueue>(3), B<signal>(7)"
#. type: TH
-#: build/C/man2/sgetmask.2:24
+#: build/C/man2/s390_runtime_instr.2:25
#, no-wrap
-msgid "SGETMASK"
-msgstr "SGETMASK"
+msgid "S390_RUNTIME_INSTR"
+msgstr ""
+
+#. type: TH
+#: build/C/man2/s390_runtime_instr.2:25
+#, no-wrap
+msgid "2012-12-17"
+msgstr "2012-12-17"
+
+#. type: Plain text
+#: build/C/man2/s390_runtime_instr.2:28
+msgid "s390_runtime_instr - enable/disable s390 CPU run-time instrumentation"
+msgstr ""
+
+#. type: Plain text
+#: build/C/man2/s390_runtime_instr.2:31
+#, no-wrap
+msgid "B<#include E<lt>asm/runtime_instr.hE<gt>>\n"
+msgstr "B<#include E<lt>asm/runtime_instr.hE<gt>>\n"
+
+#. type: Plain text
+#: build/C/man2/s390_runtime_instr.2:33
+#, no-wrap
+msgid "B<int s390_runtime_instr(int >I<command>B<, int >I<signum>B<);>\n"
+msgstr "B<int s390_runtime_instr(int >I<command>B<, int >I<signum>B<);>\n"
+
+#. type: Plain text
+#: build/C/man2/s390_runtime_instr.2:39
+msgid ""
+"The B<s390_runtime_instr>() system call starts or stops CPU run-time "
+"instrumentation for the calling thread."
+msgstr ""
+
+#. type: Plain text
+#: build/C/man2/s390_runtime_instr.2:47
+msgid ""
+"The I<command> argument controls whether run-time instrumentation is started "
+"(B<S390_RUNTIME_INSTR_START>, 1) or stopped (B<S390_RUNTIME_INSTR_STOP>, 2) "
+"for the calling thread."
+msgstr ""
+
+#. type: Plain text
+#: build/C/man2/s390_runtime_instr.2:54
+msgid ""
+"The I<signum> argument specifies the number of a real-time signal. The real-"
+"time signal is sent to the thread if the run-time instrumentation buffer is "
+"full or if the run-time-instrumentation-halted interrupt occurred."
+msgstr ""
+
+#. type: Plain text
+#: build/C/man2/s390_runtime_instr.2:65
+msgid ""
+"On success, B<s390_runtime_instr>() returns 0 and enables the thread for "
+"run-time instrumentation by assigning the thread a default run-time "
+"instrumentation control block. The caller can then read and modify the "
+"control block and start the run-time instrumentation. On error, -1 is "
+"returned and I<errno> is set to one of the error codes listed below."
+msgstr ""
+
+#. type: Plain text
+#: build/C/man2/s390_runtime_instr.2:73
+msgid ""
+"The value specified in I<command> is not a valid command or the value "
+"specified in I<signum> is not a real-time signal number."
+msgstr ""
+
+#. type: Plain text
+#: build/C/man2/s390_runtime_instr.2:76
+msgid ""
+"Allocating memory for the run-time instrumentation control block failed."
+msgstr ""
+
+#. type: TP
+#: build/C/man2/s390_runtime_instr.2:76
+#, no-wrap
+msgid "B<EOPNOTSUPP>"
+msgstr ""
+
+#. type: Plain text
+#: build/C/man2/s390_runtime_instr.2:79
+msgid "The run-time instrumentation facility is not available."
+msgstr ""
+
+#. type: Plain text
+#: build/C/man2/s390_runtime_instr.2:81
+msgid "This system call is available since Linux 3.7."
+msgstr "このシステムコールは Linux 3.7 で初めて登場した。"
+
+#. type: Plain text
+#: build/C/man2/s390_runtime_instr.2:84
+msgid ""
+"This Linux-specific system call is available only on the s390 architecture. "
+"The run-time instrumentation facility is available beginning with System z "
+"EC12."
+msgstr ""
+
+#. type: Plain text
+#: build/C/man2/s390_runtime_instr.2:88
+msgid ""
+"Glibc does not provide a wrapper for this system call, use B<syscall>(2) to "
+"call it."
+msgstr ""
+"glibc はこのシステムコールに対するラッパー関数を提供していない。 "
+"B<syscall>(2) を使用すること。"
+
+#. type: Plain text
+#: build/C/man2/s390_runtime_instr.2:91
+msgid "B<syscall>(2), B<signal>(7)"
+msgstr "B<syscall>(2), B<signal>(7)"
#. type: TH
-#: build/C/man2/sgetmask.2:24
+#: build/C/man2/sgetmask.2:26
#, no-wrap
-msgid "2007-07-05"
-msgstr "2007-07-05"
+msgid "SGETMASK"
+msgstr "SGETMASK"
#. type: Plain text
-#: build/C/man2/sgetmask.2:27
+#: build/C/man2/sgetmask.2:29
msgid "sgetmask, ssetmask - manipulation of signal mask (obsolete)"
msgstr "sgetmask, ssetmask - シグナルマスクの操作 (廃止予定)"
#. type: Plain text
-#: build/C/man2/sgetmask.2:29
+#: build/C/man2/sgetmask.2:31
msgid "B<long sgetmask(void);>"
msgstr "B<long sgetmask(void);>"
#. type: Plain text
-#: build/C/man2/sgetmask.2:31
+#: build/C/man2/sgetmask.2:33
msgid "B<long ssetmask(long >I<newmask>B<);>"
msgstr "B<long ssetmask(long >I<newmask>B<);>"
#. type: Plain text
-#: build/C/man2/sgetmask.2:37
+#: build/C/man2/sgetmask.2:42
msgid ""
"These system calls are obsolete. I<Do not use them>; use B<sigprocmask>(2) "
"instead."
"B<sigprocmask>(2) を使用すること。"
#. type: Plain text
-#: build/C/man2/sgetmask.2:40
+#: build/C/man2/sgetmask.2:45
msgid "B<sgetmask>() returns the signal mask of the calling process."
msgstr "B<sgetmask>() は、呼び出し元プロセスのシグナルマスクを返す。"
#. type: Plain text
-#: build/C/man2/sgetmask.2:45
+#: build/C/man2/sgetmask.2:50
msgid ""
"B<ssetmask>() sets the signal mask of the calling process to the value "
"given in I<newmask>. The previous signal mask is returned."
"た値に設定し、変更前のシグナルマスクを返す。"
#. type: Plain text
-#: build/C/man2/sgetmask.2:54
+#: build/C/man2/sgetmask.2:59
msgid ""
"The signal masks dealt with by these two system calls are plain bit masks "
"(unlike the I<sigset_t> used by B<sigprocmask>(2)); use B<sigmask>(3) to "
"スクを作成したり検査するには B<sigmask>(3) を使用すること。"
#. type: Plain text
-#: build/C/man2/sgetmask.2:59
+#: build/C/man2/sgetmask.2:64
msgid ""
"B<sgetmask>() always successfully returns the signal mask. B<ssetmask>() "
"always succeeds, and returns the previous signal mask."
"し、直前のシグナルマスクを返す。"
#. type: Plain text
-#: build/C/man2/sgetmask.2:61
+#: build/C/man2/sgetmask.2:66
msgid "These system calls always succeed."
msgstr "これらのシステムコールは常に成功する。"
+#. f6187769dae48234f3877df3c4d99294cc2254fa
#. type: Plain text
-#: build/C/man2/sgetmask.2:66
+#: build/C/man2/sgetmask.2:73
msgid ""
-"Glibc does not provide wrappers for these system calls; use B<syscall>(2)."
+"Since Linux 3.16, support for these system calls is optional, depending on "
+"whether the kernel was built with the B<CONFIG_SGETMASK_SYSCALL> option."
msgstr ""
-"glibc はこれらのシステムコールに対するラッパー関数を提供していない。 "
-"B<syscall>(2) を使用すること。"
+"Linux 3.16 以降では、これらのシステムコールのサポートは任意となり、利用できる"
+"かはカーネルが B<CONFIG_SGETMASK_SYSCALL> オプションを有効にしてコンパイルさ"
+"れているかに依存する。"
+
+#. type: Plain text
+#: build/C/man2/sgetmask.2:79
+msgid ""
+"Glibc does not provide wrappers for these obsolete system calls; in the "
+"unlikely event that you want to call them, use B<syscall>(2)."
+msgstr ""
+"glibc はこれらの古いシステムコールに対するラッパー関数を提供していない。 あま"
+"りないと思うが、これらを呼び出したい場合には B<syscall>(2) を使うこと。"
#. type: Plain text
-#: build/C/man2/sgetmask.2:69
+#: build/C/man2/sgetmask.2:82
msgid ""
"These system calls are unaware of signal numbers greater than 31 (i.e., real-"
"time signals)."
"グナル) を扱えない。"
#. type: Plain text
-#: build/C/man2/sgetmask.2:74
+#: build/C/man2/sgetmask.2:84
+msgid "These system calls do not exist on x86-64."
+msgstr "これらのシステムコールは x86-64 には存在しない。"
+
+#. type: Plain text
+#: build/C/man2/sgetmask.2:89
msgid "It is not possible to block B<SIGSTOP> or B<SIGKILL>."
msgstr "B<SIGSTOP> や B<SIGKILL> をブロックすることはできない。"
#. type: Plain text
-#: build/C/man2/sgetmask.2:77
+#: build/C/man2/sgetmask.2:92
msgid "B<sigprocmask>(2), B<signal>(7)"
msgstr "B<sigprocmask>(2), B<signal>(7)"
#. type: TH
-#: build/C/man2/sigaction.2:45
+#: build/C/man2/sigaction.2:49
#, no-wrap
msgid "SIGACTION"
msgstr "SIGACTION"
#. type: TH
-#: build/C/man2/sigaction.2:45
-#, fuzzy, no-wrap
-#| msgid "2011-09-09"
-msgid "2011-09-08"
-msgstr "2011-09-09"
+#: build/C/man2/sigaction.2:49
+#, no-wrap
+msgid "2015-01-22"
+msgstr "2015-01-22"
#. type: Plain text
-#: build/C/man2/sigaction.2:48
+#: build/C/man2/sigaction.2:52
msgid "sigaction - examine and change a signal action"
msgstr "sigaction - シグナルの動作の確認と変更"
#. type: Plain text
-#: build/C/man2/sigaction.2:54
+#: build/C/man2/sigaction.2:58
#, no-wrap
msgid ""
"B<int sigaction(int >I<signum>B<, const struct sigaction *>I<act>B<,>\n"
"B< struct sigaction *>I<oldact>B<);>\n"
#. type: Plain text
-#: build/C/man2/sigaction.2:64
+#: build/C/man2/sigaction.2:68
msgid ""
"B<sigaction>(): _POSIX_C_SOURCE\\ E<gt>=\\ 1 || _XOPEN_SOURCE || "
"_POSIX_SOURCE"
"_POSIX_SOURCE"
#. type: Plain text
-#: build/C/man2/sigaction.2:73
+#: build/C/man2/sigaction.2:71
+msgid "I<siginfo_t>: _POSIX_C_SOURCE E<gt>= 199309L"
+msgstr "I<siginfo_t>: _POSIX_C_SOURCE E<gt>= 199309L"
+
+#. type: Plain text
+#: build/C/man2/sigaction.2:80
msgid ""
"The B<sigaction>() system call is used to change the action taken by a "
"process on receipt of a specific signal. (See B<signal>(7) for an overview "
"を変更するのに使用される (シグナルの概要については B<signal>(7) を参照)。"
#. type: Plain text
-#: build/C/man2/sigaction.2:79
+#: build/C/man2/sigaction.2:86
msgid ""
"I<signum> specifies the signal and can be any valid signal except B<SIGKILL> "
"and B<SIGSTOP>."
"できる。"
#. type: Plain text
-#: build/C/man2/sigaction.2:90
+#: build/C/man2/sigaction.2:97
msgid ""
"If I<act> is non-NULL, the new action for signal I<signum> is installed from "
"I<act>. If I<oldact> is non-NULL, the previous action is saved in I<oldact>."
"に格納される。"
#. type: Plain text
-#: build/C/man2/sigaction.2:94
+#: build/C/man2/sigaction.2:101
msgid "The I<sigaction> structure is defined as something like:"
msgstr "I<sigaction> 構造体は以下のような感じに定義される。"
#. type: Plain text
-#: build/C/man2/sigaction.2:104
+#: build/C/man2/sigaction.2:111
#, no-wrap
msgid ""
"struct sigaction {\n"
"};\n"
#. type: Plain text
-#: build/C/man2/sigaction.2:111
+#: build/C/man2/sigaction.2:118
msgid ""
"On some architectures a union is involved: do not assign to both "
"I<sa_handler> and I<sa_sigaction>."
msgstr ""
-"アーキテクチャによっては共用体 (union) が用いられており、その場合には "
+"ã\82¢ã\83¼ã\82ã\83\86ã\82¯ã\83\81ã\83£ã\83¼ã\81«ã\82\88ã\81£ã\81¦ã\81¯å\85±ç\94¨ä½\93 (union) ã\81\8cç\94¨ã\81\84ã\82\89ã\82\8cã\81¦ã\81\8aã\82\8aã\80\81ã\81\9dã\81®å ´å\90\88ã\81«ã\81¯ "
"I<sa_handler> と I<sa_sigaction> の両方を同時に割り当てることはできない。"
#. type: Plain text
-#: build/C/man2/sigaction.2:118
+#: build/C/man2/sigaction.2:127
msgid ""
-"The I<sa_restorer> element is obsolete and should not be used. POSIX does "
-"not specify a I<sa_restorer> element."
+"The I<sa_restorer> field is not intended for application use. (POSIX does "
+"not specify a I<sa_restorer> field.) Some further details of purpose of "
+"this field can be found in B<sigreturn>(2)."
msgstr ""
-"I<sa_restorer> 要素は廃止予定であり使用すべきではない。 POSIX には "
-"I<sa_restorer> 要素に関する規定はない。"
+"I<sa_restorer> はアプリケーションが使用することを意図したフィールドではない "
+"(POSIX は I<sa_restorer> フィールドを規定していない)。 このフィールドの詳細な"
+"目的については B<sigreturn>(2) に書かれている。"
#. type: Plain text
-#: build/C/man2/sigaction.2:128
+#: build/C/man2/sigaction.2:137
msgid ""
"I<sa_handler> specifies the action to be associated with I<signum> and may "
"be B<SIG_DFL> for the default action, B<SIG_IGN> to ignore this signal, or a "
"number as its only argument."
msgstr ""
"I<sa_handler> は I<signum> に対応する動作を指定するもので、 デフォルトの動作"
-"を行う B<SIG_DFL>、 そのシグナルを無視する B<SIG_IGN>、 シグナルハンドラ関数"
-"へのポインタが設定できる。 シグナルハンドラ関数の引き数は一つであり、シグナル"
-"番号が引き数として 渡される。"
+"を行う B<SIG_DFL>、 そのシグナルを無視する B<SIG_IGN>、 シグナルハンドラー関"
+"数へのポインターが設定できる。 シグナルハンドラー関数の引き数は一つであり、シ"
+"グナル番号が引き数として 渡される。"
#. 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."
+#: build/C/man2/sigaction.2:159
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. (Commonly, the handler function "
-"doesn't make any use of the third argument. See B<getcontext>(2) for "
+"doesn't make any use of the third argument. See B<getcontext>(3) 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> ではなく) "
+"I<sa_sigaction> により I<signum> に対応するシグナルハンドラー関数が指定され"
+"る。指定される関数は、最初の引き数としてシグナル番号を、二番目の引き数として "
+"I<siginfo_t> へのポインターを、三番目の引き数として (I<void\\ *> にキャストし"
+"た) I<ucontext_t> へのポインターを受けとる。 (一般的には、ハンドラー関数の三"
+"番目の引き数が使用されない。I<ucontext_t> についての詳しい情報は "
+"B<getcontext>(3) を参照。)"
#. type: Plain text
-#: build/C/man2/sigaction.2:160
+#: build/C/man2/sigaction.2:169
msgid ""
"I<sa_mask> specifies a mask of signals which should be blocked (i.e., added "
"to the signal mask of the thread in which the signal handler is invoked) "
"during execution of the signal handler. In addition, the signal which "
"triggered the handler will be blocked, unless the B<SA_NODEFER> flag is used."
msgstr ""
-"I<sa_mask> ã\81¯ã\80\81ã\82·ã\82°ã\83\8aã\83«ã\83»ã\83\8fã\83³ã\83\89ã\83©実行中に禁止 (block) すべきシグナルのマスク"
-"を指定する (ハンドラ実行中のシグナルの禁止は、シグナル・ハンドラが起動された"
-"スレッド のシグナルのマスクに追加することで行われる)。 さらに、 "
-"B<SA_NODEFER> ã\83\95ã\83©ã\82°ã\81\8cæ\8c\87å®\9aã\81\95ã\82\8cã\81¦ã\81\84ã\81ªã\81\84å ´å\90\88ã\81¯ã\80\81ã\83\8fã\83³ã\83\89ã\83©ã\82\92èµ·å\8b\95ã\81\99ã\82\8bã\81\8dã\81£ã\81\8bã\81\91ã\81¨ã\81ª"
-"る シグナルにも I<sa_mask> が適用される。"
+"I<sa_mask> ã\81¯ã\80\81ã\82·ã\82°ã\83\8aã\83«ã\83\8fã\83³ã\83\89ã\83©ã\83¼実行中に禁止 (block) すべきシグナルのマスク"
+"を指定する (ハンドラー実行中のシグナルの禁止は、シグナルハンドラーが起動され"
+"ã\81\9fã\82¹ã\83¬ã\83\83ã\83\89 ã\81®ã\82·ã\82°ã\83\8aã\83«ã\81®ã\83\9eã\82¹ã\82¯ã\81«è¿½å\8a ã\81\99ã\82\8bã\81\93ã\81¨ã\81§è¡\8cã\82\8fã\82\8cã\82\8b)ã\80\82 ã\81\95ã\82\89ã\81«ã\80\81 "
+"B<SA_NODEFER> ã\83\95ã\83©ã\82°ã\81\8cæ\8c\87å®\9aã\81\95ã\82\8cã\81¦ã\81\84ã\81ªã\81\84å ´å\90\88ã\81¯ã\80\81ã\83\8fã\83³ã\83\89ã\83©ã\83¼ã\82\92èµ·å\8b\95ã\81\99ã\82\8bã\81\8dã\81£ã\81\8bã\81\91ã\81¨"
+"ã\81ªã\82\8b ã\82·ã\82°ã\83\8aã\83«ã\81«ã\82\82 I<sa_mask> ã\81\8cé\81©ç\94¨ã\81\95ã\82\8cã\82\8bã\80\82"
#. type: Plain text
-#: build/C/man2/sigaction.2:164
+#: build/C/man2/sigaction.2:173
msgid ""
"I<sa_flags> specifies a set of flags which modify the behavior of the "
"signal. It is formed by the bitwise OR of zero or more of the following:"
msgstr ""
-"I<sa_flags> ã\81¯ã\82·ã\82°ã\83\8aã\83«ã\83»ã\83\8fã\83³ã\83\89ã\83©の動作を変更するためのフラグの集合を指定す"
+"I<sa_flags> ã\81¯ã\82·ã\82°ã\83\8aã\83«ã\83\8fã\83³ã\83\89ã\83©ã\83¼の動作を変更するためのフラグの集合を指定す"
"る。 I<sa_flags> には、以下に示すフラグの (0 個以上の) 論理和をとったものを指"
"定する。"
#. type: TP
-#: build/C/man2/sigaction.2:165
+#: build/C/man2/sigaction.2:174
#, no-wrap
msgid "B<SA_NOCLDSTOP>"
msgstr "B<SA_NOCLDSTOP>"
#. type: Plain text
-#: build/C/man2/sigaction.2:182
+#: build/C/man2/sigaction.2:191
msgid ""
"If I<signum> is B<SIGCHLD>, do not receive notification when child processes "
-"stop (i.e., when they receive one of B<SIGSTOP>, B<SIGTSTP>, B<SIGTTIN> or "
+"stop (i.e., when they receive one of B<SIGSTOP>, B<SIGTSTP>, B<SIGTTIN>, or "
"B<SIGTTOU>) or resume (i.e., they receive B<SIGCONT>) (see B<wait>(2)). "
-"This flag is only meaningful when establishing a handler for B<SIGCHLD>."
+"This flag is meaningful only when establishing a handler for B<SIGCHLD>."
msgstr ""
"I<signum> が B<SIGCHLD> の場合、 子プロセスが停止したり (子プロセスが "
"B<SIGSTOP>, B<SIGTSTP>, B<SIGTTIN>, B<SIGTTOU> を受けたとき) 再開したり (子プ"
"ロセスが B<SIGCONT> を受けたとき) したときに B<SIGCHLD> の通知を受けない。 こ"
-"のフラグは、 B<SIGCHLD> に対してハンドラを設定する際にのみ意味を持つ。"
+"ã\81®ã\83\95ã\83©ã\82°ã\81¯ã\80\81 B<SIGCHLD> ã\81«å¯¾ã\81\97ã\81¦ã\83\8fã\83³ã\83\89ã\83©ã\83¼ã\82\92è¨å®\9aã\81\99ã\82\8bé\9a\9bã\81«ã\81®ã\81¿æ\84\8få\91³ã\82\92æ\8c\81ã\81¤ã\80\82"
#. type: TP
-#: build/C/man2/sigaction.2:182
-#, fuzzy, no-wrap
-#| msgid "B<SA_NOCLDWAIT> (Since Linux 2.6)"
+#: build/C/man2/sigaction.2:191
+#, no-wrap
msgid "B<SA_NOCLDWAIT> (since Linux 2.6)"
msgstr "B<SA_NOCLDWAIT> (Linux 2.6 以降)"
#. To be precise: Linux 2.5.60 -- MTK
#. type: Plain text
-#: build/C/man2/sigaction.2:196
+#: build/C/man2/sigaction.2:205
msgid ""
"If I<signum> is B<SIGCHLD>, do not transform children into zombies when they "
-"terminate. See also B<waitpid>(2). This flag is only meaningful when "
+"terminate. See also B<waitpid>(2). This flag is meaningful only when "
"establishing a handler for B<SIGCHLD>, or when setting that signal's "
"disposition to B<SIG_DFL>."
msgstr ""
"(Linux 2.6 以降) I<signum> が B<SIGCHLD> の場合、子プロセスが終了したときに "
"子プロセスをゾンビプロセスに変化させない (B<waitpid>(2) も参照)。 このフラグ"
-"ã\81¯ã\80\81 B<SIGCHLD> ã\81«å¯¾ã\81\97ã\81¦ã\83\8fã\83³ã\83\89ã\83©ã\82\92è¨å®\9aã\81\99ã\82\8bé\9a\9bã\80\81ã\82\82ã\81\97ã\81\8fã\81¯ã\81\9dã\81®ã\82·ã\82°ã\83\8aã\83«ã\81®å\87¦ç\90\86æ\96¹æ³\95"
-"を B<SIG_DFL> に設定する際にのみ意味を持つ。"
+"ã\81¯ã\80\81 B<SIGCHLD> ã\81«å¯¾ã\81\97ã\81¦ã\83\8fã\83³ã\83\89ã\83©ã\83¼ã\82\92è¨å®\9aã\81\99ã\82\8bé\9a\9bã\80\81ã\82\82ã\81\97ã\81\8fã\81¯ã\81\9dã\81®ã\82·ã\82°ã\83\8aã\83«ã\81®å\87¦ç\90\86æ\96¹"
+"法を B<SIG_DFL> に設定する際にのみ意味を持つ。"
#. type: Plain text
-#: build/C/man2/sigaction.2:208
+#: build/C/man2/sigaction.2:217
msgid ""
"If the B<SA_NOCLDWAIT> flag is set when establishing a handler for "
"B<SIGCHLD>, POSIX.1 leaves it unspecified whether a B<SIGCHLD> signal is "
"generated when a child process terminates. On Linux, a B<SIGCHLD> signal is "
"generated in this case; on some other implementations, it is not."
msgstr ""
-"B<SIGCHLD> ã\81«å¯¾ã\81\97ã\81¦ã\83\8fã\83³ã\83\89ã\83©ã\82\92è¨å®\9aã\81\99ã\82\8bé\9a\9bã\81« B<SA_NOCLDWAIT> ã\83\95ã\83©ã\82°ã\82\92ã\82»ã\83\83ã\83\88ã\81\97ã\81\9f"
-"場合、 子プロセスが終了した際に B<SIGCHLD> シグナルが生成されるかどうかは、 "
-"POSIX.1 では規定されていない。 Linux では、この状況で B<SIGCHLD> シグナルは生"
-"成される。 いくつかの他の実装では生成されない。"
+"B<SIGCHLD> ã\81«å¯¾ã\81\97ã\81¦ã\83\8fã\83³ã\83\89ã\83©ã\83¼ã\82\92è¨å®\9aã\81\99ã\82\8bé\9a\9bã\81« B<SA_NOCLDWAIT> ã\83\95ã\83©ã\82°ã\82\92ã\82»ã\83\83ã\83\88ã\81\97"
+"た場合、 子プロセスが終了した際に B<SIGCHLD> シグナルが生成されるかどうか"
+"は、 POSIX.1 では規定されていない。 Linux では、この状況で B<SIGCHLD> シグナ"
+"ルは生成される。 いくつかの他の実装では生成されない。"
#. type: TP
-#: build/C/man2/sigaction.2:208
+#: build/C/man2/sigaction.2:217
#, no-wrap
msgid "B<SA_NODEFER>"
msgstr "B<SA_NODEFER>"
#. type: Plain text
-#: build/C/man2/sigaction.2:215
+#: build/C/man2/sigaction.2:224
msgid ""
"Do not prevent the signal from being received from within its own signal "
-"handler. This flag is only meaningful when establishing a signal handler. "
+"handler. This flag is meaningful only when establishing a signal handler. "
"B<SA_NOMASK> is an obsolete, nonstandard synonym for this flag."
msgstr ""
-"ã\81\9dã\82\8cè\87ªèº«ã\81®ã\82·ã\82°ã\83\8aã\83«ã\83»ã\83\8fã\83³ã\83\89ã\83©ã\83¼ã\81®å\86\85é\83¨ã\81«ã\81\84ã\82\8bæ\99\82ã\81§ã\82\82 ã\81\9dã\81®ã\82·ã\82°ã\83\8aã\83«ã\82\92ã\83\9eã\82¹ã\82¯ã\81\97ã\81ªã\81\84ã\82\88"
-"ã\81\86ã\81«ã\81\99ã\82\8bã\80\82 ã\81\93ã\81®ã\83\95ã\83©ã\82°ã\81¯ã\82·ã\82°ã\83\8aã\83«ã\83\8fã\83³ã\83\89ã\83©を設定する際にのみ意味を持つ。 "
+"ã\81\9dã\82\8cè\87ªèº«ã\81®ã\82·ã\82°ã\83\8aã\83«ã\83\8fã\83³ã\83\89ã\83©ã\83¼ã\81®å\86\85é\83¨ã\81«ã\81\84ã\82\8bæ\99\82ã\81§ã\82\82 ã\81\9dã\81®ã\82·ã\82°ã\83\8aã\83«ã\82\92ã\83\9eã\82¹ã\82¯ã\81\97ã\81ªã\81\84ã\82\88ã\81\86"
+"ã\81«ã\81\99ã\82\8bã\80\82 ã\81\93ã\81®ã\83\95ã\83©ã\82°ã\81¯ã\82·ã\82°ã\83\8aã\83«ã\83\8fã\83³ã\83\89ã\83©ã\83¼を設定する際にのみ意味を持つ。 "
"B<SA_NOMASK> はこのフラグと同じ意味だが、廃止されており、非標準である。"
#. type: TP
-#: build/C/man2/sigaction.2:215
+#: build/C/man2/sigaction.2:224
#, no-wrap
msgid "B<SA_ONSTACK>"
msgstr "B<SA_ONSTACK>"
#. type: Plain text
-#: build/C/man2/sigaction.2:221
+#: build/C/man2/sigaction.2:230
msgid ""
"Call the signal handler on an alternate signal stack provided by "
"B<sigaltstack>(2). If an alternate stack is not available, the default "
-"stack will be used. This flag is only meaningful when establishing a signal "
+"stack will be used. This flag is meaningful only when establishing a signal "
"handler."
msgstr ""
-"B<sigaltstack>(2) ã\81§æ\8f\90ä¾\9bã\81\95ã\82\8cã\82\8bå\88¥ã\81®ã\82·ã\82°ã\83\8aã\83«ã\83»ã\82¹ã\82¿ã\83\83ã\82¯ã\81§ã\82·ã\82°ã\83\8aã\83«ã\83\8fã\83³ã\83\89ã\83©を呼び"
-"å\87ºã\81\99ã\80\82 å\88¥ã\81®ã\82·ã\82°ã\83\8aã\83«ã\83»ã\82¹ã\82¿ã\83\83ã\82¯ã\81\8cå\88©ç\94¨å\8f¯è\83½ã\81§ã\81ªã\81\91ã\82\8cã\81°ã\80\81ã\83\87ã\83\95ã\82©ã\83«ã\83\88ã\81®ã\82¹ã\82¿ã\83\83ã\82¯ã\81\8c 使"
-"用される。 このフラグはシグナルハンドラを設定する際にのみ意味を持つ。"
+"B<sigaltstack>(2) ã\81§æ\8f\90ä¾\9bã\81\95ã\82\8cã\82\8bå\88¥ã\81®ã\82·ã\82°ã\83\8aã\83«ã\82¹ã\82¿ã\83\83ã\82¯ã\81§ã\82·ã\82°ã\83\8aã\83«ã\83\8fã\83³ã\83\89ã\83©ã\83¼を呼び"
+"å\87ºã\81\99ã\80\82 å\88¥ã\81®ã\82·ã\82°ã\83\8aã\83«ã\82¹ã\82¿ã\83\83ã\82¯ã\81\8cå\88©ç\94¨å\8f¯è\83½ã\81§ã\81ªã\81\91ã\82\8cã\81°ã\80\81ã\83\87ã\83\95ã\82©ã\83«ã\83\88ã\81®ã\82¹ã\82¿ã\83\83ã\82¯ã\81\8c 使ç\94¨"
+"される。 このフラグはシグナルハンドラーを設定する際にのみ意味を持つ。"
#. type: TP
-#: build/C/man2/sigaction.2:221
+#: build/C/man2/sigaction.2:230
#, no-wrap
msgid "B<SA_RESETHAND>"
msgstr "B<SA_RESETHAND>"
#. type: Plain text
-#: build/C/man2/sigaction.2:228
+#: build/C/man2/sigaction.2:236
msgid ""
-"Restore the signal action to the default state once the signal handler has "
-"been called. This flag is only meaningful when establishing a signal "
-"handler. B<SA_ONESHOT> is an obsolete, nonstandard synonym for this flag."
+"Restore the signal action to the default upon entry to the signal handler. "
+"This flag is meaningful only when establishing a signal handler. "
+"B<SA_ONESHOT> is an obsolete, nonstandard synonym for this flag."
msgstr ""
-"ã\82·ã\82°ã\83\8aã\83«ã\83\8fã\83³ã\83\89ã\83©ã\81\8cå\91¼ã\81°ã\82\8cã\82\8b度ã\81«ã\80\81ã\82·ã\82°ã\83\8aã\83«ã\81®å\8b\95ä½\9cã\82\92ã\83\87ã\83\95ã\82©ã\83«ã\83\88ã\81«æ\88»ã\81\99ã\80\82 ã\81\93ã\81®ã\83\95ã\83©ã\82°"
-"ã\81¯ã\82·ã\82°ã\83\8aã\83«ã\83\8fã\83³ã\83\89ã\83©ã\82\92è¨å®\9aã\81\99ã\82\8bé\9a\9bã\81«ã\81®ã\81¿æ\84\8få\91³ã\82\92æ\8c\81ã\81¤ã\80\82 B<SA_ONESHOT> ã\81¯ã\81\93ã\81®ã\83\95ã\83©ã\82°ã\81¨"
-"同じ意味だが、廃止されており、非標準である。"
+"ã\82·ã\82°ã\83\8aã\83«ã\83\8fã\83³ã\83\89ã\83©ã\83¼ã\82\92è¨å®\9aã\81\99ã\82\8bé\9a\9bã\81«ã\80\81ã\82·ã\82°ã\83\8aã\83«ã\81®å\8b\95ä½\9cã\82\92ã\83\87ã\83\95ã\82©ã\83«ã\83\88ã\81«æ\88»ã\81\99ã\80\82 ã\81\93ã\81®ã\83\95ã\83©"
+"ã\82°ã\81¯ã\82·ã\82°ã\83\8aã\83«ã\83\8fã\83³ã\83\89ã\83©ã\83¼ã\82\92è¨å®\9aã\81\99ã\82\8bé\9a\9bã\81«ã\81®ã\81¿æ\84\8få\91³ã\82\92æ\8c\81ã\81¤ã\80\82 B<SA_ONESHOT> ã\81¯ã\81\93ã\81®ã\83\95ã\83©"
+"グと同じ意味だが、廃止されており、非標準である。"
#. type: TP
-#: build/C/man2/sigaction.2:228
+#: build/C/man2/sigaction.2:236
#, no-wrap
msgid "B<SA_RESTART>"
msgstr "B<SA_RESTART>"
#. type: Plain text
-#: build/C/man2/sigaction.2:236
+#: build/C/man2/sigaction.2:244
msgid ""
"Provide behavior compatible with BSD signal semantics by making certain "
-"system calls restartable across signals. This flag is only meaningful when "
+"system calls restartable across signals. This flag is meaningful only when "
"establishing a signal handler. See B<signal>(7) for a discussion of system "
"call restarting."
msgstr ""
"いくつかのシステムコールをシグナルの通知の前後で再開できるようにして、 BSD シ"
"グナル方式 (semantics) と互換性のある動作を提供する。 このフラグはシグナルハ"
-"ã\83³ã\83\89ã\83©ã\82\92è¨å®\9aã\81\99ã\82\8bé\9a\9bã\81«ã\81®ã\81¿æ\84\8få\91³ã\82\92æ\8c\81ã\81¤ã\80\82 B<signal>(7) ã\81«æ\9b¸ã\81\8bã\82\8cã\81¦ã\81\84ã\82\8bã\82·ã\82¹ã\83\86ã\83 ã\82³ã\83¼"
-"ルの再開に関する議論を参照のこと。"
+"ã\83³ã\83\89ã\83©ã\83¼ã\82\92è¨å®\9aã\81\99ã\82\8bé\9a\9bã\81«ã\81®ã\81¿æ\84\8få\91³ã\82\92æ\8c\81ã\81¤ã\80\82 B<signal>(7) ã\81«æ\9b¸ã\81\8bã\82\8cã\81¦ã\81\84ã\82\8bã\82·ã\82¹ã\83\86ã\83 "
+"ã\82³ã\83¼ã\83«ã\81®å\86\8dé\96\8bã\81«é\96¢ã\81\99ã\82\8bè°è«\96ã\82\92å\8f\82ç\85§ã\81®ã\81\93ã\81¨ã\80\82"
#. type: TP
-#: build/C/man2/sigaction.2:236
+#: build/C/man2/sigaction.2:244
+#, no-wrap
+msgid "B<SA_RESTORER>"
+msgstr "B<SA_RESTORER>"
+
+#. type: Plain text
+#: build/C/man2/sigaction.2:253
+msgid ""
+"I<Not intended for application use>. This flag is used by C libraries to "
+"indicate that the I<sa_restorer> field contains the address of a \"signal "
+"trampoline\". See B<sigreturn>(2) for more details."
+msgstr ""
+"I<アプリケーションでの使用を意図したものではない>。 このフラグは C ライブラリ"
+"が I<sa_restorer> フィールドに \"signal trampoline\" のアドレスが入っているこ"
+"とを示すために使用される。 詳細は B<sigreturn>(2) を参照。"
+
+#. type: TP
+#: build/C/man2/sigaction.2:253
#, no-wrap
msgid "B<SA_SIGINFO> (since Linux 2.2)"
msgstr "B<SA_SIGINFO> (Linux 2.2 以降)"
#. .I sa_sigaction
#. field was added in Linux 2.1.86.)
#. type: Plain text
-#: build/C/man2/sigaction.2:247
+#: build/C/man2/sigaction.2:264
msgid ""
-"The signal handler takes 3 arguments, not one. In this case, "
-"I<sa_sigaction> should be set instead of I<sa_handler>. This flag is only "
-"meaningful when establishing a signal handler."
+"The signal handler takes three arguments, not one. In this case, "
+"I<sa_sigaction> should be set instead of I<sa_handler>. This flag is "
+"meaningful only when establishing a signal handler."
msgstr ""
-"ã\82·ã\82°ã\83\8aã\83«ã\83\8fã\83³ã\83\89ã\83©ã\81¯ä¸\80ã\81¤ã\81§ã\81¯ã\81ªã\81\8fã\80\81ä¸\89ã\81¤ã\81®å¼\95ã\81\8dæ\95°ã\82\92æ\8c\81ã\81¤ã\80\82ã\81\93ã\81®å ´å\90\88ã\81¯ I<sa_handler> "
-"のかわりに I<sa_sigaction> を設定しなければならない このフラグはシグナルハン"
-"ã\83\89ã\83©を設定する際にのみ意味を持つ。"
+"ã\82·ã\82°ã\83\8aã\83«ã\83\8fã\83³ã\83\89ã\83©ã\83¼ã\81¯ä¸\80ã\81¤ã\81§ã\81¯ã\81ªã\81\8fã\80\81ä¸\89ã\81¤ã\81®å¼\95ã\81\8dæ\95°ã\82\92æ\8c\81ã\81¤ã\80\82ã\81\93ã\81®å ´å\90\88ã\81¯ "
+"I<sa_handler> のかわりに I<sa_sigaction> を設定しなければならない このフラグ"
+"ã\81¯ã\82·ã\82°ã\83\8aã\83«ã\83\8fã\83³ã\83\89ã\83©ã\83¼を設定する際にのみ意味を持つ。"
#. type: Plain text
-#: build/C/man2/sigaction.2:254
+#: build/C/man2/sigaction.2:271
msgid ""
"The I<siginfo_t> argument to I<sa_sigaction> is a struct with the following "
-"elements:"
+"fields:"
msgstr ""
-"I<sa_sigaction> のパラメータ I<siginfo_t> は以下の要素を持つ構造体である:"
+"I<sa_sigaction> のパラメーター I<siginfo_t> は以下のフィールドを持つ構造体で"
+"ある:"
#. FIXME
-#. si_trapno seems to be only used on SPARC and Alpha;
+#. The siginfo_t 'si_trapno' field seems to be used only on SPARC and Alpha;
#. this page could use a little more detail on its purpose there.
#. 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"
+#: build/C/man2/sigaction.2:309
+#, 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"
-" 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"
+" 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;\n"
+" POSIX.1b timers */\n"
+" int si_timerid; /* Timer ID; POSIX.1b timers */\n"
+" void *si_addr; /* Memory location which caused fault */\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 Linux 2.6.32) */\n"
+" void *si_call_addr; /* Address of system call instruction\n"
+" (since Linux 3.5) */\n"
+" int si_syscall; /* Number of attempted system call\n"
+" (since Linux 3.5) */\n"
+" unsigned int si_arch; /* Architecture of attempted system call\n"
+" (since Linux 3.5) */\n"
"}\n"
msgstr ""
"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"
+" 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;\n"
+" POSIX.1b timers */\n"
+" int si_timerid; /* Timer ID; POSIX.1b timers */\n"
+" void *si_addr; /* Memory location which caused fault */\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 Linux 2.6.32) */\n"
+" void *si_call_addr; /* Address of system call instruction\n"
+" (since Linux 3.5) */\n"
+" int si_syscall; /* Number of attempted system call\n"
+" (since Linux 3.5) */\n"
+" unsigned int si_arch; /* Architecture of attempted system call\n"
+" (since Linux 3.5) */\n"
"}\n"
#. type: Plain text
-#: build/C/man2/sigaction.2:294
+#: build/C/man2/sigaction.2:318
msgid ""
"I<si_signo>, I<si_errno> and I<si_code> are defined for all signals. "
"(I<si_errno> is generally unused on Linux.) The rest of the struct may be a "
-"union, so that one should only read the fields that are meaningful for the "
+"union, so that one should read only the fields that are meaningful for the "
"given signal:"
msgstr ""
"I<si_signo>, I<si_errno>, I<si_code> は全てのシグナルに対して定義されている "
"味のあるフィールドのみを読み込む ことができる。"
#. type: Plain text
-#: build/C/man2/sigaction.2:309
+#: build/C/man2/sigaction.2:333
msgid ""
"Signals sent with B<kill>(2) and B<sigqueue>(3) fill in I<si_pid> and "
"I<si_uid>. In addition, signals sent with B<sigqueue>(3) fill in I<si_int> "
"and I<si_ptr> with the values specified by the sender of the signal; see "
"B<sigqueue>(3) for more details."
msgstr ""
+"B<kill>(2) や B<sigqueue>(3) で送信されたシグナルでは I<si_pid> と I<si_uid> "
+"が設定される。 さらに、 B<sigqueue>(3) で送信されたシグナルでは I<si_int> と "
+"I<si_pid> にシグナルの送信者により指定された値が設定される。詳細は "
+"B<sigqueue>(3) を参照。"
#. 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)."
+#: build/C/man2/sigaction.2:349
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 "
"to identify the timer; it is not the same as the timer ID returned by "
"B<timer_create>(2). The I<si_overrun> field is the timer overrun count; "
-"this is the same information as is obtained by a call to B<timer_getoverrun>"
-"(2). These fields are nonstandard Linux extensions."
+"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> を設定す"
+"る。 I<si_timerid> フィールドはカーネルがタイマーを特定するのに使用する内部 "
+"ID であり、 B<timer_create>(2) が返すタイマー ID と同じではない。 "
+"I<si_overrun> フィールドはタイマーが回り切った回数である。 これは "
+"B<timer_getoverrun>(2) の呼び出しで取得できる情報と同じである。 これらの"
+"フィールドは非標準で Linux による拡張である。"
#. type: Plain text
-#: build/C/man2/sigaction.2:340
+#: build/C/man2/sigaction.2:364
msgid ""
"Signals sent for message queue notification (see the description of "
"B<SIGEV_SIGNAL> in B<mq_notify>(3)) fill in I<si_int>/I<si_ptr>, with the "
"of the message sender; and I<si_uid>, with the real user ID of the message "
"sender."
msgstr ""
+"メッセージキューの通知用に送信されたシグナル (B<mq_notify>(3) の "
+"B<SIGEV_SIGNAL> の説明を参照) では、 I<si_int>/I<si_ptr> に B<mq_notify>(3) "
+"に渡された I<sigev_value> が設定される。 I<si_pid> にはメッセージ送信者のプロ"
+"セス ID が設定され、 I<si_uid> にはメッセージ送信者の実ユーザー ID が設定され"
+"る。"
#. FIXME .
#. When si_utime and si_stime where originally implemented, the
#. waited-for children (as is done by getrusage() and times()
#. and wait4()). Solaris 8 does include child times.
#. type: Plain text
-#: build/C/man2/sigaction.2:387
-#, fuzzy
-#| msgid ""
-#| "B<SIGCHLD> fills in I<si_status>, I<si_utime> and I<si_stime>. The "
-#| "I<si_utime> and I<si_stime> fields do not include the times used by "
-#| "waited-for children (unlike B<getrusage>(2) and B<time>(2)). In kernels "
-#| "up to 2.6, and since 2.6.27, these fields report CPU time in units of "
-#| "I<sysconf(_SC_CLK_TCK)>. In 2.6 kernels before 2.6.27, a bug meant that "
-#| "these fields reported time in units of the (configurable) system jiffy "
-#| "(see B<time>(7))."
-msgid ""
-"B<SIGCHLD> fills in I<si_pid>, I<si_uid>, I<si_status>, I<si_utime> and "
+#: build/C/man2/sigaction.2:411
+msgid ""
+"B<SIGCHLD> fills in I<si_pid>, I<si_uid>, I<si_status>, I<si_utime>, and "
"I<si_stime>, providing information about the child. The I<si_pid> field is "
"the process ID of the child; I<si_uid> is the child's real user ID. The "
"I<si_status> field contains the exit status of the child (if I<si_code> is "
"B<CLD_EXITED>), or the signal number that caused the process to change "
"state. The I<si_utime> and I<si_stime> contain the user and system CPU time "
"used by the child process; these fields do not include the times used by "
-"waited-for children (unlike B<getrusage>(2) and B<time>(2)). In kernels up "
-"to 2.6, and since 2.6.27, these fields report CPU time in units of I<sysconf"
-"(_SC_CLK_TCK)>. In 2.6 kernels before 2.6.27, a bug meant that these fields "
-"reported time in units of the (configurable) system jiffy (see B<time>(7))."
-msgstr ""
-"B<SIGCHLD> は I<si_status>, I<si_utime>, I<si_stime> を設定する。 "
-"(B<getrusage>(2) や B<time>(2) と異なり) フィールド I<si_utime> と "
-"I<si_stime> には wait 待ちの子プロセスにより使用された時間は含まれない。 2.6 "
-"より前と 2.6.27 以降のカーネルでは、 これらのフィールドに格納される CPU 時間"
-"の単位は I<sysconf(_SC_CLK_TCK)> である。 2.6.27 より前の 2.6 系のカーネルで"
-"は、バグがあり、 これらのフィールドの CPU 時間の単位が (カーネルのコンフィグ"
-"で指定される) システムの jiffy であった (B<time>(7) 参照)。"
-
-#. FIXME SIGTRAP also sets the following for ptrace_notify() ?
-#. info.si_code = exit_code;
-#. info.si_pid = task_pid_vnr(current);
-#. info.si_uid = current_uid(); /* Real UID */
-#. type: Plain text
-#: build/C/man2/sigaction.2:423
+"waited-for children (unlike B<getrusage>(2) and B<times>(2)). In kernels "
+"up to 2.6, and since 2.6.27, these fields report CPU time in units of "
+"I<sysconf(_SC_CLK_TCK)>. In 2.6 kernels before 2.6.27, a bug meant that "
+"these fields reported time in units of the (configurable) system jiffy (see "
+"B<time>(7))."
+msgstr ""
+"B<SIGCHLD> は I<si_pid>, I<si_uid>, I<si_status>, I<si_utime>, I<si_stime> を"
+"設定し、子プロセスに関する情報を提供する。 I<si_pid> フィールドは子プロセスの"
+"プロセス ID で、 I<si_uid> フィールドは子プロセスの実ユーザー ID である。 "
+"I<si_stime> フィールドには、 (I<si_code> が B<CLD_EXITED> の場合は) 子プロセ"
+"スの終了ステータスが、それ以外の場合は状態が変化する原因となったシグナル番号"
+"が格納される。 I<si_utime> と I<si_stime> には子プロセスが使用したユーザー "
+"CPU 時間とシステム CPU 時間がそれぞれ格納される。(B<getrusage>(2) や "
+"B<times>(2) と異なり) これらのフィールドには wait 待ちの子プロセスにより使用"
+"された時間は含まれない。 2.6 より前と 2.6.27 以降のカーネルでは、 これらの"
+"フィールドに格納される CPU 時間の単位は I<sysconf(_SC_CLK_TCK)> である。 "
+"2.6.27 より前の 2.6 系のカーネルでは、バグがあり、 これらのフィールドの CPU "
+"時間の単位が (カーネルのコンフィグで指定される) システムの jiffy であった "
+"(B<time>(7) 参照)。"
+
+#. type: Plain text
+#: build/C/man2/sigaction.2:458
msgid ""
"B<SIGILL>, B<SIGFPE>, B<SIGSEGV>, B<SIGBUS>, and B<SIGTRAP> fill in "
"I<si_addr> with the address of the fault. On some architectures, these "
-"signals also fill in the I<si_trapno> filed. Some suberrors of B<SIGBUS>, "
+"signals also fill in the I<si_trapno> field. Some suberrors of B<SIGBUS>, "
"in particular B<BUS_MCEERR_AO> and B<BUS_MCEERR_AR>, also fill in "
"I<si_addr_lsb>. 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, I<si_addr_lsb> contains I<log2(sysconf"
-"(_SC_PAGESIZE))>. B<BUS_MCERR_*> and I<si_addr_lsb> are Linux-specific "
-"extensions."
+"if a full page was corrupted, I<si_addr_lsb> contains "
+"I<log2(sysconf(_SC_PAGESIZE))>. When B<SIGTRAP> is delivered in response to "
+"a B<ptrace>(2) event (PTRACE_EVENT_foo), I<si_addr> is not populated, but "
+"I<si_pid> and I<si_uid> are populated with the respective process ID and "
+"user ID responsible for delivering the trap. In the case of B<seccomp>(2), "
+"the tracee will be shown as delivering the event. B<BUS_MCEERR_*> and "
+"I<si_addr_lsb> are Linux-specific extensions."
+msgstr ""
+"B<SIGILL>, B<SIGFPE>, B<SIGSEGV>, B<SIGBUS>, B<SIGTRAP> では、 I<si_addr> に "
+"fault が発生したアドレスが設定される。 いくつかのアーキテクチャーでは、 これ"
+"らのシグナルは I<si_trapno> フィールドにも設定される。 B<SIGBUS> が発生するエ"
+"ラーのいくつか、特に B<BUS_MCEERR_AO> と B<BUS_MCEERR_AR> では、 "
+"I<si_addr_lsb> も設定される。 このフィールドは報告されるアドレスの最下位ビッ"
+"トを示し、 これによりメモリー破壊の程度を知ることができる。 例えば、ページ全"
+"体が壊れている場合には I<si_addr_lsb> には I<log2(sysconf(_SC_PAGESIZE))> が"
+"入る。 B<SIGTRAP> が B<ptrace>(2) イベント (PTRACE_EVENT_foo) に対応して配送"
+"される際、 I<si_addr> は設定されないが、 I<si_pid> と I<si_uid> にはトラップ"
+"の配送に責任を負うプロセス ID とユーザー ID がそれぞれ格納される。 "
+"B<seccomp>(2) の場合、 トレース対象はイベントを配送した元として示される。 "
+"B<BUS_MCEERR_*> と I<si_addr_lsb> は Linux 固有の拡張である。"
+
+#. type: Plain text
+#: build/C/man2/sigaction.2:472
+msgid ""
+"B<SIGIO>/B<SIGPOLL> (the two names are synonyms on Linux) fills in "
+"I<si_band> and I<si_fd>. The I<si_band> event is a bit mask containing the "
+"same values as are filled in the I<revents> field by B<poll>(2). The "
+"I<si_fd> field indicates the file descriptor for which the I/O event "
+"occurred."
+msgstr ""
+"B<SIGIO>/B<SIGPOLL> (2 つの名前は Linux では同義語) では I<si_band> と "
+"I<si_fd> が設定される。 I<si_band> イベントは、 B<poll>(2) が I<revents> "
+"フィールドに設定するのと同じ値が入ったビットマスクである。 I<si_fd> フィール"
+"ドは I/O イベントが発生したファイルディスクリプターを示す。"
+
+#. commit a0727e8ce513fe6890416da960181ceb10fbfae6
+#. type: Plain text
+#: build/C/man2/sigaction.2:485
+msgid ""
+"B<SIGSYS>, generated (since Linux 3.5) when a seccomp filter returns "
+"B<SECCOMP_RET_TRAP>, fills in I<si_call_addr>, I<si_syscall>, I<si_arch>, "
+"I<si_errno>, and other fields as described in B<seccomp>(2)."
msgstr ""
+"seccomp フィルターが B<SECCOMP_RET_TRAP> を返す際に (Linux 3.5 以降で) 生成さ"
+"れる B<SIGSYS> シグナルでは、 I<si_call_addr>, I<si_syscall>, I<si_arch>, "
+"I<si_arch> や B<seccomp>(2) で説明されている他のフィールドが設定される。"
#. type: Plain text
-#: build/C/man2/sigaction.2:436
+#: build/C/man2/sigaction.2:495
msgid ""
-"B<SIGPOLL>/B<SIGIO> fills in I<si_band> and I<si_fd>. The I<si_band> event "
-"is a bit mask containing the same values as are filled in the I<revents> "
-"field by B<poll>(2). The I<si_fd> field indicates the file descriptor for "
-"which the I/O event occurred."
+"I<si_code> is a value (not a bit mask) indicating why this signal was sent. "
+"For a B<ptrace>(2) event, I<si_code> will contain B<SIGTRAP> and have the "
+"ptrace event in the high byte:"
msgstr ""
+"I<si_code> は、そのシグナルが送信された理由を示す値である (ビットマスクではな"
+"い)。 B<ptrace>(2) イベントでは、 I<si_code> には B<SIGTRAP> が入り、 上位バ"
+"イトには ptrace イベントが入る。"
+
+#. type: Plain text
+#: build/C/man2/sigaction.2:498
+#, no-wrap
+msgid " (SIGTRAP | PTRACE_EVENT_foo E<lt>E<lt> 8).\n"
+msgstr " (SIGTRAP | PTRACE_EVENT_foo E<lt>E<lt> 8).\n"
#. type: Plain text
-#: build/C/man2/sigaction.2:443
+#: build/C/man2/sigaction.2:504
msgid ""
-"I<si_code> is a value (not a bit mask) indicating why this signal was "
-"sent. The following list shows the values which can be placed in I<si_code> "
-"for any signal, along with reason that the signal was generated."
+"For a regular signal, the following list shows the values which can be "
+"placed in I<si_code> for any signal, along with reason that the signal was "
+"generated."
msgstr ""
-"I<si_code> は、そのシグナルが送信された理由を示す値である (ビットマスクではな"
-"い)。 以下のリストに、どのシグナルの場合でも I<si_code> に入りうる値を、シグ"
-"ナルが生成された理由とともに記載する。"
+"通常のシグナルの場合には、 以下のリストに示す値がどのシグナルの場合でも "
+"I<si_code> に入りうる。シグナルが生成された理由も記載している。"
#. type: TP
-#: build/C/man2/sigaction.2:444
+#: build/C/man2/sigaction.2:505
#, no-wrap
msgid "B<SI_USER>"
msgstr "B<SI_USER>"
#. type: Plain text
-#: build/C/man2/sigaction.2:449
-msgid "B<kill>(2) or B<raise>(3)"
-msgstr "B<kill>(2) または B<raise>(3)"
+#: build/C/man2/sigaction.2:508
+msgid "B<kill>(2)."
+msgstr "B<kill>(2)"
#. type: TP
-#: build/C/man2/sigaction.2:449
+#: build/C/man2/sigaction.2:508
#, no-wrap
msgid "B<SI_KERNEL>"
msgstr "B<SI_KERNEL>"
#. type: Plain text
-#: build/C/man2/sigaction.2:452
+#: build/C/man2/sigaction.2:511
msgid "Sent by the kernel."
msgstr "カーネルにより送信された"
#. type: TP
-#: build/C/man2/sigaction.2:452
+#: build/C/man2/sigaction.2:511
#, no-wrap
msgid "B<SI_QUEUE>"
msgstr "B<SI_QUEUE>"
-#. type: TP
-#: build/C/man2/sigaction.2:455 build/C/man7/signal.7:126
-#, no-wrap
-msgid "B<sigqueue>(3)"
+#. type: Plain text
+#: build/C/man2/sigaction.2:514
+msgid "B<sigqueue>(3)."
msgstr "B<sigqueue>(3)"
#. type: TP
-#: build/C/man2/sigaction.2:455
+#: build/C/man2/sigaction.2:514
#, no-wrap
msgid "B<SI_TIMER>"
msgstr "B<SI_TIMER>"
#. type: Plain text
-#: build/C/man2/sigaction.2:458
-msgid "POSIX timer expired"
-msgstr "POSIX タイマが満了した"
+#: build/C/man2/sigaction.2:517
+msgid "POSIX timer expired."
+msgstr "POSIX ã\82¿ã\82¤ã\83\9eã\83¼ã\81\8cæº\80äº\86ã\81\97ã\81\9f"
#. type: TP
-#: build/C/man2/sigaction.2:458
+#: build/C/man2/sigaction.2:517
#, no-wrap
-msgid "B<SI_MESGQ>"
-msgstr "B<SI_MESGQ>"
+msgid "B<SI_MESGQ> (since Linux 2.6.6)"
+msgstr "B<SI_MESGQ> (Linux 2.6.6 以降)"
#. type: Plain text
-#: build/C/man2/sigaction.2:462
-msgid ""
-"POSIX message queue state changed (since Linux 2.6.6); see B<mq_notify>(3)"
-msgstr ""
-"POSIX メッセージキューの状態が変化した (Linux 2.6.6 以降)。 B<mq_notify>(3)B<"
-"参照。>"
+#: build/C/man2/sigaction.2:521
+msgid "POSIX message queue state changed; see B<mq_notify>(3)."
+msgstr "POSIX メッセージキューの状態が変化した; B<mq_notify>(3) 参照"
#. type: TP
-#: build/C/man2/sigaction.2:462
+#: build/C/man2/sigaction.2:521
#, no-wrap
msgid "B<SI_ASYNCIO>"
msgstr "B<SI_ASYNCIO>"
#. type: Plain text
-#: build/C/man2/sigaction.2:465
-msgid "AIO completed"
+#: build/C/man2/sigaction.2:524
+msgid "AIO completed."
msgstr "非同期 IO (AIO) が完了した"
#. type: TP
-#: build/C/man2/sigaction.2:465
+#: build/C/man2/sigaction.2:524
#, no-wrap
msgid "B<SI_SIGIO>"
msgstr "B<SI_SIGIO>"
#. type: Plain text
-#: build/C/man2/sigaction.2:468
-msgid "queued SIGIO"
-msgstr "キューイングされた SIGIO"
+#: build/C/man2/sigaction.2:533
+msgid ""
+"Queued B<SIGIO> (only in kernels up to Linux 2.2; from Linux 2.4 onward "
+"B<SIGIO>/B<SIGPOLL> fills in I<si_code> as described below)."
+msgstr ""
+"B<SIGIO> がキューイングされた (Linux 2.2 以下のカーネルのみ; Linux 2.4 以降で"
+"は以下で説明する B<SIGIO>/B<SIGPOLL> の I<si_code> が入る)"
#. type: TP
-#: build/C/man2/sigaction.2:468
+#: build/C/man2/sigaction.2:533
#, no-wrap
-msgid "B<SI_TKILL>"
-msgstr "B<SI_TKILL>"
+msgid "B<SI_TKILL> (since Linux 2.4.19)"
+msgstr "B<SI_TKILL> (Linux 2.4.19 以降)"
#. SI_DETHREAD is defined in 2.6.9 sources, but isn't implemented
#. It appears to have been an idea that was tried during 2.5.6
#. through to 2.5.24 and then was backed out.
#. type: Plain text
-#: build/C/man2/sigaction.2:477
-msgid "B<tkill>(2) or B<tgkill>(2) (since Linux 2.4.19)"
-msgstr "B<tkill>(2) または B<tgkill>(2) (Linux 2.4.19 以降)"
+#: build/C/man2/sigaction.2:541
+msgid "B<tkill>(2) or B<tgkill>(2)."
+msgstr "B<tkill>(2) または B<tgkill>(2)"
#. type: Plain text
-#: build/C/man2/sigaction.2:484
+#: build/C/man2/sigaction.2:548
msgid ""
"The following values can be placed in I<si_code> for a B<SIGILL> signal:"
-msgstr "B<SIGILL> ã\82·ã\82°ã\83\8aã\83«ã\81®å ´å\90\88ã\80\81 I<si_code> ã\81«ã\81¯ä»¥ä¸\8bã\81®å\80¤ã\82\92æ\8c\87å®\9aã\81§ã\81\8dる:"
+msgstr "B<SIGILL> ã\82·ã\82°ã\83\8aã\83«ã\81®å ´å\90\88ã\80\81 I<si_code> ã\81«ã\81¯ä»¥ä¸\8bã\81®å\80¤ã\81\8cå\85¥ã\82\8bå\8f¯è\83½æ\80§ã\81\8cã\81\82る:"
#. type: TP
-#: build/C/man2/sigaction.2:485
+#: build/C/man2/sigaction.2:549
#, no-wrap
msgid "B<ILL_ILLOPC>"
msgstr "B<ILL_ILLOPC>"
#. type: Plain text
-#: build/C/man2/sigaction.2:488
-msgid "illegal opcode"
-msgstr "不正な命令コード (opcode)"
+#: build/C/man2/sigaction.2:552
+msgid "Illegal opcode."
+msgstr "不正な命令コード"
#. type: TP
-#: build/C/man2/sigaction.2:488
+#: build/C/man2/sigaction.2:552
#, no-wrap
msgid "B<ILL_ILLOPN>"
msgstr "B<ILL_ILLOPN>"
#. type: Plain text
-#: build/C/man2/sigaction.2:491
-msgid "illegal operand"
+#: build/C/man2/sigaction.2:555
+msgid "Illegal operand."
msgstr "不正なオペランド"
#. type: TP
-#: build/C/man2/sigaction.2:491
+#: build/C/man2/sigaction.2:555
#, no-wrap
msgid "B<ILL_ILLADR>"
msgstr "B<ILL_ILLADR>"
#. type: Plain text
-#: build/C/man2/sigaction.2:494
-msgid "illegal addressing mode"
+#: build/C/man2/sigaction.2:558
+msgid "Illegal addressing mode."
msgstr "不正なアドレッシングモード"
#. type: TP
-#: build/C/man2/sigaction.2:494
+#: build/C/man2/sigaction.2:558
#, no-wrap
msgid "B<ILL_ILLTRP>"
msgstr "B<ILL_ILLTRP>"
#. type: Plain text
-#: build/C/man2/sigaction.2:497
-msgid "illegal trap"
+#: build/C/man2/sigaction.2:561
+msgid "Illegal trap."
msgstr "不正なトラップ"
#. type: TP
-#: build/C/man2/sigaction.2:497
+#: build/C/man2/sigaction.2:561
#, no-wrap
msgid "B<ILL_PRVOPC>"
msgstr "B<ILL_PRVOPC>"
#. type: Plain text
-#: build/C/man2/sigaction.2:500
-msgid "privileged opcode"
-msgstr "特権が必要な命令コード (opcode)"
+#: build/C/man2/sigaction.2:564
+msgid "Privileged opcode."
+msgstr "特権が必要な命令コード"
#. type: TP
-#: build/C/man2/sigaction.2:500
+#: build/C/man2/sigaction.2:564
#, no-wrap
msgid "B<ILL_PRVREG>"
msgstr "B<ILL_PRVREG>"
#. type: Plain text
-#: build/C/man2/sigaction.2:503
-msgid "privileged register"
-msgstr "特権が必要なレジスタ"
+#: build/C/man2/sigaction.2:567
+msgid "Privileged register."
+msgstr "特権が必要なレジスター"
#. type: TP
-#: build/C/man2/sigaction.2:503
+#: build/C/man2/sigaction.2:567
#, no-wrap
msgid "B<ILL_COPROC>"
msgstr "B<ILL_COPROC>"
#. type: Plain text
-#: build/C/man2/sigaction.2:506
-msgid "coprocessor error"
+#: build/C/man2/sigaction.2:570
+msgid "Coprocessor error."
msgstr "コプロセッサのエラー"
#. type: TP
-#: build/C/man2/sigaction.2:506
+#: build/C/man2/sigaction.2:570
#, no-wrap
msgid "B<ILL_BADSTK>"
msgstr "B<ILL_BADSTK>"
#. type: Plain text
-#: build/C/man2/sigaction.2:509
-msgid "internal stack error"
+#: build/C/man2/sigaction.2:573
+msgid "Internal stack error."
msgstr "内部スタックエラー"
#. type: Plain text
-#: build/C/man2/sigaction.2:516
+#: build/C/man2/sigaction.2:580
msgid ""
"The following values can be placed in I<si_code> for a B<SIGFPE> signal:"
-msgstr "B<SIGFPE> ã\82·ã\82°ã\83\8aã\83«ã\81®å ´å\90\88ã\80\81 I<si_code> ã\81«ã\81¯ä»¥ä¸\8bã\81®å\80¤ã\82\92æ\8c\87å®\9aã\81§ã\81\8dる:"
+msgstr "B<SIGFPE> ã\82·ã\82°ã\83\8aã\83«ã\81®å ´å\90\88ã\80\81 I<si_code> ã\81«ã\81¯ä»¥ä¸\8bã\81®å\80¤ã\81\8cå\85¥ã\82\8bå\8f¯è\83½æ\80§ã\81\8cã\81\82る:"
#. type: TP
-#: build/C/man2/sigaction.2:517
+#: build/C/man2/sigaction.2:581
#, no-wrap
msgid "B<FPE_INTDIV>"
msgstr "B<FPE_INTDIV>"
#. type: Plain text
-#: build/C/man2/sigaction.2:520
-msgid "integer divide by zero"
+#: build/C/man2/sigaction.2:584
+msgid "Integer divide by zero."
msgstr "整数の 0 による除算"
#. type: TP
-#: build/C/man2/sigaction.2:520
+#: build/C/man2/sigaction.2:584
#, no-wrap
msgid "B<FPE_INTOVF>"
msgstr "B<FPE_INTOVF>"
#. type: Plain text
-#: build/C/man2/sigaction.2:523
-msgid "integer overflow"
+#: build/C/man2/sigaction.2:587
+msgid "Integer overflow."
msgstr "整数のオーバーフロー"
#. type: TP
-#: build/C/man2/sigaction.2:523
+#: build/C/man2/sigaction.2:587
#, no-wrap
msgid "B<FPE_FLTDIV>"
msgstr "B<FPE_FLTDIV>"
#. type: Plain text
-#: build/C/man2/sigaction.2:526
-msgid "floating-point divide by zero"
+#: build/C/man2/sigaction.2:590
+msgid "Floating-point divide by zero."
msgstr "浮動小数点の 0 による除算"
#. type: TP
-#: build/C/man2/sigaction.2:526
+#: build/C/man2/sigaction.2:590
#, no-wrap
msgid "B<FPE_FLTOVF>"
msgstr "B<FPE_FLTOVF>"
#. type: Plain text
-#: build/C/man2/sigaction.2:529
-msgid "floating-point overflow"
+#: build/C/man2/sigaction.2:593
+msgid "Floating-point overflow."
msgstr "浮動小数点のオーバーフロー"
#. type: TP
-#: build/C/man2/sigaction.2:529
+#: build/C/man2/sigaction.2:593
#, no-wrap
msgid "B<FPE_FLTUND>"
msgstr "B<FPE_FLTUND>"
#. type: Plain text
-#: build/C/man2/sigaction.2:532
-msgid "floating-point underflow"
+#: build/C/man2/sigaction.2:596
+msgid "Floating-point underflow."
msgstr "浮動小数点のアンダーフロー"
#. type: TP
-#: build/C/man2/sigaction.2:532
+#: build/C/man2/sigaction.2:596
#, no-wrap
msgid "B<FPE_FLTRES>"
msgstr "B<FPE_FLTRES>"
#. type: Plain text
-#: build/C/man2/sigaction.2:535
-msgid "floating-point inexact result"
+#: build/C/man2/sigaction.2:599
+msgid "Floating-point inexact result."
msgstr "浮動小数点の不正確な演算結果 (inexact result)"
#. type: TP
-#: build/C/man2/sigaction.2:535
+#: build/C/man2/sigaction.2:599
#, no-wrap
msgid "B<FPE_FLTINV>"
msgstr "B<FPE_FLTINV>"
#. type: Plain text
-#: build/C/man2/sigaction.2:538
-msgid "floating-point invalid operation"
+#: build/C/man2/sigaction.2:602
+msgid "Floating-point invalid operation."
msgstr "浮動小数点の不正な操作"
#. type: TP
-#: build/C/man2/sigaction.2:538
+#: build/C/man2/sigaction.2:602
#, no-wrap
msgid "B<FPE_FLTSUB>"
msgstr "B<FPE_FLTSUB>"
#. type: Plain text
-#: build/C/man2/sigaction.2:541
-msgid "subscript out of range"
+#: build/C/man2/sigaction.2:605
+msgid "Subscript out of range."
msgstr "範囲外の添字 (subscript)"
#. type: Plain text
-#: build/C/man2/sigaction.2:548
+#: build/C/man2/sigaction.2:612
msgid ""
"The following values can be placed in I<si_code> for a B<SIGSEGV> signal:"
-msgstr "B<SIGSEGV> ã\82·ã\82°ã\83\8aã\83«ã\81®å ´å\90\88ã\80\81 I<si_code> ã\81«ã\81¯ä»¥ä¸\8bã\81®å\80¤ã\82\92æ\8c\87å®\9aã\81§ã\81\8dる:"
+msgstr "B<SIGSEGV> ã\82·ã\82°ã\83\8aã\83«ã\81®å ´å\90\88ã\80\81 I<si_code> ã\81«ã\81¯ä»¥ä¸\8bã\81®å\80¤ã\81\8cå\85¥ã\82\8bå\8f¯è\83½æ\80§ã\81\8cã\81\82る:"
#. type: TP
-#: build/C/man2/sigaction.2:549
+#: build/C/man2/sigaction.2:613
#, no-wrap
msgid "B<SEGV_MAPERR>"
msgstr "B<SEGV_MAPERR>"
#. type: Plain text
-#: build/C/man2/sigaction.2:552
-msgid "address not mapped to object"
+#: build/C/man2/sigaction.2:616
+msgid "Address not mapped to object."
msgstr "オブジェクトにマッピングされていないアドレス"
#. type: TP
-#: build/C/man2/sigaction.2:552
+#: build/C/man2/sigaction.2:616
#, no-wrap
msgid "B<SEGV_ACCERR>"
msgstr "B<SEGV_ACCERR>"
#. type: Plain text
-#: build/C/man2/sigaction.2:555
-msgid "invalid permissions for mapped object"
+#: build/C/man2/sigaction.2:619
+msgid "Invalid permissions for mapped object."
msgstr "マッピングされたオブジェクトに対するアクセス許可がない"
#. type: Plain text
-#: build/C/man2/sigaction.2:562
+#: build/C/man2/sigaction.2:626
msgid ""
"The following values can be placed in I<si_code> for a B<SIGBUS> signal:"
-msgstr "B<SIGBUS> ã\82·ã\82°ã\83\8aã\83«ã\81®å ´å\90\88ã\80\81 I<si_code> ã\81«ã\81¯ä»¥ä¸\8bã\81®å\80¤ã\82\92æ\8c\87å®\9aã\81§ã\81\8dる:"
+msgstr "B<SIGBUS> ã\82·ã\82°ã\83\8aã\83«ã\81®å ´å\90\88ã\80\81 I<si_code> ã\81«ã\81¯ä»¥ä¸\8bã\81®å\80¤ã\81\8cå\85¥ã\82\8bå\8f¯è\83½æ\80§ã\81\8cã\81\82る:"
#. type: TP
-#: build/C/man2/sigaction.2:563
+#: build/C/man2/sigaction.2:627
#, no-wrap
msgid "B<BUS_ADRALN>"
msgstr "B<BUS_ADRALN>"
#. type: Plain text
-#: build/C/man2/sigaction.2:566
-msgid "invalid address alignment"
-msgstr "ä¸\8dæ£ã\81ªã\82¢ã\83\89ã\83¬ã\82¹ã\83»ã\82¢ã\83©ã\82¤ã\83¡ã\83³ã\83\88 (alignment)"
+#: build/C/man2/sigaction.2:630
+msgid "Invalid address alignment."
+msgstr "不正なアドレスアライメント (alignment)"
#. type: TP
-#: build/C/man2/sigaction.2:566
+#: build/C/man2/sigaction.2:630
#, no-wrap
msgid "B<BUS_ADRERR>"
msgstr "B<BUS_ADRERR>"
#. type: Plain text
-#: build/C/man2/sigaction.2:569
-msgid "nonexistent physical address"
+#: build/C/man2/sigaction.2:633
+msgid "Nonexistent physical address."
msgstr "存在しない物理アドレス"
#. type: TP
-#: build/C/man2/sigaction.2:569
+#: build/C/man2/sigaction.2:633
#, no-wrap
msgid "B<BUS_OBJERR>"
msgstr "B<BUS_OBJERR>"
#. type: Plain text
-#: build/C/man2/sigaction.2:572
-msgid "object-specific hardware error"
+#: build/C/man2/sigaction.2:636
+msgid "Object-specific hardware error."
msgstr "オブジェクト固有のハードウェアエラー"
#. type: TP
-#: build/C/man2/sigaction.2:572
-#, fuzzy, no-wrap
-#| msgid "B<PR_CAPBSET_READ> (since Linux 2.6.25)"
+#: build/C/man2/sigaction.2:636
+#, 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:575
+#: build/C/man2/sigaction.2:639
msgid "Hardware memory error consumed on a machine check; action required."
msgstr ""
+"マシンチェックで使用中のハードウェアメモリーのエラーが検出された。対応が必"
+"須。"
#. type: TP
-#: build/C/man2/sigaction.2:575
-#, fuzzy, no-wrap
-#| msgid "B<PR_CAPBSET_READ> (since Linux 2.6.25)"
+#: build/C/man2/sigaction.2:639
+#, 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:578
+#: build/C/man2/sigaction.2:642
msgid ""
"Hardware memory error detected in process but not consumed; action optional."
msgstr ""
+"実行中にハードウェアメモリーエラーが検出されたが、使用中のメモリーではない。"
+"対応は必須ではない。"
#. type: Plain text
-#: build/C/man2/sigaction.2:585
+#: build/C/man2/sigaction.2:649
msgid ""
"The following values can be placed in I<si_code> for a B<SIGTRAP> signal:"
-msgstr "B<SIGTRAP> ã\82·ã\82°ã\83\8aã\83«ã\81®å ´å\90\88ã\80\81 I<si_code> ã\81«ã\81¯ä»¥ä¸\8bã\81®å\80¤ã\82\92æ\8c\87å®\9aã\81§ã\81\8dる:"
+msgstr "B<SIGTRAP> ã\82·ã\82°ã\83\8aã\83«ã\81®å ´å\90\88ã\80\81 I<si_code> ã\81«ã\81¯ä»¥ä¸\8bã\81®å\80¤ã\81\8cå\85¥ã\82\8bå\8f¯è\83½æ\80§ã\81\8cã\81\82る:"
#. type: TP
-#: build/C/man2/sigaction.2:586
+#: build/C/man2/sigaction.2:650
#, no-wrap
msgid "B<TRAP_BRKPT>"
msgstr "B<TRAP_BRKPT>"
#. type: Plain text
-#: build/C/man2/sigaction.2:589
-msgid "process breakpoint"
+#: build/C/man2/sigaction.2:653
+msgid "Process breakpoint."
msgstr "プロセスのブレークポイント"
#. type: TP
-#: build/C/man2/sigaction.2:589
+#: build/C/man2/sigaction.2:653
#, no-wrap
msgid "B<TRAP_TRACE>"
msgstr "B<TRAP_TRACE>"
#. type: Plain text
-#: build/C/man2/sigaction.2:592
-msgid "process trace trap"
-msgstr "ã\83\97ã\83ã\82»ã\82¹ã\81®ã\83\88ã\83¬ã\83¼ã\82¹ã\83»ã\83\88ã\83©ã\83\83ã\83\97"
+#: build/C/man2/sigaction.2:656
+msgid "Process trace trap."
+msgstr "プロセスのトレーストラップ"
#. type: TP
-#: build/C/man2/sigaction.2:592
-#, fuzzy, no-wrap
-#| msgid "B<__WALL> (since Linux 2.4)"
+#: build/C/man2/sigaction.2:656
+#, 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:595
-#, fuzzy
-#| msgid "process trace trap"
-msgid "process taken branch trap"
-msgstr "プロセスのトレース・トラップ"
+#: build/C/man2/sigaction.2:659
+msgid "Process taken branch trap."
+msgstr "プロセスのブランチトラップ"
#. type: TP
-#: build/C/man2/sigaction.2:595
-#, fuzzy, no-wrap
-#| msgid "B<__WALL> (since Linux 2.4)"
+#: build/C/man2/sigaction.2:659
+#, 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:598
-msgid "hardware breakpoint/watchpoint"
-msgstr ""
+#: build/C/man2/sigaction.2:662
+msgid "Hardware breakpoint/watchpoint."
+msgstr "ハードウェアのブレークポイント/ウォッチポイント"
#. type: Plain text
-#: build/C/man2/sigaction.2:605
+#: build/C/man2/sigaction.2:669
msgid ""
"The following values can be placed in I<si_code> for a B<SIGCHLD> signal:"
-msgstr "B<SIGCHLD> ã\82·ã\82°ã\83\8aã\83«ã\81®å ´å\90\88ã\80\81 I<si_code> ã\81«ã\81¯ä»¥ä¸\8bã\81®å\80¤ã\82\92æ\8c\87å®\9aã\81§ã\81\8dる:"
+msgstr "B<SIGCHLD> ã\82·ã\82°ã\83\8aã\83«ã\81®å ´å\90\88ã\80\81 I<si_code> ã\81«ã\81¯ä»¥ä¸\8bã\81®å\80¤ã\81\8cå\85¥ã\82\8bå\8f¯è\83½æ\80§ã\81\8cã\81\82る:"
#. type: TP
-#: build/C/man2/sigaction.2:606
+#: build/C/man2/sigaction.2:670
#, no-wrap
msgid "B<CLD_EXITED>"
msgstr "B<CLD_EXITED>"
#. type: Plain text
-#: build/C/man2/sigaction.2:609
-msgid "child has exited"
+#: build/C/man2/sigaction.2:673
+msgid "Child has exited."
msgstr "子プロセスが終了した (exited)"
#. type: TP
-#: build/C/man2/sigaction.2:609
+#: build/C/man2/sigaction.2:673
#, no-wrap
msgid "B<CLD_KILLED>"
msgstr "B<CLD_KILLED>"
#. type: Plain text
-#: build/C/man2/sigaction.2:612
-msgid "child was killed"
+#: build/C/man2/sigaction.2:676
+msgid "Child was killed."
msgstr "子プロセスが kill された"
#. type: TP
-#: build/C/man2/sigaction.2:612
+#: build/C/man2/sigaction.2:676
#, no-wrap
msgid "B<CLD_DUMPED>"
msgstr "B<CLD_DUMPED>"
#. type: Plain text
-#: build/C/man2/sigaction.2:615
-msgid "child terminated abnormally"
+#: build/C/man2/sigaction.2:679
+msgid "Child terminated abnormally."
msgstr "子プロセスが異常終了した"
#. type: TP
-#: build/C/man2/sigaction.2:615
+#: build/C/man2/sigaction.2:679
#, no-wrap
msgid "B<CLD_TRAPPED>"
msgstr "B<CLD_TRAPPED>"
#. type: Plain text
-#: build/C/man2/sigaction.2:618
-msgid "traced child has trapped"
+#: build/C/man2/sigaction.2:682
+msgid "Traced child has trapped."
msgstr "トレース対象の子プロセスがトラップを上げた"
#. type: TP
-#: build/C/man2/sigaction.2:618
+#: build/C/man2/sigaction.2:682
#, no-wrap
msgid "B<CLD_STOPPED>"
msgstr "B<CLD_STOPPED>"
#. type: Plain text
-#: build/C/man2/sigaction.2:621
-msgid "child has stopped"
+#: build/C/man2/sigaction.2:685
+msgid "Child has stopped."
msgstr "子プロセスが停止 (stop) した"
#. type: TP
-#: build/C/man2/sigaction.2:621
+#: build/C/man2/sigaction.2:685
#, no-wrap
-msgid "B<CLD_CONTINUED>"
-msgstr "B<CLD_CONTINUED>"
+msgid "B<CLD_CONTINUED> (since Linux 2.6.9)"
+msgstr "B<CLD_CONTINUED> (Linux 2.6.9 以降)"
#. type: Plain text
-#: build/C/man2/sigaction.2:624
-msgid "stopped child has continued (since Linux 2.6.9)"
-msgstr "停止していた子プロセスが再開した (Linux 2.6.9 以降)"
+#: build/C/man2/sigaction.2:688
+msgid "Stopped child has continued."
+msgstr "停止していた子プロセスが再開した"
#. type: Plain text
-#: build/C/man2/sigaction.2:631
+#: build/C/man2/sigaction.2:695
msgid ""
-"The following values can be placed in I<si_code> for a B<SIGPOLL> signal:"
-msgstr "B<SIGPOLL> シグナルの場合、 I<si_code> には以下の値を指定できる:"
+"The following values can be placed in I<si_code> for a B<SIGIO>/B<SIGPOLL> "
+"signal:"
+msgstr ""
+"B<SIGIO>/B<SIGPOLL> シグナルの場合、 I<si_code> には以下の値が入る可能性があ"
+"る:"
#. type: TP
-#: build/C/man2/sigaction.2:632
+#: build/C/man2/sigaction.2:696
#, no-wrap
msgid "B<POLL_IN>"
msgstr "B<POLL_IN>"
#. type: Plain text
-#: build/C/man2/sigaction.2:635
-msgid "data input available"
+#: build/C/man2/sigaction.2:699
+msgid "Data input available."
msgstr "入力データが利用可能"
#. type: TP
-#: build/C/man2/sigaction.2:635
+#: build/C/man2/sigaction.2:699
#, no-wrap
msgid "B<POLL_OUT>"
msgstr "B<POLL_OUT>"
#. type: Plain text
-#: build/C/man2/sigaction.2:638
-msgid "output buffers available"
-msgstr "出力バッファが利用可能"
+#: build/C/man2/sigaction.2:702
+msgid "Output buffers available."
+msgstr "å\87ºå\8a\9bã\83\90ã\83\83ã\83\95ã\82¡ã\83¼ã\81\8cå\88©ç\94¨å\8f¯è\83½"
#. type: TP
-#: build/C/man2/sigaction.2:638
+#: build/C/man2/sigaction.2:702
#, no-wrap
msgid "B<POLL_MSG>"
msgstr "B<POLL_MSG>"
#. type: Plain text
-#: build/C/man2/sigaction.2:641
-msgid "input message available"
+#: build/C/man2/sigaction.2:705
+msgid "Input message available."
msgstr "入力メッセージが利用可能"
#. type: TP
-#: build/C/man2/sigaction.2:641
+#: build/C/man2/sigaction.2:705
#, no-wrap
msgid "B<POLL_ERR>"
msgstr "B<POLL_ERR>"
#. type: Plain text
-#: build/C/man2/sigaction.2:644
-#, fuzzy
-#| msgid "i/o error"
-msgid "I/O error"
+#: build/C/man2/sigaction.2:708
+msgid "I/O error."
msgstr "I/O エラー"
#. type: TP
-#: build/C/man2/sigaction.2:644
+#: build/C/man2/sigaction.2:708
#, no-wrap
msgid "B<POLL_PRI>"
msgstr "B<POLL_PRI>"
#. type: Plain text
-#: build/C/man2/sigaction.2:647
-msgid "high priority input available"
+#: build/C/man2/sigaction.2:711
+msgid "High priority input available."
msgstr "高優先の入力が利用可能"
#. type: TP
-#: build/C/man2/sigaction.2:647
+#: build/C/man2/sigaction.2:711
#, no-wrap
msgid "B<POLL_HUP>"
msgstr "B<POLL_HUP>"
#. type: Plain text
-#: build/C/man2/sigaction.2:650
-msgid "device disconnected"
+#: build/C/man2/sigaction.2:714
+msgid "Device disconnected."
msgstr "デバイスが接続されていない"
#. type: Plain text
-#: build/C/man2/sigaction.2:654
-msgid "B<sigaction>() returns 0 on success and -1 on error."
-msgstr "B<sigaction>() は成功すれば 0 を返し、エラーならば -1 を返す。"
+#: build/C/man2/sigaction.2:721
+msgid "The following value can be placed in I<si_code> for a B<SIGSYS> signal:"
+msgstr "B<SIGSYS> シグナルの場合、 I<si_code> には以下の値が入る可能性がある:"
+
+#. type: TP
+#: build/C/man2/sigaction.2:722
+#, no-wrap
+msgid "B<SYS_SECCOMP> (since Linux 3.5)"
+msgstr "B<SYS_SECCOMP> (Linux 3.5 以降)"
+
+#. type: Plain text
+#: build/C/man2/sigaction.2:727
+msgid "Triggered by a B<seccomp>(2) filter rule."
+msgstr "B<seccomp>(2) のフィルタールールによる配送された"
#. type: Plain text
-#: build/C/man2/sigaction.2:659
+#: build/C/man2/sigaction.2:733
+msgid ""
+"B<sigaction>() returns 0 on success; on error, -1 is returned, and I<errno> "
+"is set to indicate the error."
+msgstr ""
+"B<sigaction>() 関数は成功すると 0 を返す。 エラーの場合、-1 を返し、 "
+"I<errno> にエラーを示す値をセットする。"
+
+#. type: Plain text
+#: build/C/man2/sigaction.2:738
msgid ""
"I<act> or I<oldact> points to memory which is not a valid part of the "
"process address space."
msgstr ""
-"I<act> か I<oldact> が指しているメモリが正しいプロセスのアドレス空間にない。"
+"I<act> か I<oldact> が指しているメモリーが正しいプロセスのアドレス空間にな"
+"い。"
#. type: Plain text
-#: build/C/man2/sigaction.2:666
+#: build/C/man2/sigaction.2:745
msgid ""
"An invalid signal was specified. This will also be generated if an attempt "
"is made to change the action for B<SIGKILL> or B<SIGSTOP>, which cannot be "
#. SVr4 does not document the EINTR condition.
#. type: Plain text
-#: build/C/man2/sigaction.2:669
+#: build/C/man2/sigaction.2:748
msgid "POSIX.1-2001, SVr4."
msgstr "POSIX.1-2001, SVr4."
#. type: Plain text
-#: build/C/man2/sigaction.2:677 build/C/man7/signal.7:103
+#: build/C/man2/sigaction.2:756 build/C/man7/signal.7:105
msgid ""
"A child created via B<fork>(2) inherits a copy of its parent's signal "
"dispositions. During an B<execve>(2), the dispositions of handled signals "
"unchanged."
msgstr ""
"B<fork>(2) 経由で作成された子プロセスは、親プロセスのシグナルの処理方法の コ"
-"ピーを継承する。\n"
-"B<execve>(2) の前後で、ハンドラが設定されているシグナルの処理方法はデフォルト"
-"にリセットされ、\n"
-"無視が設定されているシグナルの処理方法は変更されずそのままとなる。"
+"ピーを継承する。 B<execve>(2) の前後で、ハンドラーが設定されているシグナルの"
+"処理方法はデフォルトにリセットされ、 無視が設定されているシグナルの処理方法は"
+"変更されずそのままとなる。"
#. type: Plain text
-#: build/C/man2/sigaction.2:695 build/C/man2/signal.2:129
+#: build/C/man2/sigaction.2:774 build/C/man2/signal.2:134
msgid ""
"According to POSIX, the behavior of a process is undefined after it ignores "
"a B<SIGFPE>, B<SIGILL>, or B<SIGSEGV> signal that was not generated by "
"かもしれない。"
#. type: Plain text
-#: build/C/man2/sigaction.2:712
+#: build/C/man2/sigaction.2:791
msgid ""
"POSIX.1-1990 disallowed setting the action for B<SIGCHLD> to B<SIG_IGN>. "
"POSIX.1-2001 allows this possibility, so that ignoring B<SIGCHLD> can be "
"used to prevent the creation of zombies (see B<wait>(2)). Nevertheless, the "
-"historical BSD and System V behaviors for ignoring B<SIGCHLD> differ, so "
+"historical BSD and System\\ V behaviors for ignoring B<SIGCHLD> differ, so "
"that the only completely portable method of ensuring that terminated "
"children do not become zombies is to catch the B<SIGCHLD> signal and perform "
"a B<wait>(2) or similar."
msgstr ""
"POSIX.1-1990 では B<SIGCHLD> に B<SIG_IGN> を設定することを認めていない。 "
"POSIX.1-2001 では認められており、 B<SIGCHLD> を無視することでゾンビプロセスの"
-"生成を防止することができる (B<wait>(2) を参照)。 さらに、BSD と SystemV で"
-"ã\81¯ B<SIGCHLD> ã\82\92ç\84¡è¦\96ã\81\97ã\81\9fé\9a\9bã\81®å\8b\95ä½\9cã\81\8cç\95°ã\81ªã\81£ã\81¦ã\81\84ã\82\8bã\80\82 ã\81\9dã\81®ã\81\9fã\82\81ã\80\81å®\8cå\85¨ã\81«ç§»æ¤\8dæ\80§ã\81\8cã\81\82ã\82\8b"
-"方法で、終了した子プロセスがゾンビにならないこと を保証するには、 B<SIGCHLD> "
-"シグナルを補足し、 B<wait>(2) などを実行するしかない。"
+"生成を防止することができる (B<wait>(2) を参照)。 さらに、BSD と System\\ V "
+"ã\81§ã\81¯ B<SIGCHLD> ã\82\92ç\84¡è¦\96ã\81\97ã\81\9fé\9a\9bã\81®å\8b\95ä½\9cã\81\8cç\95°ã\81ªã\81£ã\81¦ã\81\84ã\82\8bã\80\82 ã\81\9dã\81®ã\81\9fã\82\81ã\80\81å®\8cå\85¨ã\81«ç§»æ¤\8dæ\80§ã\81\8cã\81\82"
+"る方法で、終了した子プロセスがゾンビにならないこと を保証するには、 "
+"B<SIGCHLD> シグナルを補足し、 B<wait>(2) などを実行するしかない。"
#. type: Plain text
-#: build/C/man2/sigaction.2:725
-#, 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."
+#: build/C/man2/sigaction.2:804
msgid ""
-"POSIX.1-1990 only specified B<SA_NOCLDSTOP>. POSIX.1-2001 added "
+"POSIX.1-1990 specified only 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> フラグを"
+"れた。 UNIX の古い実装で動かすアプリケーションで、 他の I<sa_flags> フラグを"
"使用すると移植性が下がる。"
#. type: Plain text
-#: build/C/man2/sigaction.2:729
+#: build/C/man2/sigaction.2:808
msgid ""
"The B<SA_RESETHAND> flag is compatible with the SVr4 flag of the same name."
msgstr "B<SA_RESETHAND> フラグは SVr4 の同じ名前のフラグと互換性がある。"
#. type: Plain text
-#: build/C/man2/sigaction.2:739
+#: build/C/man2/sigaction.2:818
msgid ""
"The B<SA_NODEFER> flag is compatible with the SVr4 flag of the same name "
"under kernels 1.3.9 and newer. On older kernels the Linux implementation "
"の設定により無効にできる)。"
#. type: Plain text
-#: build/C/man2/sigaction.2:745
-#, 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."
+#: build/C/man2/sigaction.2:824
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 "
"arguments."
msgstr ""
"B<sigaction>() の二番目の引き数に NULL を指定して呼び出すと、現在のシグナル"
-"ハンドラを確認する ことができる。また、二番目と三番目の引き数を NULL にて呼び"
-"出すことで、 指定されたシグナルが現在のマシンで使えるかどうかチェックできる。"
+"ハンドラーを確認する ことができる。また、二番目と三番目の引き数を NULL にて呼"
+"び出すことで、 指定されたシグナルが現在のマシンで使えるかどうかチェックでき"
+"る。"
#. type: Plain text
-#: build/C/man2/sigaction.2:751
+#: build/C/man2/sigaction.2:830
msgid ""
"It is not possible to block B<SIGKILL> or B<SIGSTOP> (by specifying them in "
"I<sa_mask>). Attempts to do so are silently ignored."
"禁止しようとしても黙って無視される。"
#. type: Plain text
-#: build/C/man2/sigaction.2:755 build/C/man2/sigpending.2:65
-#: build/C/man2/sigprocmask.2:131 build/C/man2/sigsuspend.2:104
+#: build/C/man2/sigaction.2:834 build/C/man2/sigpending.2:70
+#: build/C/man2/sigprocmask.2:144 build/C/man2/sigsuspend.2:108
msgid "See B<sigsetops>(3) for details on manipulating signal sets."
msgstr "シグナル集合の操作に関する詳細は B<sigsetops>(3) を参照のこと。"
#. type: Plain text
-#: build/C/man2/sigaction.2:760
+#: build/C/man2/sigaction.2:839
msgid ""
"See B<signal>(7) for a list of the async-signal-safe functions that can be "
"safely called inside from inside a signal handler."
msgstr ""
-"シグナルハンドラ内から安全に呼び出すことができる、 async-signal-safe "
+"シグナルハンドラー内から安全に呼び出すことができる、 async-signal-safe "
"functions (非同期シングルで安全な関数) の リストについては B<signal>(7) を参"
"照。"
#. type: SS
-#: build/C/man2/sigaction.2:760
+#: build/C/man2/sigaction.2:839
#, no-wrap
msgid "Undocumented"
msgstr "非公式"
#. type: Plain text
-#: build/C/man2/sigaction.2:770
+#: build/C/man2/sigaction.2:849
msgid ""
"Before the introduction of B<SA_SIGINFO> it was also possible to get some "
"additional information, namely by using a I<sa_handler> with second argument "
-"of type I<struct sigcontext>. See the relevant kernel sources for details. "
-"This use is obsolete now."
+"of type I<struct sigcontext>. See the relevant Linux kernel sources for "
+"details. This use is obsolete now."
msgstr ""
"B<SA_SIGINFO> が導入される前は、 I<struct sigcontext> 型の二番目の引き数と一"
"緒に I<sa_handler> を使用することで、 いくつかの追加の情報を入手することがで"
-"きた。 詳細についてはカーネルソースの関連部分を見てほしい。 現在はこの使用法"
-"は廃止されている。"
+"きた。 詳細については Linux カーネルソースの関連部分を見てほしい。 現在はこの"
+"使用法は廃止されている。"
#. type: Plain text
-#: build/C/man2/sigaction.2:779
+#: build/C/man2/sigaction.2:858
msgid ""
"In kernels up to and including 2.6.13, specifying B<SA_NODEFER> in "
"I<sa_flags> prevents not only the delivered signal from being masked during "
"This bug was fixed in kernel 2.6.14."
msgstr ""
"2.6.13 以前のカーネルでは、 I<sa_flags> に B<SA_NODEFER> を指定した場合、 ハ"
-"ンドラが実行中に配送されたシグナル自身がマスクされなくなるだけでなく、 "
+"ã\83³ã\83\89ã\83©ã\83¼ã\81\8cå®\9fè¡\8cä¸ã\81«é\85\8dé\80\81ã\81\95ã\82\8cã\81\9fã\82·ã\82°ã\83\8aã\83«è\87ªèº«ã\81\8cã\83\9eã\82¹ã\82¯ã\81\95ã\82\8cã\81ªã\81\8fã\81ªã\82\8bã\81 ã\81\91ã\81§ã\81ªã\81\8fã\80\81 "
"I<sa_mask> に指定されたシグナルもマスクされなくなる。 このバグは、カーネル "
"2.6.14 で修正された。"
#. type: Plain text
-#: build/C/man2/sigaction.2:782
+#: build/C/man2/sigaction.2:861
msgid "See B<mprotect>(2)."
msgstr "B<mprotect>(2) 参照。"
#. type: Plain text
-#: build/C/man2/sigaction.2:801
-#, 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)"
+#: build/C/man2/sigaction.2:883
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)"
+"B<kill>(1), B<kill>(2), B<killpg>(2), B<pause>(2), B<restart_syscall>(2), "
+"B<seccomp>(2) B<sigaltstack>(2), B<signal>(2), B<signalfd>(2), "
+"B<sigpending>(2), B<sigreturn>(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<restart_syscall>(2), "
+"B<seccomp>(2) B<sigaltstack>(2), B<signal>(2), B<signalfd>(2), "
+"B<sigpending>(2), B<sigreturn>(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)"
#. type: TH
-#: build/C/man2/sigaltstack.2:25
+#: build/C/man2/sigaltstack.2:27
#, no-wrap
msgid "SIGALTSTACK"
msgstr "SIGALTSTACK"
#. type: TH
-#: build/C/man2/sigaltstack.2:25 build/C/man2/wait.2:50
+#: build/C/man2/sigaltstack.2:27
#, no-wrap
msgid "2010-09-26"
msgstr "2010-09-26"
#. type: Plain text
-#: build/C/man2/sigaltstack.2:28
+#: build/C/man2/sigaltstack.2:30
msgid "sigaltstack - set and/or get signal stack context"
msgstr "sigaltstack - シグナルスタックのコンテキストを設定・取得する"
#. type: Plain text
-#: build/C/man2/sigaltstack.2:32
+#: build/C/man2/sigaltstack.2:34
msgid "B<int sigaltstack(const stack_t *>I<ss>B<, stack_t *>I<oss>B<);>"
msgstr "B<int sigaltstack(const stack_t *>I<ss>B<, stack_t *>I<oss>B<);>"
#. type: Plain text
-#: build/C/man2/sigaltstack.2:39
+#: build/C/man2/sigaltstack.2:41
msgid "B<sigaltstack>():"
msgstr "B<sigaltstack>():"
#. type: Plain text
-#: build/C/man2/sigaltstack.2:46 build/C/man3/siginterrupt.3:51
-#: build/C/man2/wait.2:79
+#: build/C/man2/sigaltstack.2:48 build/C/man3/siginterrupt.3:53
+#: build/C/man2/wait.2:80
msgid "|| /* Since glibc 2.12: */ _POSIX_C_SOURCE\\ E<gt>=\\ 200809L"
msgstr "|| /* glibc 2.12 以降: */ _POSIX_C_SOURCE\\ E<gt>=\\ 200809L"
#. type: Plain text
-#: build/C/man2/sigaltstack.2:58
+#: build/C/man2/sigaltstack.2:60
msgid ""
"B<sigaltstack>() allows a process to define a new alternate signal stack "
"and/or retrieve the state of an existing alternate signal stack. An "
"the establishment of that handler (see B<sigaction>(2)) requested it."
msgstr ""
"B<sigaltstack>() を使うと、 プロセスは新しい代替シグナルスタックを定義した"
-"ã\82\8aã\80\81 æ\97¢å\98ã\81®ä»£æ\9b¿ã\82·ã\82°ã\83\8aã\83«ã\82¹ã\82¿ã\83\83ã\82¯ã\81®ç\8a¶æ\85\8bã\82\92å\8f\96å¾\97ã\81§ã\81\8dã\82\8bã\80\82 ã\82·ã\82°ã\83\8aã\83«ã\83\8fã\83³ã\83\89ã\83©ã\81\8c代æ\9b¿ã\82·"
-"ã\82°ã\83\8aã\83«ã\82¹ã\82¿ã\83\83ã\82¯ã\82\92è¦\81æ±\82ã\81\99ã\82\8bã\82\88ã\81\86ã\81«è¨å®\9aã\81\95ã\82\8cã\81¦ã\81\84ã\82\8bã\81¨ (B<sigaction>(2) å\8f\82ç\85§)ã\80\81ã\83\8fã\83³"
-"ã\83\89ã\83©の実行中はそのシグナルスタックが使われる。"
+"ã\82\8aã\80\81 æ\97¢å\98ã\81®ä»£æ\9b¿ã\82·ã\82°ã\83\8aã\83«ã\82¹ã\82¿ã\83\83ã\82¯ã\81®ç\8a¶æ\85\8bã\82\92å\8f\96å¾\97ã\81§ã\81\8dã\82\8bã\80\82 ã\82·ã\82°ã\83\8aã\83«ã\83\8fã\83³ã\83\89ã\83©ã\83¼ã\81\8c代æ\9b¿"
+"ã\82·ã\82°ã\83\8aã\83«ã\82¹ã\82¿ã\83\83ã\82¯ã\82\92è¦\81æ±\82ã\81\99ã\82\8bã\82\88ã\81\86ã\81«è¨å®\9aã\81\95ã\82\8cã\81¦ã\81\84ã\82\8bã\81¨ (B<sigaction>(2) å\8f\82ç\85§)ã\80\81ã\83\8f"
+"ã\83³ã\83\89ã\83©ã\83¼の実行中はそのシグナルスタックが使われる。"
#. type: Plain text
-#: build/C/man2/sigaltstack.2:61
+#: build/C/man2/sigaltstack.2:63
msgid ""
"The normal sequence of events for using an alternate signal stack is the "
"following:"
msgstr "代替シグナルスタックを使う際の一般的な手順は、以下の通りである:"
#. type: IP
-#: build/C/man2/sigaltstack.2:61 build/C/man7/signal.7:383
+#: build/C/man2/sigaltstack.2:63 build/C/man7/signal.7:387
#, no-wrap
msgid "1."
msgstr "1."
#. type: Plain text
-#: build/C/man2/sigaltstack.2:65
+#: build/C/man2/sigaltstack.2:67
msgid "Allocate an area of memory to be used for the alternate signal stack."
-msgstr "代替シグナルスタックで使うメモリ領域を確保する。"
+msgstr "代替シグナルスタックで使うメモリー領域を確保する。"
#. type: IP
-#: build/C/man2/sigaltstack.2:65 build/C/man7/signal.7:387
+#: build/C/man2/sigaltstack.2:67 build/C/man7/signal.7:391
#, no-wrap
msgid "2."
msgstr "2."
#. type: Plain text
-#: build/C/man2/sigaltstack.2:71
+#: build/C/man2/sigaltstack.2:73
msgid ""
"Use B<sigaltstack>() to inform the system of the existence and location of "
"the alternate signal stack."
"せる。"
#. type: IP
-#: build/C/man2/sigaltstack.2:71 build/C/man7/signal.7:407
+#: build/C/man2/sigaltstack.2:73 build/C/man7/signal.7:411
#, no-wrap
msgid "3."
msgstr "3."
#. type: Plain text
-#: build/C/man2/sigaltstack.2:78
+#: build/C/man2/sigaltstack.2:80
msgid ""
"When establishing a signal handler using B<sigaction>(2), inform the system "
"that the signal handler should be executed on the alternate signal stack by "
"specifying the B<SA_ONSTACK> flag."
msgstr ""
-"B<sigaction>(2) ã\82\92使ã\81£ã\81¦ã\82·ã\82°ã\83\8aã\83«ã\83\8fã\83³ã\83\89ã\83©ã\82\92確ç«\8bã\81\99ã\82\8bé\9a\9bã\80\81 B<SA_ONSTACK> ã\83\95ã\83©ã\82°"
-"ã\82\92æ\8c\87å®\9aã\81\99ã\82\8bã\81\93ã\81¨ã\81«ã\82\88ã\82\8aã\80\81 ã\81\9dã\81®ã\82·ã\82°ã\83\8aã\83«ã\83\8fã\83³ã\83\89ã\83©ã\82\92代æ\9b¿ã\82·ã\82°ã\83\8aã\83«ã\82¹ã\82¿ã\83\83ã\82¯ä¸\8aã\81§å®\9fè¡\8cã\81\99ã\82\8b"
-"ことを システムに知らせる。"
+"B<sigaction>(2) ã\82\92使ã\81£ã\81¦ã\82·ã\82°ã\83\8aã\83«ã\83\8fã\83³ã\83\89ã\83©ã\83¼ã\82\92確ç«\8bã\81\99ã\82\8bé\9a\9bã\80\81 B<SA_ONSTACK> ã\83\95ã\83©"
+"ã\82°ã\82\92æ\8c\87å®\9aã\81\99ã\82\8bã\81\93ã\81¨ã\81«ã\82\88ã\82\8aã\80\81 ã\81\9dã\81®ã\82·ã\82°ã\83\8aã\83«ã\83\8fã\83³ã\83\89ã\83©ã\83¼ã\82\92代æ\9b¿ã\82·ã\82°ã\83\8aã\83«ã\82¹ã\82¿ã\83\83ã\82¯ä¸\8aã\81§å®\9fè¡\8c"
+"ã\81\99ã\82\8bã\81\93ã\81¨ã\82\92 ã\82·ã\82¹ã\83\86ã\83 ã\81«ç\9f¥ã\82\89ã\81\9bã\82\8bã\80\82"
#. type: Plain text
-#: build/C/man2/sigaltstack.2:86
+#: build/C/man2/sigaltstack.2:88
msgid ""
"The I<ss> argument is used to specify a new alternate signal stack, while "
"the I<oss> argument is used to retrieve information about the currently "
"established signal stack. If we are interested in performing just one of "
-"these tasks then the other argument can be specified as NULL. Each of these "
-"arguments is a structure of the following type:"
+"these tasks, then the other argument can be specified as NULL. Each of "
+"these arguments is a structure of the following type:"
msgstr ""
"I<ss> 引き数は、新しいシグナルスタックを指定するために使う。 また I<oss> 引き"
"数は、現在確立されている シグナルスタックの情報を取得するために使う。 この操"
"い。 引き数となる構造体は、以下のような型である:"
#. type: Plain text
-#: build/C/man2/sigaltstack.2:94
+#: build/C/man2/sigaltstack.2:96
#, no-wrap
msgid ""
"typedef struct {\n"
"} stack_t;\n"
#. type: Plain text
-#: build/C/man2/sigaltstack.2:105
+#: build/C/man2/sigaltstack.2:107
msgid ""
"To establish a new alternate signal stack, I<ss.ss_flags> is set to zero, "
"and I<ss.ss_sp> and I<ss.ss_size> specify the starting address and size of "
"新規の代替シグナルスタックを確立するには、 I<ss.ss_flags> を 0 に設定し、 "
"I<ss.ss_sp> と I<ss.ss_size> に スタックの開始アドレスとスタックサイズを指定"
"する。 定数 B<SIGSTKSZ> は、代替シグナルスタックが通常必要する サイズよりも充"
-"å\88\86大ã\81\8dã\81\8få®\9a義ã\81\95ã\82\8cã\81¦ã\81\84ã\82\8bã\80\82 ã\81¾ã\81\9få®\9aæ\95° B<MINSIGSTKSZ> ã\81¯ã\80\81 ã\82·ã\82°ã\83\8aã\83«ã\83\8fã\83³ã\83\89ã\83©ã\81®å®\9fè¡\8c"
-"に必要な最小サイズに定義されている。"
+"å\88\86大ã\81\8dã\81\8få®\9a義ã\81\95ã\82\8cã\81¦ã\81\84ã\82\8bã\80\82 ã\81¾ã\81\9få®\9aæ\95° B<MINSIGSTKSZ> ã\81¯ã\80\81 ã\82·ã\82°ã\83\8aã\83«ã\83\8fã\83³ã\83\89ã\83©ã\83¼ã\81®å®\9f"
+"行に必要な最小サイズに定義されている。"
#. type: Plain text
-#: build/C/man2/sigaltstack.2:109
+#: build/C/man2/sigaltstack.2:111
msgid ""
"When a signal handler is invoked on the alternate stack, the kernel "
"automatically aligns the address given in I<ss.ss_sp> to a suitable address "
"boundary for the underlying hardware architecture."
msgstr ""
-"代æ\9b¿ã\82¹ã\82¿ã\83\83ã\82¯ã\81§ã\82·ã\82°ã\83\8aã\83«ã\83\8fã\83³ã\83\89ã\83©ã\81\8cèµ·å\8b\95ã\81\95ã\82\8cã\81\9få ´å\90\88ã\81«ã\81¯ã\80\81 ã\82«ã\83¼ã\83\8dã\83«ã\81«ã\82\88ã\82\8aè\87ªå\8b\95ç\9a\84ã\81«ã\80\81"
-"I<ss.ss_sp> で指定されたアドレスは 動作しているハードウェアアーキテクチャに適"
-"したアドレス境界に 調整される。"
+"代æ\9b¿ã\82¹ã\82¿ã\83\83ã\82¯ã\81§ã\82·ã\82°ã\83\8aã\83«ã\83\8fã\83³ã\83\89ã\83©ã\83¼ã\81\8cèµ·å\8b\95ã\81\95ã\82\8cã\81\9få ´å\90\88ã\81«ã\81¯ã\80\81 ã\82«ã\83¼ã\83\8dã\83«ã\81«ã\82\88ã\82\8aè\87ªå\8b\95ç\9a\84"
+"に、I<ss.ss_sp> で指定されたアドレスは 動作しているハードウェアアーキテク"
+"ã\83\81ã\83£ã\83¼ã\81«é\81©ã\81\97ã\81\9fã\82¢ã\83\89ã\83¬ã\82¹å¢\83ç\95\8cã\81« 調æ\95´ã\81\95ã\82\8cã\82\8bã\80\82"
#. type: Plain text
-#: build/C/man2/sigaltstack.2:114
+#: build/C/man2/sigaltstack.2:116
msgid ""
"To disable an existing stack, specify I<ss.ss_flags> as B<SS_DISABLE>. In "
"this case, the remaining fields in I<ss> are ignored."
"る。 この場合、I<ss> の他のフィールドは無視される。"
#. type: Plain text
-#: build/C/man2/sigaltstack.2:122
+#: build/C/man2/sigaltstack.2:124
msgid ""
"If I<oss> is not NULL, then it is used to return information about the "
"alternate signal stack which was in effect prior to the call to "
"が返される。 I<oss.ss_flags> には以下のどちらかの値が返される:"
#. type: TP
-#: build/C/man2/sigaltstack.2:122
+#: build/C/man2/sigaltstack.2:124
#, no-wrap
msgid "B<SS_ONSTACK>"
msgstr "B<SS_ONSTACK>"
#. type: Plain text
-#: build/C/man2/sigaltstack.2:128
+#: build/C/man2/sigaltstack.2:130
msgid ""
"The process is currently executing on the alternate signal stack. (Note "
"that it is not possible to change the alternate signal stack if the process "
"点に注意すること)。"
#. type: TP
-#: build/C/man2/sigaltstack.2:128
+#: build/C/man2/sigaltstack.2:130
#, no-wrap
msgid "B<SS_DISABLE>"
msgstr "B<SS_DISABLE>"
#. type: Plain text
-#: build/C/man2/sigaltstack.2:131
+#: build/C/man2/sigaltstack.2:133
msgid "The alternate signal stack is currently disabled."
msgstr "代替シグナルスタックが現在無効になっている。"
#. type: Plain text
-#: build/C/man2/sigaltstack.2:135
+#: build/C/man2/sigaltstack.2:137
msgid ""
"B<sigaltstack>() returns 0 on success, or -1 on failure with I<errno> set "
"to indicate the error."
"ラーを示す値に I<errno> を設定する。"
#. type: Plain text
-#: build/C/man2/sigaltstack.2:140
+#: build/C/man2/sigaltstack.2:142
msgid ""
"Either I<ss> or I<oss> is not NULL and points to an area outside of the "
"process's address space."
"を指している。"
#. type: Plain text
-#: build/C/man2/sigaltstack.2:145
+#: build/C/man2/sigaltstack.2:147
msgid ""
"I<ss> is not NULL and the I<ss_flags> field contains a nonzero value other "
"than B<SS_DISABLE>."
"値になっている。"
#. type: Plain text
-#: build/C/man2/sigaltstack.2:149
+#: build/C/man2/sigaltstack.2:153
msgid ""
-"The specified size of the new alternate signal stack (I<ss.ss_size>) was "
-"less than B<MINSTKSZ>."
+"The specified size of the new alternate signal stack I<ss.ss_size> was less "
+"than B<MINSTKSZ>."
msgstr ""
"新しい代替シグナルスタック (I<ss.ss_size>) に指定したサイズが B<MINSTKSZ> よ"
-"ã\82\8aå°\8fã\81\95ã\81\84。"
+"ã\82\8aå°\8fã\81\95ã\81\8bã\81£ã\81\9f。"
#. type: Plain text
-#: build/C/man2/sigaltstack.2:154
+#: build/C/man2/sigaltstack.2:158
msgid ""
"An attempt was made to change the alternate signal stack while it was active "
"(i.e., the process was already executing on the current alternate signal "
"既に現在の代替シグナルスタック上で実行されていた)。"
#. type: Plain text
-#: build/C/man2/sigaltstack.2:156
+#: build/C/man2/sigaltstack.2:160
msgid "SUSv2, SVr4, POSIX.1-2001."
msgstr "SUSv2, SVr4, POSIX.1-2001."
#. type: Plain text
-#: build/C/man2/sigaltstack.2:164
+#: build/C/man2/sigaltstack.2:168
msgid ""
"The most common usage of an alternate signal stack is to handle the "
"B<SIGSEGV> signal that is generated if the space available for the normal "
"代替シグナルスタックを使用する最もよくある場面は、 B<SIGSEGV> シグナルを扱う"
"ときである。 B<SIGSEGV> はプロセスの通常のスタックが利用できる空間が使い果た"
"された際に 生成されるシグナルである。この場合には、 B<SIGSEGV> 用のシグナルハ"
-"ã\83³ã\83\89ã\83©ã\82\92ã\83\97ã\83ã\82»ã\82¹ã\81®ã\82¹ã\82¿ã\83\83ã\82¯ä¸\8aã\81§ã\81¯èµ·å\8b\95ã\81\99ã\82\8bã\81\93ã\81¨ã\81\8cã\81§ã\81\8dã\81ªã\81\84ã\80\82 ã\81\9dã\81®ã\81\9fã\82\81ã\80\81ã\81\93ã\81®ã\82·ã\82°ã\83\8a"
-"ルを扱おうとする場合には、 代替シグナルスタックを使用しなければならない。"
+"ã\83³ã\83\89ã\83©ã\83¼ã\82\92ã\83\97ã\83ã\82»ã\82¹ã\81®ã\82¹ã\82¿ã\83\83ã\82¯ä¸\8aã\81§ã\81¯èµ·å\8b\95ã\81\99ã\82\8bã\81\93ã\81¨ã\81\8cã\81§ã\81\8dã\81ªã\81\84ã\80\82 ã\81\9dã\81®ã\81\9fã\82\81ã\80\81ã\81\93ã\81®ã\82·ã\82°"
+"ã\83\8aã\83«ã\82\92æ\89±ã\81\8aã\81\86ã\81¨ã\81\99ã\82\8bå ´å\90\88ã\81«ã\81¯ã\80\81 代æ\9b¿ã\82·ã\82°ã\83\8aã\83«ã\82¹ã\82¿ã\83\83ã\82¯ã\82\92使ç\94¨ã\81\97ã\81ªã\81\91ã\82\8cã\81°ã\81ªã\82\89ã\81ªã\81\84ã\80\82"
#. type: Plain text
-#: build/C/man2/sigaltstack.2:174
+#: build/C/man2/sigaltstack.2:178
msgid ""
"Establishing an alternate signal stack is useful if a process expects that "
"it may exhaust its standard stack. This may occur, for example, because the "
"プロセスが標準のシグナルスタックを使い果たすことが予想される場合は、 代替シグ"
"ナルスタックを確立すると便利である。 例えば、スタックが最上位アドレスから 下"
"位アドレス方向に非常にたくさん積まれてしまうことで、 最下位アドレスから上位ア"
-"ドレス方向に積まれるヒープとぶつかってしまう場合や、 B<setrlimit"
-"(RLIMIT_STACK, &rlim)> の呼び出しで確立された 制限に達してしまった場合に、こ"
-"の様な事が起こる。 標準のスタックを使い果たしてしまうと、 カーネルはプロセス"
-"ã\81« B<SIGSEGV> ã\82·ã\82°ã\83\8aã\83«ã\82\92é\80\81ã\82\8bã\80\82 ã\81\93ã\81®ã\82\88ã\81\86ã\81ªç\8a¶æ³\81ã\81§ã\81¯ã\80\81代æ\9b¿ã\82·ã\82°ã\83\8aã\83«ã\82¹ã\82¿ã\83\83ã\82¯ä¸\8aã\81§ã\81\97"
-"かシグナルをキャッチできない。"
+"ドレス方向に積まれるヒープとぶつかってしまう場合や、 "
+"B<setrlimit(RLIMIT_STACK, &rlim)> の呼び出しで確立された 制限に達してしまった"
+"場合に、この様な事が起こる。 標準のスタックを使い果たしてしまうと、 カーネル"
+"ã\81¯ã\83\97ã\83ã\82»ã\82¹ã\81« B<SIGSEGV> ã\82·ã\82°ã\83\8aã\83«ã\82\92é\80\81ã\82\8bã\80\82 ã\81\93ã\81®ã\82\88ã\81\86ã\81ªç\8a¶æ³\81ã\81§ã\81¯ã\80\81代æ\9b¿ã\82·ã\82°ã\83\8aã\83«ã\82¹"
+"ã\82¿ã\83\83ã\82¯ä¸\8aã\81§ã\81\97ã\81\8bã\82·ã\82°ã\83\8aã\83«ã\82\92ã\82ã\83£ã\83\83ã\83\81ã\81§ã\81\8dã\81ªã\81\84ã\80\82"
#. type: Plain text
-#: build/C/man2/sigaltstack.2:180
+#: build/C/man2/sigaltstack.2:184
msgid ""
"On most hardware architectures supported by Linux, stacks grow downward. "
"B<sigaltstack>() automatically takes account of the direction of stack "
"growth."
msgstr ""
-"Linux ã\81\8cã\82µã\83\9dã\83¼ã\83\88ã\81\99ã\82\8bå¤\9aã\81\8fã\81®ã\83\8fã\83¼ã\83\89ã\82¦ã\82§ã\82¢ã\82¢ã\83¼ã\82ã\83\86ã\82¯ã\83\81ã\83£ã\81§ã\81¯ã\80\81 ã\82¹ã\82¿ã\83\83ã\82¯ã\81¯ä¸\8bä½\8dã\82¢ã\83\89"
-"ã\83¬ã\82¹æ\96¹å\90\91ã\81«ç©\8dã\81¾ã\82\8cã\82\8bã\80\82 B<sigaltstack>() ã\81¯ã\82¹ã\82¿ã\83\83ã\82¯ã\81\8cç©\8dã\81¾ã\82\8cã\82\8bæ\96¹å\90\91ã\82\92è\87ªå\8b\95ç\9a\84ã\81«æ±ºå®\9a"
-"する。"
+"Linux ã\81\8cã\82µã\83\9dã\83¼ã\83\88ã\81\99ã\82\8bå¤\9aã\81\8fã\81®ã\83\8fã\83¼ã\83\89ã\82¦ã\82§ã\82¢ã\82¢ã\83¼ã\82ã\83\86ã\82¯ã\83\81ã\83£ã\83¼ã\81§ã\81¯ã\80\81 ã\82¹ã\82¿ã\83\83ã\82¯ã\81¯ä¸\8bä½\8dã\82¢"
+"ã\83\89ã\83¬ã\82¹æ\96¹å\90\91ã\81«ç©\8dã\81¾ã\82\8cã\82\8bã\80\82 B<sigaltstack>() ã\81¯ã\82¹ã\82¿ã\83\83ã\82¯ã\81\8cç©\8dã\81¾ã\82\8cã\82\8bæ\96¹å\90\91ã\82\92è\87ªå\8b\95ç\9a\84ã\81«æ±º"
+"定する。"
#. type: Plain text
-#: build/C/man2/sigaltstack.2:189
+#: build/C/man2/sigaltstack.2:193
msgid ""
"Functions called from a signal handler executing on an alternate signal "
"stack will also use the alternate signal stack. (This also applies to any "
"automatically extend the alternate signal stack. Exceeding the allocated "
"size of the alternate signal stack will lead to unpredictable results."
msgstr ""
-"代æ\9b¿ã\82·ã\82°ã\83\8aã\83«ã\82¹ã\82¿ã\83\83ã\82¯ä¸\8aã\81§å®\9fè¡\8cã\81\95ã\82\8cã\81¦ã\81\84ã\82\8b ã\82·ã\82°ã\83\8aã\83«ã\83\8fã\83³ã\83\89ã\83©ã\81\8bã\82\89å\91¼ã\81°ã\82\8cã\82\8bé\96¢æ\95°ã\82\82ã\80\81代"
-"替シグナルハンドラを使う (プロセスが代替シグナルスタック上で実行されている場"
-"合、 他のシグナルで呼び出されるハンドラもこの代替シグナルハンドラを使う)。 標"
-"準のスタックとは異なり、 システムは代替シグナルスタックを自動的に拡張しな"
-"ã\81\84ã\80\82 代æ\9b¿ã\82·ã\82°ã\83\8aã\83«ã\82¹ã\82¿ã\83\83ã\82¯ç\94¨ã\81«ç¢ºä¿\9dã\81\97ã\81\9fã\82µã\82¤ã\82ºã\82\92è¶\8aã\81\88ã\81\9få ´å\90\88ã\80\81 çµ\90æ\9e\9cã\81¯äº\88æ\83³ã\81§ã\81\8dã\81ª"
-"い。"
+"代æ\9b¿ã\82·ã\82°ã\83\8aã\83«ã\82¹ã\82¿ã\83\83ã\82¯ä¸\8aã\81§å®\9fè¡\8cã\81\95ã\82\8cã\81¦ã\81\84ã\82\8b ã\82·ã\82°ã\83\8aã\83«ã\83\8fã\83³ã\83\89ã\83©ã\83¼ã\81\8bã\82\89å\91¼ã\81°ã\82\8cã\82\8bé\96¢æ\95°ã\82\82ã\80\81"
+"代替シグナルハンドラーを使う (プロセスが代替シグナルスタック上で実行されてい"
+"る場合、 他のシグナルで呼び出されるハンドラーもこの代替シグナルハンドラーを使"
+"う)。 標準のスタックとは異なり、 システムは代替シグナルスタックを自動的に拡張"
+"ã\81\97ã\81ªã\81\84ã\80\82 代æ\9b¿ã\82·ã\82°ã\83\8aã\83«ã\82¹ã\82¿ã\83\83ã\82¯ç\94¨ã\81«ç¢ºä¿\9dã\81\97ã\81\9fã\82µã\82¤ã\82ºã\82\92è¶\8aã\81\88ã\81\9få ´å\90\88ã\80\81 çµ\90æ\9e\9cã\81¯äº\88æ\83³ã\81§ã\81\8d"
+"ã\81ªã\81\84ã\80\82"
#. type: Plain text
-#: build/C/man2/sigaltstack.2:197
+#: build/C/man2/sigaltstack.2:201
msgid ""
"A successful call to B<execve>(2) removes any existing alternate signal "
"stack. A child process created via B<fork>(2) inherits a copy of its "
"タックの 設定のコピーを継承する。"
#. type: Plain text
-#: build/C/man2/sigaltstack.2:206
+#: build/C/man2/sigaltstack.2:210
msgid ""
"B<sigaltstack>() supersedes the older B<sigstack>() call. For backward "
"compatibility, glibc also provides B<sigstack>(). All new applications "
"リケーションは全て B<sigaltstack>() を使って書くべきである。"
#. type: SS
-#: build/C/man2/sigaltstack.2:206 build/C/man3/sigpause.3:59
+#: build/C/man2/sigaltstack.2:210 build/C/man3/sigpause.3:66
#, no-wrap
msgid "History"
msgstr "歴史"
#. type: Plain text
-#: build/C/man2/sigaltstack.2:213
+#: build/C/man2/sigaltstack.2:217
msgid ""
"4.2BSD had a B<sigstack>() system call. It used a slightly different "
"struct, and had the major disadvantage that the caller had to know the "
"ないという 大きな欠点があった。"
#. type: Plain text
-#: build/C/man2/sigaltstack.2:216
+#: build/C/man2/sigaltstack.2:220
msgid "The following code segment demonstrates the use of B<sigaltstack>():"
msgstr "以下のコードで B<sigaltstack>() の使用法の一部を示す:"
#. type: Plain text
-#: build/C/man2/sigaltstack.2:220
+#: build/C/man2/sigaltstack.2:224
#, no-wrap
msgid "stack_t ss;\n"
msgstr "stack_t ss;\n"
#. type: Plain text
-#: build/C/man2/sigaltstack.2:228
+#: build/C/man2/sigaltstack.2:232
#, no-wrap
msgid ""
"ss.ss_sp = malloc(SIGSTKSZ);\n"
" /* ハンドルエラー */;\n"
#. type: Plain text
-#: build/C/man2/sigaltstack.2:237
+#: build/C/man2/sigaltstack.2:241
msgid ""
"B<execve>(2), B<setrlimit>(2), B<sigaction>(2), B<siglongjmp>(3), "
"B<sigsetjmp>(3), B<signal>(7)"
"B<sigsetjmp>(3), B<signal>(7)"
#. type: TH
-#: build/C/man7/sigevent.7:24
+#: build/C/man7/sigevent.7:26
#, no-wrap
msgid "SIGEVENT"
msgstr "SIGEVENT"
#. type: TH
-#: build/C/man7/sigevent.7:24 build/C/man3/siginterrupt.3:29
+#: build/C/man7/sigevent.7:26
#, no-wrap
msgid "2011-09-09"
msgstr "2011-09-09"
#. type: Plain text
-#: build/C/man7/sigevent.7:27
+#: build/C/man7/sigevent.7:29
msgid "sigevent - structure for notification from asynchronous routines"
-msgstr "sigevent - structure for notification from asynchronous routines"
+msgstr "sigevent - 非同期ルーチンからの通知用の構造体"
#. type: Plain text
-#: build/C/man7/sigevent.7:34
+#: build/C/man7/sigevent.7:36
#, no-wrap
msgid ""
"union sigval { /* Data passed with notification */\n"
"};\n"
#. type: Plain text
-#: build/C/man7/sigevent.7:49
+#: build/C/man7/sigevent.7:51
#, no-wrap
msgid ""
"struct sigevent {\n"
"};\n"
#. type: Plain text
-#: build/C/man7/sigevent.7:58
+#: build/C/man7/sigevent.7:60
msgid ""
"The I<sigevent> structure is used by various APIs to describe the way a "
"process is to be notified about an event (e.g., completion of an "
"asynchronous request, expiration of a timer, or the arrival of a message)."
msgstr ""
-"The I<sigevent> structure is used by various APIs to describe the way a "
-"process is to be notified about an event (e.g., completion of an "
-"asynchronous request, expiration of a timer, or the arrival of a message)."
+"I<sigevent> 構造体は、イベントに関する情報をプロセスに通知するために様々な "
+"API で使用される (イベントの例としては、 非同期処理要求の完了、 タイマーの満"
+"了、 メッセージの到着など)。"
#. type: Plain text
-#: build/C/man7/sigevent.7:66
+#: build/C/man7/sigevent.7:68
msgid ""
"The definition shown in the SYNOPSIS is approximate: some of the fields in "
"the I<sigevent> structure may be defined as part of a union. Programs "
-"should only employ those fields relevant to the value specified in "
+"should employ only those fields relevant to the value specified in "
"I<sigev_notify>."
msgstr ""
-"The definition shown in the SYNOPSIS is approximate: some of the fields in "
-"the I<sigevent> structure may be defined as part of a union. Programs "
-"should only employ those fields relevant to the value specified in "
-"I<sigev_notify>."
+"「書式」に記載されている定義はおおよそのものである。 I<sigevent> 構造体のいく"
+"つかのフィールドは、 共用体の一部として定義されているものもある。 プログラム"
+"は、 I<sigev_notify> で指定された値に応じたフィールドだけを利用すべきである。"
#. type: Plain text
-#: build/C/man7/sigevent.7:71
+#: build/C/man7/sigevent.7:73
msgid ""
"The I<sigev_notify> field specifies how notification is to be performed. "
"This field can have one of the following values:"
msgstr ""
-"The I<sigev_notify> field specifies how notification is to be performed. "
-"This field can have one of the following values:"
+"I<sigev_notify> フィールドは、通知をどのように処理すべきかを指定する。 この"
+"フィールドは、以下のいずれかの値である。"
#. type: TP
-#: build/C/man7/sigevent.7:71 build/C/man2/timer_create.2:105
+#: build/C/man7/sigevent.7:73 build/C/man2/timer_create.2:109
#, no-wrap
msgid "B<SIGEV_NONE>"
msgstr "B<SIGEV_NONE>"
#. type: Plain text
-#: build/C/man7/sigevent.7:74
+#: build/C/man7/sigevent.7:76
msgid "A \"null\" notification: don't do anything when the event occurs."
-msgstr "A \"null\" notification: don't do anything when the event occurs."
+msgstr "「空 (null)」の通知。 イベントが発生時には何もしないこと。"
#. type: TP
-#: build/C/man7/sigevent.7:74 build/C/man2/timer_create.2:110
+#: build/C/man7/sigevent.7:76 build/C/man2/timer_create.2:114
#, no-wrap
msgid "B<SIGEV_SIGNAL>"
msgstr "B<SIGEV_SIGNAL>"
#. type: Plain text
-#: build/C/man7/sigevent.7:78
+#: build/C/man7/sigevent.7:80
msgid "Notify the process by sending the signal specified in I<sigev_signo>."
-msgstr "Notify the process by sending the signal specified in I<sigev_signo>."
+msgstr ""
+"I<sigev_signo> で指定されたシグナルを送信することで、プロセスへの通知を行う。"
#. type: Plain text
-#: build/C/man7/sigevent.7:85
+#: build/C/man7/sigevent.7:87
msgid ""
"If the signal is caught with a signal handler that was registered using the "
"B<sigaction>(2) B<SA_SIGINFO> flag, then the following fields are set in "
"the I<siginfo_t> structure that is passed as the second argument of the "
"handler:"
msgstr ""
-"If the signal is caught with a signal handler that was registered using the "
-"B<sigaction>(2) B<SA_SIGINFO> flag, then the following fields are set in "
-"the I<siginfo_t> structure that is passed as the second argument of the "
-"handler:"
+"B<sigaction>(2) の B<SA_SIGINFO> フラグを使った登録されたシグナルハンドラーに"
+"よりシグナルが捕捉されると、 シグナルハンドラーの 2 番目の引き数として渡され"
+"た I<siginfo_t> 構造体の以下のフィールドが設定される。"
#. type: Plain text
-#: build/C/man7/sigevent.7:90
+#: build/C/man7/sigevent.7:92
msgid ""
"This field is set to a value that depends on the API delivering the "
"notification."
-msgstr ""
-"This field is set to a value that depends on the API delivering the "
-"notification."
+msgstr "このフィールドには通知を配送した API に応じた決まる値が設定される。"
#. type: TP
-#: build/C/man7/sigevent.7:90 build/C/man2/wait.2:301
+#: build/C/man7/sigevent.7:92 build/C/man2/wait.2:302
#, no-wrap
msgid "I<si_signo>"
msgstr "I<si_signo>"
#. type: Plain text
-#: build/C/man7/sigevent.7:94
+#: build/C/man7/sigevent.7:96
msgid ""
"This field is set to the signal number (i.e., the same value as in "
"I<sigev_signo>)."
msgstr ""
-"This field is set to the signal number (i.e., the same value as in "
-"I<sigev_signo>)."
+"このフィールドにはシグナル番号 (すなわち I<sigev_signo> と同じ値) が設定され"
+"る。"
#. type: Plain text
-#: build/C/man7/sigevent.7:98
+#: build/C/man7/sigevent.7:100
msgid "This field is set to the value specified in I<sigev_value>."
-msgstr "This field is set to the value specified in I<sigev_value>."
+msgstr "このフィールドには I<sigev_value> で指定された値が設定される。"
#. type: Plain text
-#: build/C/man7/sigevent.7:103
+#: build/C/man7/sigevent.7:105
msgid ""
"Depending on the API, other fields may also be set in the I<siginfo_t> "
"structure."
msgstr ""
-"Depending on the API, other fields may also be set in the I<siginfo_t> "
-"structure."
+"API によっては I<siginfo_t> 構造体の他のフィールドが設定される場合もある。"
#. type: Plain text
-#: build/C/man7/sigevent.7:106
+#: build/C/man7/sigevent.7:108
msgid ""
"The same information is also available if the signal is accepted using "
"B<sigwaitinfo>(2)."
msgstr ""
-"The same information is also available if the signal is accepted using "
-"B<sigwaitinfo>(2)."
+"シグナルを受け取ったときには B<sigwaitinfo>(2) でも同じ情報が得られる。"
#. type: TP
-#: build/C/man7/sigevent.7:106 build/C/man2/timer_create.2:128
+#: build/C/man7/sigevent.7:108 build/C/man2/timer_create.2:132
#, no-wrap
msgid "B<SIGEV_THREAD>"
msgstr "B<SIGEV_THREAD>"
#. type: Plain text
-#: build/C/man7/sigevent.7:123
+#: build/C/man7/sigevent.7:125
msgid ""
"Notify the process by invoking I<sigev_notify_function> \"as if\" it were "
"the start function of a new thread. (Among the implementation possibilities "
"I<pthread_attr_t> structure that defines attributes for the new thread (see "
"B<pthread_attr_init>(3))."
msgstr ""
-"Notify the process by invoking I<sigev_notify_function> \"as if\" it were "
-"the start function of a new thread. (Among the implementation possibilities "
-"here are that each timer notification could result in the creation of a new "
-"thread, or that a single thread is created to receive all notifications.) "
-"The function is invoked with I<sigev_value> as its sole argument. If "
-"I<sigev_notify_attributes> is not NULL, it should point to a "
-"I<pthread_attr_t> structure that defines attributes for the new thread (see "
-"B<pthread_attr_init>(3))."
+"「あたかも」新しいスレッドセーフの開始関数であるかのように "
+"I<sigev_notify_function> を起動することで、 プロセスへの通知を行う (実装の可"
+"能性としては、 タイマー通知の度に新しいスレッドセーフが作成される場合も、 一"
+"つのスレッドを作成してすべての通知を受信する場合もある)。 この関数は "
+"I<sigev_value> を唯一の引き数として起動される。 I<sigev_notify_attributes> "
+"は、 NULL 以外の場合は、 新しいスレッドセーフの属性を定義する "
+"I<pthread_attr_t> 構造体を指していなければならない (B<pthread_attr_init>(3) "
+"参照)。"
#. type: TP
-#: build/C/man7/sigevent.7:123 build/C/man2/timer_create.2:136
+#: build/C/man7/sigevent.7:125 build/C/man2/timer_create.2:140
#, no-wrap
msgid "B<SIGEV_THREAD_ID> (Linux-specific)"
-msgstr "B<SIGEV_THREAD_ID> (Linux-specific)"
+msgstr "B<SIGEV_THREAD_ID> (Linux 固有)"
#. | SIGEV_SIGNAL vs not?
#. type: Plain text
-#: build/C/man7/sigevent.7:128
+#: build/C/man7/sigevent.7:130
msgid "Currently used only by POSIX timers; see B<timer_create>(2)."
-msgstr "Currently used only by POSIX timers; see B<timer_create>(2)."
+msgstr "現在のところ POSIX でのみ使用されている。 B<timer_create>(2) 参照。"
#. type: Plain text
-#: build/C/man7/sigevent.7:130 build/C/man2/sigpending.2:61
-#: build/C/man2/sigprocmask.2:101 build/C/man3/sigqueue.3:114
-#: build/C/man3/sigsetops.3:128 build/C/man2/sigsuspend.2:82
-#: build/C/man3/sigwait.3:79 build/C/man2/sigwaitinfo.2:128
-#: build/C/man2/timer_create.2:193 build/C/man2/timer_delete.2:66
-#: build/C/man2/timer_getoverrun.2:96 build/C/man2/timer_settime.2:205
+#: build/C/man7/sigevent.7:132 build/C/man2/sigpending.2:66
+#: build/C/man2/sigprocmask.2:114 build/C/man3/sigqueue.3:121
+#: build/C/man3/sigsetops.3:147 build/C/man2/sigsuspend.2:86
+#: build/C/man3/sigwait.3:87 build/C/man2/sigwaitinfo.2:135
+#: build/C/man2/timer_create.2:197 build/C/man2/timer_delete.2:69
+#: build/C/man2/timer_getoverrun.2:99 build/C/man2/timer_settime.2:209
msgid "POSIX.1-2001."
msgstr "POSIX.1-2001."
#. type: Plain text
-#: build/C/man7/sigevent.7:140
+#: build/C/man7/sigevent.7:142
msgid ""
"B<timer_create>(2), B<aio_fsync>(3), B<aio_read>(3), B<aio_write>(3), "
"B<getaddrinfo_a>(3), B<lio_listio>(3), B<mq_notify>(3), B<aio>(7), "
"B<pthreads>(7)"
#. type: TH
-#: build/C/man3/siginterrupt.3:29
+#: build/C/man3/siginterrupt.3:31
#, no-wrap
msgid "SIGINTERRUPT"
msgstr "SIGINTERRUPT"
+#. type: TH
+#: build/C/man3/siginterrupt.3:31
+#, no-wrap
+msgid "2014-06-13"
+msgstr "2014-06-13"
+
#. type: Plain text
-#: build/C/man3/siginterrupt.3:32
+#: build/C/man3/siginterrupt.3:34
msgid "siginterrupt - allow signals to interrupt system calls"
-msgstr "siginterrupt - ã\82·ã\82°ã\83\8aã\83«ã\81§ã\82·ã\82¹ã\83\86ã\83 ã\83»ã\82³ã\83¼ã\83«ã\81«å\89²ã\82\8aè¾¼ã\82\80ã\81\93ã\81¨ã\82\92許ã\81\99"
+msgstr "siginterrupt - シグナルでシステムコールに割り込むことを許す"
#. type: Plain text
-#: build/C/man3/siginterrupt.3:37
+#: build/C/man3/siginterrupt.3:39
#, no-wrap
msgid "B<int siginterrupt(int >I<sig>B<, int >I<flag>B<);>\n"
msgstr "B<int siginterrupt(int >I<sig>B<, int >I<flag>B<);>\n"
#. type: Plain text
-#: build/C/man3/siginterrupt.3:45
+#: build/C/man3/siginterrupt.3:47
msgid "B<siginterrupt>():"
msgstr "B<siginterrupt>():"
#. type: Plain text
-#: build/C/man3/siginterrupt.3:62
+#: build/C/man3/siginterrupt.3:64
msgid ""
"The B<siginterrupt>() function changes the restart behavior when a system "
"call is interrupted by the signal I<sig>. If the I<flag> argument is false "
"(0), then system calls will be restarted if interrupted by the specified "
"signal I<sig>. This is the default behavior in Linux."
msgstr ""
-"B<siginterrupt>() é\96¢æ\95°ã\81¯ã\80\81ã\82·ã\82¹ã\83\86ã\83 ã\83»ã\82³ã\83¼ã\83«ã\81\8cã\82·ã\82°ã\83\8aã\83« I<sig> ã\81«ã\82\88ã\81£ã\81¦å\89²ã\82\8aè¾¼ã\81¾"
-"ã\82\8cã\81\9få¾\8cã\80\81å\86\8då®\9fè¡\8cã\81®é\9a\9bã\81®æ\8c¯ã\82\8bè\88\9eã\81\84ã\82\92å¤\89æ\9b´ã\81\99ã\82\8bã\80\82 I<flag> å¼\95ã\81\8dæ\95°ã\81\8cå\81½ (0) ã\81ªã\82\89ã\81°ã\80\81ã\82·ã\82¹"
-"ã\83\86ã\83 ã\83»ã\82³ã\83¼ã\83«ã\81\8cæ\8c\87å®\9aã\81\97ã\81\9f ã\82·ã\82°ã\83\8aã\83« I<sig> ã\81«ã\82\88ã\81£ã\81¦å\89²ã\82\8aè¾¼ã\81¾ã\82\8cã\81\9få¾\8cã\81«ã\80\81ã\81\9dã\81®ã\82·ã\82¹ã\83\86"
-"ã\83 ã\83»ã\82³ã\83¼ã\83«ã\81¯ å\86\8då®\9fè¡\8cã\81\95ã\82\8cã\82\8bã\80\82ã\81\93ã\82\8cã\81¯ Linux ã\81«ã\81\8aã\81\84ã\81¦ã\83\87ã\83\95ã\82©ã\83«ã\83\88ã\81®å\8b\95ä½\9cã\81§ã\81\82ã\82\8bã\80\82"
+"B<siginterrupt>() é\96¢æ\95°ã\81¯ã\80\81ã\82·ã\82¹ã\83\86ã\83 ã\82³ã\83¼ã\83«ã\81\8cã\82·ã\82°ã\83\8aã\83« I<sig> ã\81«ã\82\88ã\81£ã\81¦å\89²ã\82\8aè¾¼ã\81¾ã\82\8c"
+"ã\81\9få¾\8cã\80\81å\86\8då®\9fè¡\8cã\81®é\9a\9bã\81®æ\8c¯ã\82\8bè\88\9eã\81\84ã\82\92å¤\89æ\9b´ã\81\99ã\82\8bã\80\82 I<flag> å¼\95ã\81\8dæ\95°ã\81\8cå\81½ (0) ã\81ªã\82\89ã\81°ã\80\81ã\82·ã\82¹ã\83\86"
+"ã\83 ã\82³ã\83¼ã\83«ã\81\8cæ\8c\87å®\9aã\81\97ã\81\9f ã\82·ã\82°ã\83\8aã\83« I<sig> ã\81«ã\82\88ã\81£ã\81¦å\89²ã\82\8aè¾¼ã\81¾ã\82\8cã\81\9få¾\8cã\81«ã\80\81ã\81\9dã\81®ã\82·ã\82¹ã\83\86ã\83 ã\82³ã\83¼"
+"ルは 再実行される。これは Linux においてデフォルトの動作である。"
#. type: Plain text
-#: build/C/man3/siginterrupt.3:67
+#: build/C/man3/siginterrupt.3:69
msgid ""
"If the I<flag> argument is true (1) and no data has been transferred, then a "
"system call interrupted by the signal I<sig> will return -1 and I<errno> "
"will be set to B<EINTR>."
msgstr ""
"I<flag> 引き数が真 (1) でデータの転送が全く行なわれていないならば、 シグナル "
-"I<sig> ã\81§ã\82·ã\82¹ã\83\86ã\83 ã\83»ã\82³ã\83¼ã\83«ã\81¯ä¸æ\96ã\81\95ã\82\8cã\81¦ã\80\81-1 ã\81\8cè¿\94ã\81\95ã\82\8cã\80\81 I<errno> ã\81« B<EINTR> ã\81\8c"
-"設定される。"
+"I<sig> ã\81§ã\82·ã\82¹ã\83\86ã\83 ã\82³ã\83¼ã\83«ã\81¯ä¸æ\96ã\81\95ã\82\8cã\81¦ã\80\81-1 ã\81\8cè¿\94ã\81\95ã\82\8cã\80\81 I<errno> ã\81« B<EINTR> ã\81\8cè¨"
+"定される。"
#. type: Plain text
-#: build/C/man3/siginterrupt.3:71
+#: build/C/man3/siginterrupt.3:73
msgid ""
"If the I<flag> argument is true (1) and data transfer has started, then the "
"system call will be interrupted and will return the actual amount of data "
"transferred."
msgstr ""
-"I<flag> å¼\95ã\81\8dæ\95°ã\81\8cç\9c\9f (1) ã\81§ã\83\87ã\83¼ã\82¿ã\81®è»¢é\80\81ã\81\8cé\96\8bå§\8bã\81\95ã\82\8cã\81¦ã\81\84ã\82\8cã\81°ã\80\81 ã\82·ã\82¹ã\83\86ã\83 ã\83»ã\82³ã\83¼ã\83«ã\81¯"
-"中断され、それまでに実際に転送されたデータ の量が返される。"
+"I<flag> å¼\95ã\81\8dæ\95°ã\81\8cç\9c\9f (1) ã\81§ã\83\87ã\83¼ã\82¿ã\81®è»¢é\80\81ã\81\8cé\96\8bå§\8bã\81\95ã\82\8cã\81¦ã\81\84ã\82\8cã\81°ã\80\81 ã\82·ã\82¹ã\83\86ã\83 ã\82³ã\83¼ã\83«ã\81¯ä¸"
+"断され、それまでに実際に転送されたデータ の量が返される。"
#. type: Plain text
-#: build/C/man3/siginterrupt.3:76
+#: build/C/man3/siginterrupt.3:83
msgid ""
-"The B<siginterrupt>() function returns 0 on success, or -1 if the signal "
-"number I<sig> is invalid."
+"The B<siginterrupt>() function returns 0 on success. It returns -1 if the "
+"signal number I<sig> is invalid, with I<errno> set to indicate the cause of "
+"the error."
msgstr ""
"B<siginterrupt>() 関数は成功した場合 0 を返す。 シグナル番号 I<sig> が不正な"
-"å ´å\90\88ã\81¯ -1 ã\82\92è¿\94ã\81\99。"
+"å ´å\90\88ã\80\81 -1 ã\82\92è¿\94ã\81\97ã\80\81 I<errno> ã\81«ã\82¨ã\83©ã\83¼ã\81®å\8e\9få\9b ã\82\92示ã\81\99å\80¤ã\82\92è¨å®\9aã\81\99ã\82\8b。"
#. type: Plain text
-#: build/C/man3/siginterrupt.3:80
+#: build/C/man3/siginterrupt.3:87
msgid "The specified signal number is invalid."
msgstr "指定したシグナル番号が不正である。"
#. type: Plain text
-#: build/C/man3/siginterrupt.3:89
+#: build/C/man3/siginterrupt.3:93
+msgid ""
+"The B<siginterrupt>() function uses a global variable that is not "
+"protected, so it is not thread-safe."
+msgstr ""
+"B<siginterrupt>() 関数は保護されていないグローバル変数を使用しているので、ス"
+"レッドセーフではない。"
+
+#. type: Plain text
+#: build/C/man3/siginterrupt.3:102
msgid ""
"4.3BSD, POSIX.1-2001. POSIX.1-2008 marks B<siginterrupt>() as obsolete, "
"recommending the use of B<sigaction>(2) with the B<SA_RESTART> flag instead."
"を推奨している。"
#. type: Plain text
-#: build/C/man3/siginterrupt.3:91
+#: build/C/man3/siginterrupt.3:104
msgid "B<signal>(2)"
msgstr "B<signal>(2)"
#. type: TH
-#: build/C/man2/signal.2:34 build/C/man7/signal.7:44
+#: build/C/man2/signal.2:36 build/C/man7/signal.7:46
#, no-wrap
msgid "SIGNAL"
msgstr "SIGNAL"
#. type: TH
-#: build/C/man2/signal.2:34
+#: build/C/man2/signal.2:36 build/C/man3/sigpause.3:25
+#: build/C/man2/sigwaitinfo.2:25 build/C/man2/timer_create.2:33
+#: build/C/man2/wait.2:49
#, no-wrap
-msgid "2008-07-11"
-msgstr "2008-07-11"
+msgid "2014-08-19"
+msgstr "2014-08-19"
#. type: Plain text
-#: build/C/man2/signal.2:37
+#: build/C/man2/signal.2:39
msgid "signal - ANSI C signal handling"
msgstr "signal - ANSI C シグナル操作"
#. type: Plain text
-#: build/C/man2/signal.2:43
+#: build/C/man2/signal.2:45
msgid "B<sighandler_t signal(int >I<signum>B<, sighandler_t >I<handler>B<);>"
msgstr ""
"B<sighandler_t signal(int >I<signum>B<, sighandler_t >I<sighandler>B<);>"
#. type: Plain text
-#: build/C/man2/signal.2:52
+#: build/C/man2/signal.2:54
msgid ""
"The behavior of B<signal>() varies across UNIX versions, and has also "
"varied historically across different versions of Linux. B<Avoid its use>: "
"> 代わりに B<sigaction>(2) を使用すること。 下記の「移植性」を参照。"
#. type: Plain text
-#: build/C/man2/signal.2:62
+#: build/C/man2/signal.2:64
msgid ""
"B<signal>() sets the disposition of the signal I<signum> to I<handler>, "
"which is either B<SIG_IGN>, B<SIG_DFL>, or the address of a programmer-"
msgstr ""
"B<signal>() はシグナル I<signum> の処理方法を I<handler> に設定する。 "
"I<handler> には、 B<SIG_IGN>、 B<SIG_DFL>、 プログラマが定義した関数 (「シグ"
-"ã\83\8aã\83«ã\83»ã\83\8fã\83³ã\83\89ã\83©」) のアドレスの いずれかを指定する。"
+"ã\83\8aã\83«ã\83\8fã\83³ã\83\89ã\83©ã\83¼」) のアドレスの いずれかを指定する。"
#. type: Plain text
-#: build/C/man2/signal.2:66
+#: build/C/man2/signal.2:68
msgid ""
"If the signal I<signum> is delivered to the process, then one of the "
"following happens:"
"シグナル I<signum> がプロセスに配送されると、以下のいずれかが発生する。"
#. type: Plain text
-#: build/C/man2/signal.2:71
+#: build/C/man2/signal.2:73
msgid "If the disposition is set to B<SIG_IGN>, then the signal is ignored."
msgstr "処理方法が B<SIG_IGN> に設定されている場合、そのシグナルは無視される。"
#. type: Plain text
-#: build/C/man2/signal.2:78
+#: build/C/man2/signal.2:80
msgid ""
"If the disposition is set to B<SIG_DFL>, then the default action associated "
"with the signal (see B<signal>(7)) occurs."
"トの動作が行われる (B<signal>(7) 参照)。"
#. type: Plain text
-#: build/C/man2/signal.2:89
+#: build/C/man2/signal.2:91
msgid ""
"If the disposition is set to a function, then first either the disposition "
"is reset to B<SIG_DFL>, or the signal is blocked (see I<Portability> below), "
msgstr ""
"処理方法として関数が設定されている場合、 まず最初に処理方法が B<SIG_DFL> にリ"
"セットされるかそのシグナルのブロックが実行された後、 I<signum> を引き数とし"
-"ã\81¦ I<handler> ã\81\8cå\91¼ã\81³å\87ºã\81\95ã\82\8cã\82\8bã\80\82 ã\83\8fã\83³ã\83\89ã\83©ã\81\8cèµ·å\8b\95ã\81\95ã\82\8cã\82\8bé\9a\9bã\81«ã\82·ã\82°ã\83\8aã\83«ã\81\8cã\83\96ã\83ã\83\83ã\82¯ã\81\95ã\82\8c"
-"ã\81\9få ´å\90\88ã\80\81 ã\83\8fã\83³ã\83\89ã\83©が返る際にそのシグナルのブロックが解除される。"
+"ã\81¦ I<handler> ã\81\8cå\91¼ã\81³å\87ºã\81\95ã\82\8cã\82\8bã\80\82 ã\83\8fã\83³ã\83\89ã\83©ã\83¼ã\81\8cèµ·å\8b\95ã\81\95ã\82\8cã\82\8bé\9a\9bã\81«ã\82·ã\82°ã\83\8aã\83«ã\81\8cã\83\96ã\83ã\83\83ã\82¯ã\81\95"
+"ã\82\8cã\81\9få ´å\90\88ã\80\81 ã\83\8fã\83³ã\83\89ã\83©ã\83¼が返る際にそのシグナルのブロックが解除される。"
#. type: Plain text
-#: build/C/man2/signal.2:95
+#: build/C/man2/signal.2:97
msgid "The signals B<SIGKILL> and B<SIGSTOP> cannot be caught or ignored."
msgstr ""
"シグナル B<SIGKILL> と B<SIGSTOP> は捕捉できず、無視することもできない。"
#. type: Plain text
-#: build/C/man2/signal.2:100
+#: build/C/man2/signal.2:105
msgid ""
"B<signal>() returns the previous value of the signal handler, or B<SIG_ERR> "
-"on error."
+"on error. In the event of an error, I<errno> is set to indicate the cause."
msgstr ""
-"B<signal>() ã\81¯ã\80\81ä»\8aã\81¾ã\81§ã\81®ã\82·ã\82°ã\83\8aã\83«ã\83»ã\83\8fã\83³ã\83\89ã\83©ã\81®å\80¤ã\82\92è¿\94ã\81\99ã\80\82エラーの場合は "
-"B<SIG_ERR> ã\82\92è¿\94ã\81\99。"
+"B<signal>() ã\81¯ã\80\81ä»\8aã\81¾ã\81§ã\81®ã\82·ã\82°ã\83\8aã\83«ã\83\8fã\83³ã\83\89ã\83©ã\83¼ã\81®å\80¤ã\82\92è¿\94ã\81\99ã\80\82 エラーの場合は "
+"B<SIG_ERR> ã\82\92è¿\94ã\81\97ã\80\81 I<errno> ã\81«ã\82¨ã\83©ã\83¼ã\81®å\8e\9få\9b ã\82\92示ã\81\99å\80¤ã\82\92è¨å®\9aã\81\99ã\82\8b。"
#. type: Plain text
-#: build/C/man2/signal.2:105
+#: build/C/man2/signal.2:110
msgid "I<signum> is invalid."
msgstr "I<signum> が不正である。"
#. type: Plain text
-#: build/C/man2/signal.2:111
+#: build/C/man2/signal.2:116
msgid "The effects of B<signal>() in a multithreaded process are unspecified."
msgstr ""
"マルチスレッドプロセスにおける B<signal>() の結果は、指定されていない。"
#. type: Plain text
-#: build/C/man2/signal.2:136
+#: build/C/man2/signal.2:141
msgid ""
"See B<sigaction>(2) for details on what happens when B<SIGCHLD> is set to "
"B<SIG_IGN>."
"B<sigaction>(2) を参照すること。"
#. type: Plain text
-#: build/C/man2/signal.2:141
+#: build/C/man2/signal.2:146
msgid ""
"See B<signal>(7) for a list of the async-signal-safe functions that can be "
"safely called from inside a signal handler."
msgstr ""
-"ã\82·ã\82°ã\83\8aã\83«ã\83»ã\83\8fã\83³ã\83\89ã\83©内から安全に呼び出すことができる、 async-signal-safe "
+"ã\82·ã\82°ã\83\8aã\83«ã\83\8fã\83³ã\83\89ã\83©ã\83¼内から安全に呼び出すことができる、 async-signal-safe "
"functions (非同期シングルで安全な関数) の リストについては B<signal>(7) を参"
"照。"
+#. libc4 and libc5 define
+#. .IR SignalHandler ;
#. type: Plain text
-#: build/C/man2/signal.2:156
+#: build/C/man2/signal.2:162
msgid ""
-"The use of I<sighandler_t> is a GNU extension. Various versions of libc "
-"predefine this type; libc4 and libc5 define I<SignalHandler>; glibc defines "
-"I<sig_t> and, when B<_GNU_SOURCE> is defined, also I<sighandler_t>. Without "
-"use of such a type, the declaration of B<signal>() is the somewhat harder "
-"to read:"
+"The use of I<sighandler_t> is a GNU extension, exposed if B<_GNU_SOURCE> is "
+"defined; glibc also defines (the BSD-derived) I<sig_t> if B<_BSD_SOURCE> is "
+"defined. Without use of such a type, the declaration of B<signal>() is the "
+"somewhat harder to read:"
msgstr ""
-"I<sighandler_t> の使用は GNU 拡張である。 各種バージョンの libc でこの型は定"
-"義済みである; libc4 と libc5 では I<SignalHandler> を定義している。 glibc で"
-"は I<sig_t> を定義しており、 B<_GNU_SOURCE> が定義されている場合には "
-"I<sighandler_t> も定義されている。 このような型を使用しないと、 B<signal>() "
-"の宣言は読みにくいものとなる。"
+"I<sighandler_t> の使用は GNU 拡張であり、 B<_GNU_SOURCE> が定義された場合に公"
+"開される。glibc では B<_BSD_SOURCE> が定義された場合には (BSD 由来の) "
+"I<sig_t> も定義される。このような型を使用しないと、 B<signal>() の宣言は読み"
+"にくいものとなる。"
#. type: Plain text
-#: build/C/man2/signal.2:160
+#: build/C/man2/signal.2:166
#, no-wrap
msgid "B<void ( *>I<signal>B<(int >I<signum>B<, void (*>I<handler>B<)(int)) ) (int);>\n"
msgstr "B<void ( *>I<signal>B<(int >I<signum>B<, void (*>I<handler>B<)(int)) ) (int);>\n"
#. type: SS
-#: build/C/man2/signal.2:162
+#: build/C/man2/signal.2:168
#, no-wrap
msgid "Portability"
msgstr "移植性"
#. type: Plain text
-#: build/C/man2/signal.2:174
+#: build/C/man2/signal.2:180
msgid ""
"The only portable use of B<signal>() is to set a signal's disposition to "
"B<SIG_DFL> or B<SIG_IGN>. The semantics when using B<signal>() to "
"permits this variation); B<do not use it for this purpose.>"
msgstr ""
"移植性のある B<signal>() の使い方は、シグナルの処理方法を B<SIG_DFL> か "
-"B<SIG_IGN> ã\81«è¨å®\9aã\81\99ã\82\8bæ\96¹æ³\95ã\81 ã\81\91ã\81§ã\81\82ã\82\8bã\80\82 ã\82·ã\82°ã\83\8aã\83«ã\83»ã\83\8fã\83³ã\83\89ã\83©を設定するのに "
+"B<SIG_IGN> ã\81«è¨å®\9aã\81\99ã\82\8bæ\96¹æ³\95ã\81 ã\81\91ã\81§ã\81\82ã\82\8bã\80\82 ã\82·ã\82°ã\83\8aã\83«ã\83\8fã\83³ã\83\89ã\83©ã\83¼を設定するのに "
"B<signal>() を使ったときの動作はシステムにより異なる (POSIX.1 は明示的にこの"
"違いを認めている)。 B<移植性が必要なときはこのシステムコールを使用しないこ"
"と。>"
#. type: Plain text
-#: build/C/man2/signal.2:180
+#: build/C/man2/signal.2:186
msgid ""
"POSIX.1 solved the portability mess by specifying B<sigaction>(2), which "
"provides explicit control of the semantics when a signal handler is invoked; "
"use that interface instead of B<signal>()."
msgstr ""
"POSIX.1 は、 B<sigaction>(2) を規定することで移植性に関する混乱を解決した。 "
-"B<sigaction>(2) ã\81¯ã\82·ã\82°ã\83\8aã\83«ã\83»ã\83\8fã\83³ã\83\89ã\83©が起動される際の挙動を明示的に制御でき"
+"B<sigaction>(2) ã\81¯ã\82·ã\82°ã\83\8aã\83«ã\83\8fã\83³ã\83\89ã\83©ã\83¼が起動される際の挙動を明示的に制御でき"
"る。 B<signal>() の代わりにこのインターフェイスを使うこと。"
#. type: Plain text
-#: build/C/man2/signal.2:193
+#: build/C/man2/signal.2:196
msgid ""
"In the original UNIX systems, when a handler that was established using "
"B<signal>() was invoked by the delivery of a signal, the disposition of the "
"signal would be reset to B<SIG_DFL>, and the system did not block delivery "
-"of further instances of the signal. System V also provides these semantics "
-"for B<signal>(). This was bad because the signal might be delivered again "
-"before the handler had a chance to reestablish itself. Furthermore, rapid "
-"deliveries of the same signal could result in recursive invocations of the "
-"handler."
+"of further instances of the signal. This is equivalent to calling "
+"B<sigaction>(2) with the following flags:"
+msgstr ""
+"オリジナルの UNIX システムでは、 B<signal>() を使って設定されたハンドラーが"
+"シグナルの配送により起動されると、 そのシグナルの処理方法は B<SIG_DFL> にリ"
+"セットされ、システムは同じシグナルがさらに生成されても シグナルの配送をブロッ"
+"クしなかった。これは、以下のフラグで B<sigaction>(2) を呼び出すのと等価であ"
+"る。"
+
+#. type: Plain text
+#: build/C/man2/signal.2:198
+#, no-wrap
+msgid " sa.sa_flags = SA_RESETHAND | SA_NODEFER;\n"
+msgstr " sa.sa_flags = SA_RESETHAND | SA_NODEFER;\n"
+
+#. type: Plain text
+#: build/C/man2/signal.2:205
+msgid ""
+"System\\ V also provides these semantics for B<signal>(). This was bad "
+"because the signal might be delivered again before the handler had a chance "
+"to reestablish itself. Furthermore, rapid deliveries of the same signal "
+"could result in recursive invocations of the handler."
msgstr ""
-"オリジナルの UNIX システムでは、 B<signal>() を使って設定されたハンドラがシ"
-"グナルの配送により起動されると、 そのシグナルの処理方法は B<SIG_DFL> にリセッ"
-"トされ、システムは同じシグナルがさらに生成されても シグナルの配送をブロックし"
-"なかった。 System V でも、 B<signal>() に対してこれらの挙動を規定している。 "
-"こうした挙動はまずく、ハンドラがハンドラ自身を再設定する機会が 来るより前に、"
-"同じシグナルがまた配送される可能性がある。 さらに、同じシグナルが立て続けに配"
-"送されると、同じシグナルが ハンドラを繰り返し起動されることになる。"
+"System\\ V でも、 B<signal>() に対してこれらの挙動を規定している。 こうした"
+"挙動はまずく、ハンドラーがハンドラー自身を再設定する機会が 来るより前に、同じ"
+"シグナルがまた配送される可能性がある。 さらに、同じシグナルが立て続けに配送さ"
+"れると、同じシグナルが ハンドラーを繰り返し起動されることになる。"
#. type: Plain text
-#: build/C/man2/signal.2:203
+#: build/C/man2/signal.2:220
msgid ""
-"BSD improved on this situation by changing the semantics of signal handling "
-"(but, unfortunately, silently changed the semantics when establishing a "
-"handler with B<signal>()). On BSD, when a signal handler is invoked, the "
-"signal disposition is not reset, and further instances of the signal are "
-"blocked from being delivered while the handler is executing."
+"BSD improved on this situation, but unfortunately also changed the semantics "
+"of the existing B<signal>() interface while doing so. On BSD, when a "
+"signal handler is invoked, the signal disposition is not reset, and further "
+"instances of the signal are blocked from being delivered while the handler "
+"is executing. Furthermore, certain blocking system calls are automatically "
+"restarted if interrupted by a signal handler (see B<signal>(7)). The BSD "
+"semantics are equivalent to calling B<sigaction>(2) with the following "
+"flags:"
msgstr ""
-"BSD では、シグナル処理の挙動を変更することで、この状況を改善した (しかし、残"
-"念なことに、 B<signal>() を使ってハンドラを設定する際に挙動が黙って変更され"
-"る)。 BSD では、シグナルハンドラが起動された際、 シグナルの処理方法はリセット"
-"されず、 ハンドラの実行中は、同じシグナルのさらなる生成は配送がブロックされ"
-"る。"
+"BSD はこの状況が改善したが、残念なことに、その過程で既存の B<signal>() の挙動"
+"も変更された。 BSD では、シグナルハンドラーが起動された際、 シグナルの処理方"
+"法はリセットされず、 ハンドラーの実行中は、同じシグナルのさらなる生成は配送が"
+"ブロックされる。 また、 シグナルハンドラーが中断された場合、 停止中のシステム"
+"コールのいくつかは自動的に再スタートされる。 BSD の挙動は、 以下のフラグを指"
+"定した B<sigaction>(2) の呼び出しと等価である。"
#. type: Plain text
-#: build/C/man2/signal.2:205
+#: build/C/man2/signal.2:222
+#, no-wrap
+msgid " sa.sa_flags = SA_RESTART;\n"
+msgstr " sa.sa_flags = SA_RESTART;\n"
+
+#. type: Plain text
+#: build/C/man2/signal.2:224
msgid "The situation on Linux is as follows:"
msgstr "Linux での状況は以下の通りである。"
#. type: Plain text
-#: build/C/man2/signal.2:209
-msgid "The kernel's B<signal>() system call provides System V semantics."
-msgstr "カーネルの B<signal>() システムコールは System V 方式を提供している。"
+#: build/C/man2/signal.2:228
+msgid "The kernel's B<signal>() system call provides System\\ V semantics."
+msgstr ""
+"カーネルの B<signal>() システムコールは System\\ V 方式を提供している。"
#. type: Plain text
-#: build/C/man2/signal.2:225
+#: build/C/man2/signal.2:244
msgid ""
"By default, in glibc 2 and later, the B<signal>() wrapper function does not "
"invoke the kernel system call. Instead, it calls B<sigaction>(2) using "
#. System V semantics are also provided if one uses the separate
#. .BR sysv_signal (3)
#. function.
+#. .IP *
+#. The
+#. .BR signal ()
+#. function in Linux libc4 and libc5 provide System\ V semantics.
+#. If one on a libc5 system includes
+#. .I <bsd/signal.h>
+#. instead of
+#. .IR <signal.h> ,
+#. then
+#. .BR signal ()
+#. provides BSD semantics.
#. type: Plain text
-#: build/C/man2/signal.2:248
+#: build/C/man2/signal.2:278
msgid ""
"On glibc 2 and later, if the B<_BSD_SOURCE> feature test macro is not "
-"defined, then B<signal>() provides System V semantics. (The default "
-"implicit definition of B<_BSD_SOURCE> is not provided if one invokes B<gcc>"
-"(1) in one of its standard modes (I<-std=xxx> or I<-ansi>) or defines "
-"various other feature test macros such as B<_POSIX_SOURCE>, "
+"defined, then B<signal>() provides System\\ V semantics. (The default "
+"implicit definition of B<_BSD_SOURCE> is not provided if one invokes "
+"B<gcc>(1) in one of its standard modes (I<-std=xxx> or I<-ansi>) or "
+"defines various other feature test macros such as B<_POSIX_SOURCE>, "
"B<_XOPEN_SOURCE>, or B<_SVID_SOURCE>; see B<feature_test_macros>(7).)"
msgstr ""
"glibc 2 以降では、機能検査マクロ B<_BSD_SOURCE> が定義されていなければ、 "
-"B<signal>() は System V 方式となる。 (B<gcc>(1) が標準指定モード (I<-"
+"B<signal>() は System\\ V 方式となる。 (B<gcc>(1) が標準指定モード (I<-"
"std=xxx> or I<-ansi>) で起動された場合、もしくは B<_POSIX_SOURCE>, "
"B<_XOPEN_SOURCE>, B<_SVID_SOURCE> といった他の様々な機能検査マクロが定義され"
"た場合、 デフォルトの B<_BSD_SOURCE> の暗黙の定義は行われない。 "
"B<feature_test_macros>(7) を参照のこと。)"
#. type: Plain text
-#: build/C/man2/signal.2:259
-msgid ""
-"The B<signal>() function in Linux libc4 and libc5 provide System V "
-"semantics. If one on a libc5 system includes I<E<lt>bsd/signal.hE<gt>> "
-"instead of I<E<lt>signal.hE<gt>>, then B<signal>() provides BSD semantics."
-msgstr ""
-"Linux の libc4 と libc5 の B<signal>() 関数は System V 方式である。 libc5 シ"
-"ステムにおいて I<E<lt>signal.hE<gt>> のかわりに I<E<lt>bsd/signal.hE<gt>> を"
-"インクルードすると、 B<signal>() は B<__bsd_signal>() に再定義され、 "
-"B<signal>() は BSD 方式となる。"
-
-#. type: Plain text
-#: build/C/man2/signal.2:278
+#: build/C/man2/signal.2:297
msgid ""
-"B<kill>(1), B<alarm>(2), B<kill>(2), B<killpg>(2), B<pause>(2), B<sigaction>"
-"(2), B<signalfd>(2), B<sigpending>(2), B<sigprocmask>(2), B<sigsuspend>(2), "
-"B<bsd_signal>(3), B<raise>(3), B<siginterrupt>(3), B<sigqueue>(3), "
-"B<sigsetops>(3), B<sigvec>(3), B<sysv_signal>(3), B<signal>(7)"
+"B<kill>(1), B<alarm>(2), B<kill>(2), B<killpg>(2), B<pause>(2), "
+"B<sigaction>(2), B<signalfd>(2), B<sigpending>(2), B<sigprocmask>(2), "
+"B<sigsuspend>(2), B<bsd_signal>(3), B<raise>(3), B<siginterrupt>(3), "
+"B<sigqueue>(3), B<sigsetops>(3), B<sigvec>(3), B<sysv_signal>(3), "
+"B<signal>(7)"
msgstr ""
-"B<kill>(1), B<alarm>(2), B<kill>(2), B<killpg>(2), B<pause>(2), B<sigaction>"
-"(2), B<signalfd>(2), B<sigpending>(2), B<sigprocmask>(2), B<sigsuspend>(2), "
-"B<bsd_signal>(3), B<raise>(3), B<siginterrupt>(3), B<sigqueue>(3), "
-"B<sigsetops>(3), B<sigvec>(3), B<sysv_signal>(3), B<signal>(7)"
+"B<kill>(1), B<alarm>(2), B<kill>(2), B<killpg>(2), B<pause>(2), "
+"B<sigaction>(2), B<signalfd>(2), B<sigpending>(2), B<sigprocmask>(2), "
+"B<sigsuspend>(2), B<bsd_signal>(3), B<raise>(3), B<siginterrupt>(3), "
+"B<sigqueue>(3), B<sigsetops>(3), B<sigvec>(3), B<sysv_signal>(3), "
+"B<signal>(7)"
#. type: Plain text
-#: build/C/man7/signal.7:47
+#: build/C/man7/signal.7:49
msgid "signal - overview of signals"
msgstr "signal - シグナルの概要"
#. type: Plain text
-#: build/C/man7/signal.7:50
+#: build/C/man7/signal.7:52
msgid ""
"Linux supports both POSIX reliable signals (hereinafter \"standard signals"
"\") and POSIX real-time signals."
"と POSIX リアルタイムシグナルの両方に対応している。"
#. type: SS
-#: build/C/man7/signal.7:50
+#: build/C/man7/signal.7:52
#, no-wrap
-msgid "Signal Dispositions"
+msgid "Signal dispositions"
msgstr "シグナル処理方法"
#. type: Plain text
-#: build/C/man7/signal.7:55
+#: build/C/man7/signal.7:57
msgid ""
"Each signal has a current I<disposition>, which determines how the process "
"behaves when it is delivered the signal."
"法によりシグナルが配送された際にプロセスが どのような振舞いをするかが決まる。"
#. type: Plain text
-#: build/C/man7/signal.7:58
+#: build/C/man7/signal.7:60
msgid ""
"The entries in the \"Action\" column of the tables below specify the default "
"disposition for each signal, as follows:"
msgstr ""
-"å¾\8cè¿°ã\81®è¡¨ã\81® \"å\8b\95ä½\9c\" ã\81®æ¬\84ã\81®ã\82¨ã\83³ã\83\88ã\83ªã\81¯å\90\84ã\82·ã\82°ã\83\8aã\83«ã\81®ã\83\87ã\83\95ã\82©ã\83«ã\83\88ã\81® å\87¦ç\90\86æ\96¹æ³\95ã\82\92示ã\81\97ã\81¦"
-"おり、以下のような意味を持つ。"
+"å¾\8cè¿°ã\81®è¡¨ã\81® \"å\8b\95ä½\9c\" ã\81®æ¬\84ã\81®ã\82¨ã\83³ã\83\88ã\83ªã\83¼ã\81¯å\90\84ã\82·ã\82°ã\83\8aã\83«ã\81®ã\83\87ã\83\95ã\82©ã\83«ã\83\88ã\81® å\87¦ç\90\86æ\96¹æ³\95ã\82\92示ã\81\97"
+"ã\81¦ã\81\8aã\82\8aã\80\81以ä¸\8bã\81®ã\82\88ã\81\86ã\81ªæ\84\8få\91³ã\82\92æ\8c\81ã\81¤ã\80\82"
#. type: IP
-#: build/C/man7/signal.7:58
+#: build/C/man7/signal.7:60
#, no-wrap
msgid "Term"
msgstr "Term"
#. type: Plain text
-#: build/C/man7/signal.7:60
+#: build/C/man7/signal.7:62
msgid "Default action is to terminate the process."
msgstr "デフォルトの動作はプロセス終了。"
#. type: IP
-#: build/C/man7/signal.7:60
+#: build/C/man7/signal.7:62
#, no-wrap
msgid "Ign"
msgstr "Ign"
#. type: Plain text
-#: build/C/man7/signal.7:62
+#: build/C/man7/signal.7:64
msgid "Default action is to ignore the signal."
msgstr "デフォルトの動作はこのシグナルの無視。"
#. type: IP
-#: build/C/man7/signal.7:62
+#: build/C/man7/signal.7:64
#, no-wrap
msgid "Core"
msgstr "Core"
#. type: Plain text
-#: build/C/man7/signal.7:65
+#: build/C/man7/signal.7:67
msgid ""
"Default action is to terminate the process and dump core (see B<core>(5))."
msgstr "デフォルトの動作はプロセス終了とコアダンプ出力 (B<core>(5) 参照)。"
#. type: IP
-#: build/C/man7/signal.7:65
+#: build/C/man7/signal.7:67
#, no-wrap
msgid "Stop"
msgstr "Stop"
#. type: Plain text
-#: build/C/man7/signal.7:67
+#: build/C/man7/signal.7:69
msgid "Default action is to stop the process."
msgstr "デフォルトの動作はプロセスの一時停止。"
#. type: IP
-#: build/C/man7/signal.7:67
+#: build/C/man7/signal.7:69
#, no-wrap
msgid "Cont"
msgstr "Cont"
#. type: Plain text
-#: build/C/man7/signal.7:69
+#: build/C/man7/signal.7:71
msgid "Default action is to continue the process if it is currently stopped."
msgstr "デフォルトの動作は、プロセスが停止中の場合にその実行の再開。"
#. type: Plain text
-#: build/C/man7/signal.7:91
+#: build/C/man7/signal.7:93
msgid ""
"A process can change the disposition of a signal using B<sigaction>(2) or "
"B<signal>(2). (The latter is less portable when establishing a signal "
"a discussion of how to do this and when it might be useful.)"
msgstr ""
"プロセスは、 B<sigaction>(2) や B<signal>(2) を使って、シグナルの処理方法を"
-"å¤\89æ\9b´ã\81\99ã\82\8bã\81\93ã\81¨ã\81\8cã\81§ã\81\8dã\82\8b (B<signal>(2) ã\81®æ\96¹ã\81\8cã\82·ã\82°ã\83\8aã\83«ã\83\8fã\83³ã\83\89ã\83©ã\82\92è¨å®\9aã\81\99ã\82\8bé\9a\9bã\81®ç§»æ¤\8d"
-"æ\80§ã\81\8cä½\8eã\81\84; 詳細ã\81¯ B<signal>(2) ã\82\92å\8f\82ç\85§)ã\80\82 ã\82·ã\82°ã\83\8aã\83«ã\81®é\85\8dé\80\81æ\99\82ã\81«èµ·ã\81\93ã\82\8bå\8b\95ä½\9cã\81¨ã\81\97ã\81¦ "
-"ã\83\97ã\83ã\82»ã\82¹ã\81\8cé\81¸æ\8a\9eã\81§ã\81\8dã\82\8bã\81®ã\81¯ã\80\81次ã\81®ã\81\84ã\81\9aã\82\8cã\81\8bä¸\80ã\81¤ã\81§ã\81\82ã\82\8bã\80\82 ã\83\87ã\83\95ã\82©ã\83«ã\83\88ã\81®å\8b\95ä½\9cã\82\92å®\9fè¡\8cã\81\99"
-"ã\82\8bã\80\81ã\82·ã\82°ã\83\8aã\83«ã\82\92ç\84¡è¦\96ã\81\99ã\82\8bã\80\81 I<ã\82·ã\82°ã\83\8aã\83«ã\83\8fã\83³ã\83\89ã\83© (signal handler)> ã\81§ã\82·ã\82°ã\83\8aã\83«ã\82\92æ\8d\95"
-"捉する。シグナルハンドラとは、シグナル配送時に 自動的に起動されるプログラマ定"
-"義の関数である。 (デフォルトでは、シグナルハンドラは通常のプロセスのスタック"
-"上で起動される。 シグナルハンドラが代替スタック (alternate stack) を使用する"
-"ã\82\88ã\81\86ã\81«è¨å®\9aã\81\99ã\82\8b ã\81\93ã\81¨ã\82\82ã\81§ã\81\8dã\82\8bã\80\82代æ\9b¿ã\82¹ã\82¿ã\83\83ã\82¯ã\82\92使ç\94¨ã\81\99ã\82\8bã\82\88ã\81\86ã\81«è¨å®\9aã\81\99ã\82\8bæ\96¹æ³\95ã\81¨ã\80\81ã\81©ã\81®"
-"ような際に 代替スタックが役に立つかについての議論については B<sigaltstack>"
-"(2) を参照のこと。"
+"å¤\89æ\9b´ã\81\99ã\82\8bã\81\93ã\81¨ã\81\8cã\81§ã\81\8dã\82\8b (B<signal>(2) ã\81®æ\96¹ã\81\8cã\82·ã\82°ã\83\8aã\83«ã\83\8fã\83³ã\83\89ã\83©ã\83¼ã\82\92è¨å®\9aã\81\99ã\82\8bé\9a\9bã\81®ç§»"
+"æ¤\8dæ\80§ã\81\8cä½\8eã\81\84; 詳細ã\81¯ B<signal>(2) ã\82\92å\8f\82ç\85§)ã\80\82 ã\82·ã\82°ã\83\8aã\83«ã\81®é\85\8dé\80\81æ\99\82ã\81«èµ·ã\81\93ã\82\8bå\8b\95ä½\9cã\81¨ã\81\97"
+"ã\81¦ ã\83\97ã\83ã\82»ã\82¹ã\81\8cé\81¸æ\8a\9eã\81§ã\81\8dã\82\8bã\81®ã\81¯ã\80\81次ã\81®ã\81\84ã\81\9aã\82\8cã\81\8bä¸\80ã\81¤ã\81§ã\81\82ã\82\8bã\80\82 ã\83\87ã\83\95ã\82©ã\83«ã\83\88ã\81®å\8b\95ä½\9cã\82\92å®\9fè¡\8c"
+"ã\81\99ã\82\8bã\80\81ã\82·ã\82°ã\83\8aã\83«ã\82\92ç\84¡è¦\96ã\81\99ã\82\8bã\80\81 I<ã\82·ã\82°ã\83\8aã\83«ã\83\8fã\83³ã\83\89ã\83©ã\83¼ (signal handler)> ã\81§ã\82·ã\82°ã\83\8aã\83«"
+"を捕捉する。シグナルハンドラーとは、シグナル配送時に 自動的に起動されるプログ"
+"ラマ定義の関数である。 (デフォルトでは、シグナルハンドラーは通常のプロセスの"
+"スタック上で起動される。 シグナルハンドラーが代替スタック (alternate stack) "
+"ã\82\92使ç\94¨ã\81\99ã\82\8bã\82\88ã\81\86ã\81«è¨å®\9aã\81\99ã\82\8b ã\81\93ã\81¨ã\82\82ã\81§ã\81\8dã\82\8bã\80\82代æ\9b¿ã\82¹ã\82¿ã\83\83ã\82¯ã\82\92使ç\94¨ã\81\99ã\82\8bã\82\88ã\81\86ã\81«è¨å®\9aã\81\99ã\82\8bæ\96¹"
+"法と、どのような際に 代替スタックが役に立つかについての議論については "
+"B<sigaltstack>(2) を参照のこと。"
#. type: Plain text
-#: build/C/man7/signal.7:95
+#: build/C/man7/signal.7:97
msgid ""
"The signal disposition is a per-process attribute: in a multithreaded "
"application, the disposition of a particular signal is the same for all "
"ンでは、あるシグナルの処理方法は 全てのスレッドで同じである。"
#. type: SS
-#: build/C/man7/signal.7:103
+#: build/C/man7/signal.7:105
#, no-wrap
-msgid "Sending a Signal"
+msgid "Sending a signal"
msgstr "シグナルの送信"
#. type: Plain text
-#: build/C/man7/signal.7:106
+#: build/C/man7/signal.7:108
msgid ""
"The following system calls and library functions allow the caller to send a "
"signal:"
"ことができる。"
#. type: TP
-#: build/C/man7/signal.7:106
+#: build/C/man7/signal.7:108
#, no-wrap
msgid "B<raise>(3)"
msgstr "B<raise>(3)"
#. type: Plain text
-#: build/C/man7/signal.7:109
+#: build/C/man7/signal.7:111
msgid "Sends a signal to the calling thread."
msgstr "呼び出したスレッドにシグナルを送る。"
#. type: TP
-#: build/C/man7/signal.7:109
+#: build/C/man7/signal.7:111
#, no-wrap
msgid "B<kill>(2)"
msgstr "B<kill>(2)"
#. type: Plain text
-#: build/C/man7/signal.7:114
+#: build/C/man7/signal.7:116
msgid ""
"Sends a signal to a specified process, to all members of a specified process "
"group, or to all processes on the system."
"ロセスにシグナルを送る。"
#. type: TP
-#: build/C/man7/signal.7:114
+#: build/C/man7/signal.7:116
#, no-wrap
msgid "B<killpg>(2)"
msgstr "B<killpg>(2)"
#. type: Plain text
-#: build/C/man7/signal.7:117
+#: build/C/man7/signal.7:119
msgid "Sends a signal to all of the members of a specified process group."
msgstr "指定されたプロセスグループの全メンバーにシグナルを送る。"
#. type: TP
-#: build/C/man7/signal.7:117
+#: build/C/man7/signal.7:119
#, no-wrap
msgid "B<pthread_kill>(3)"
msgstr "B<pthread_kill>(3)"
#. type: Plain text
-#: build/C/man7/signal.7:121
+#: build/C/man7/signal.7:123
msgid ""
"Sends a signal to a specified POSIX thread in the same process as the caller."
msgstr ""
"呼び出し者と同じプロセス内の指定された POSIX スレッドにシグナルを送る。"
#. type: TP
-#: build/C/man7/signal.7:121
+#: build/C/man7/signal.7:123
#, no-wrap
msgid "B<tgkill>(2)"
msgstr "B<tgkill>(2)"
#. type: Plain text
-#: build/C/man7/signal.7:126
+#: build/C/man7/signal.7:128
msgid ""
"Sends a signal to a specified thread within a specific process. (This is "
"the system call used to implement B<pthread_kill>(3).)"
"指定されたプロセス内の指定されたスレッドにシグナルを送る (このシステムコール"
"を使って B<pthread_kill>(3) は実装されている)。"
+#. type: TP
+#: build/C/man7/signal.7:128
+#, no-wrap
+msgid "B<sigqueue>(3)"
+msgstr "B<sigqueue>(3)"
+
#. type: Plain text
-#: build/C/man7/signal.7:129
+#: build/C/man7/signal.7:131
msgid "Sends a real-time signal with accompanying data to a specified process."
msgstr "指定されたプロセスに付属データとともにリアルタイムシグナルを送る。"
#. type: SS
-#: build/C/man7/signal.7:129
+#: build/C/man7/signal.7:131
#, no-wrap
-msgid "Waiting for a Signal to be Caught"
+msgid "Waiting for a signal to be caught"
msgstr "シグナルが捕捉されるのを待つ"
#. type: Plain text
-#: build/C/man7/signal.7:133
+#: build/C/man7/signal.7:135
msgid ""
"The following system calls suspend execution of the calling process or "
"thread until a signal is caught (or an unhandled signal terminates the "
"process):"
msgstr ""
"以下のシステムコールを使って、シグナルが捕捉されるまで 呼び出したプロセスやス"
-"ã\83¬ã\83\83ã\83\89ã\81®å®\9fè¡\8cã\82\92ä¸æ\96 (suspend) ã\81\99ã\82\8bã\81\93ã\81¨ã\81\8cã\81§ã\81\8dã\82\8b (ã\83\8fã\83³ã\83\89ã\83©ã\81\8cè¨å®\9aã\81\95ã\82\8cã\81¦ã\81\84ã\81ªã\81\84ã\82·ã\82°"
-"ナルによりそのプロセスが終了した 場合にも実行の停止は終了する)。"
+"ã\83¬ã\83\83ã\83\89ã\81®å®\9fè¡\8cã\82\92ä¸æ\96 (suspend) ã\81\99ã\82\8bã\81\93ã\81¨ã\81\8cã\81§ã\81\8dã\82\8b (ã\83\8fã\83³ã\83\89ã\83©ã\83¼ã\81\8cè¨å®\9aã\81\95ã\82\8cã\81¦ã\81\84ã\81ªã\81\84ã\82·"
+"ã\82°ã\83\8aã\83«ã\81«ã\82\88ã\82\8aã\81\9dã\81®ã\83\97ã\83ã\82»ã\82¹ã\81\8cçµ\82äº\86ã\81\97ã\81\9f å ´å\90\88ã\81«ã\82\82å®\9fè¡\8cã\81®å\81\9cæ¢ã\81¯çµ\82äº\86ã\81\99ã\82\8b)ã\80\82"
#. type: TP
-#: build/C/man7/signal.7:133
+#: build/C/man7/signal.7:135
#, no-wrap
msgid "B<pause>(2)"
msgstr "B<pause>(2)"
#. type: Plain text
-#: build/C/man7/signal.7:136
+#: build/C/man7/signal.7:138
msgid "Suspends execution until any signal is caught."
msgstr "何かシグナルが捕捉されるまで実行を停止する。"
#. type: TP
-#: build/C/man7/signal.7:136
+#: build/C/man7/signal.7:138
#, no-wrap
msgid "B<sigsuspend>(2)"
msgstr "B<sigsuspend>(2)"
#. type: Plain text
-#: build/C/man7/signal.7:140
+#: build/C/man7/signal.7:142
msgid ""
"Temporarily changes the signal mask (see below) and suspends execution until "
"one of the unmasked signals is caught."
"れかが捕捉されるまで 実行を中断する。"
#. type: SS
-#: build/C/man7/signal.7:140
+#: build/C/man7/signal.7:142
#, no-wrap
-msgid "Synchronously Accepting a Signal"
+msgid "Synchronously accepting a signal"
msgstr "シグナルの同期受信"
#. type: Plain text
-#: build/C/man7/signal.7:147
+#: build/C/man7/signal.7:149
msgid ""
"Rather than asynchronously catching a signal via a signal handler, it is "
"possible to synchronously accept the signal, that is, to block execution "
"until the signal is delivered, at which point the kernel returns information "
"about the signal to the caller. There are two general ways to do this:"
msgstr ""
-"シグナルハンドラ経由でシグナルを非同期 (asynchronously) で捕捉する以外にも、 "
-"ã\82·ã\82°ã\83\8aã\83«ã\82\92å\90\8cæ\9c\9f (synchronously) ã\81\97ã\81¦å\8f\97ã\81\91ä»\98ã\81\91ã\82\8bã\81\93ã\81¨ã\82\82ã\81§ã\81\8dã\82\8bã\80\82 å\90\8cæ\9c\9fã\81\97ã\81¦å\8f\97ã\81\91ä»\98け"
-"るとは、シグナルが配送されるまで実行を停止 (block) するということである。シ"
-"ã\82°ã\83\8aã\83«ã\82\92å\8f\97ã\81\91ä»\98ã\81\91ã\81\9fé\9a\9bã\81«ã\80\81ã\82«ã\83¼ã\83\8dã\83«ã\81¯ ã\81\9dã\81®ã\82·ã\82°ã\83\8aã\83«ã\81«é\96¢ã\81\99ã\82\8bæ\83\85å ±ã\82\92å\91¼ã\81³å\87ºã\81\97è\80\85ã\81«è¿\94"
-"す。 これを行う一般的な方法が二つある。"
+"シグナルハンドラー経由でシグナルを非同期 (asynchronously) で捕捉する以外に"
+"ã\82\82ã\80\81 ã\82·ã\82°ã\83\8aã\83«ã\82\92å\90\8cæ\9c\9f (synchronously) ã\81\97ã\81¦å\8f\97ã\81\91ä»\98ã\81\91ã\82\8bã\81\93ã\81¨ã\82\82ã\81§ã\81\8dã\82\8bã\80\82 å\90\8cæ\9c\9fã\81\97ã\81¦å\8f\97け"
+"付けるとは、シグナルが配送されるまで実行を停止 (block) するということであ"
+"ã\82\8bã\80\82ã\82·ã\82°ã\83\8aã\83«ã\82\92å\8f\97ã\81\91ä»\98ã\81\91ã\81\9fé\9a\9bã\81«ã\80\81ã\82«ã\83¼ã\83\8dã\83«ã\81¯ ã\81\9dã\81®ã\82·ã\82°ã\83\8aã\83«ã\81«é\96¢ã\81\99ã\82\8bæ\83\85å ±ã\82\92å\91¼ã\81³å\87ºã\81\97è\80\85"
+"ã\81«è¿\94ã\81\99ã\80\82 ã\81\93ã\82\8cã\82\92è¡\8cã\81\86ä¸\80è\88¬ç\9a\84ã\81ªæ\96¹æ³\95ã\81\8cäº\8cã\81¤ã\81\82ã\82\8bã\80\82"
#. type: Plain text
-#: build/C/man7/signal.7:155
+#: build/C/man7/signal.7:157
msgid ""
"B<sigwaitinfo>(2), B<sigtimedwait>(2), and B<sigwait>(3) suspend execution "
"until one of the signals in a specified set is delivered. Each of these "
"でも、配送されたシグナルに関する情報が返される。"
#. type: Plain text
-#: build/C/man7/signal.7:168
+#: build/C/man7/signal.7:170
msgid ""
"B<signalfd>(2) returns a file descriptor that can be used to read "
-"information about signals that are delivered to the caller. Each B<read>"
-"(2) from this file descriptor blocks until one of the signals in the set "
-"specified in the B<signalfd>(2) call is delivered to the caller. The "
+"information about signals that are delivered to the caller. Each "
+"B<read>(2) from this file descriptor blocks until one of the signals in the "
+"set specified in the B<signalfd>(2) call is delivered to the caller. The "
"buffer returned by B<read>(2) contains a structure describing the signal."
msgstr ""
-"B<signalfd>(2) ã\81\8cè¿\94ã\81\99ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\82\92使ã\81\86ã\81¨ã\80\81å\91¼ã\81³å\87ºã\81\97å\85\83ã\81«é\85\8dé\80\81ã\81\95ã\82\8cã\81\9f "
-"ã\82·ã\82°ã\83\8aã\83«ã\81«é\96¢ã\81\99ã\82\8bæ\83\85å ±ã\82\92èªã\81¿å\87ºã\81\99ã\81\93ã\81¨ã\81\8cã\81§ã\81\8dã\82\8bã\80\82 ã\81\93ã\81®ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\81\8bã\82\89"
-"ã\81® B<read>(2) ã\81¯ã\80\81 B<signalfd>(2) ã\81®å\91¼ã\81³å\87ºã\81\97æ\99\82ã\81«æ\8c\87å®\9aã\81\95ã\82\8cã\81\9fã\82·ã\82°ã\83\8aã\83«é\9b\86å\90\88ã\81®ã\82·"
-"ã\82°ã\83\8aã\83«ã\81®ä¸\80ã\81¤ã\81\8cå\91¼ã\81³å\87ºã\81\97å\85\83ã\81« é\85\8dé\80\81ã\81\95ã\82\8cã\82\8bã\81¾ã\81§å\81\9cæ¢ (block) ã\81\99ã\82\8bã\80\82 B<read>(2) ã\81\8cè¿\94"
-"ã\81\99ã\83\90ã\83\83ã\83\95ã\82¡にはシグナルに関する情報を格納した構造体が入っている。"
+"B<signalfd>(2) ã\81\8cè¿\94ã\81\99ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\83¼ã\82\92使ã\81\86ã\81¨ã\80\81å\91¼ã\81³å\87ºã\81\97å\85\83ã\81«é\85\8dé\80\81ã\81\95ã\82\8c"
+"ã\81\9f ã\82·ã\82°ã\83\8aã\83«ã\81«é\96¢ã\81\99ã\82\8bæ\83\85å ±ã\82\92èªã\81¿å\87ºã\81\99ã\81\93ã\81¨ã\81\8cã\81§ã\81\8dã\82\8bã\80\82 ã\81\93ã\81®ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\83¼"
+"ã\81\8bã\82\89ã\81® B<read>(2) ã\81¯ã\80\81 B<signalfd>(2) ã\81®å\91¼ã\81³å\87ºã\81\97æ\99\82ã\81«æ\8c\87å®\9aã\81\95ã\82\8cã\81\9fã\82·ã\82°ã\83\8aã\83«é\9b\86å\90\88"
+"ã\81®ã\82·ã\82°ã\83\8aã\83«ã\81®ä¸\80ã\81¤ã\81\8cå\91¼ã\81³å\87ºã\81\97å\85\83ã\81« é\85\8dé\80\81ã\81\95ã\82\8cã\82\8bã\81¾ã\81§å\81\9cæ¢ (block) ã\81\99ã\82\8bã\80\82 B<read>(2) "
+"ã\81\8cè¿\94ã\81\99ã\83\90ã\83\83ã\83\95ã\82¡ã\83¼にはシグナルに関する情報を格納した構造体が入っている。"
#. type: SS
-#: build/C/man7/signal.7:168
+#: build/C/man7/signal.7:170
#, no-wrap
-msgid "Signal Mask and Pending Signals"
+msgid "Signal mask and pending signals"
msgstr "シグナルマスクと処理待ちシグナル"
#. type: Plain text
-#: build/C/man7/signal.7:175
+#: build/C/man7/signal.7:177
msgid ""
"A signal may be I<blocked>, which means that it will not be delivered until "
"it is later unblocked. Between the time when it is generated and when it is "
"ら配送されるまでの間、そのシグナルは I<処理待ち (pending)> であると呼ばれる。"
#. type: Plain text
-#: build/C/man7/signal.7:184
+#: build/C/man7/signal.7:186
msgid ""
"Each thread in a process has an independent I<signal mask>, which indicates "
"the set of signals that the thread is currently blocking. A thread can "
"プロセス内の各スレッドは、それぞれ独立な I<シグナルマスク (signal mask)> を持"
"つ。シグナルマスクはそのスレッドが現在ブロックしている シグナル集合を示すもの"
"である。 スレッドは、 B<pthread_sigmask>(3) を使って自分のシグナルマスクを操"
-"作できる。 伝統的なシングルスレッドのアプリケーションでは、 B<sigprocmask>"
-"(2) を使って、シグナルマスクを操作できる。"
+"作できる。 伝統的なシングルスレッドのアプリケーションでは、 "
+"B<sigprocmask>(2) を使って、シグナルマスクを操作できる。"
#. type: Plain text
-#: build/C/man7/signal.7:190 build/C/man2/sigprocmask.2:113
+#: build/C/man7/signal.7:192 build/C/man2/sigprocmask.2:126
msgid ""
"A child created via B<fork>(2) inherits a copy of its parent's signal mask; "
"the signal mask is preserved across B<execve>(2)."
"継承する。 B<execve>(2) の前後でシグナルマスクは保持される。"
#. type: Plain text
-#: build/C/man7/signal.7:207
+#: build/C/man7/signal.7:209
msgid ""
"A signal may be generated (and thus pending) for a process as a whole (e."
"g., when sent using B<kill>(2)) or for a specific thread (e.g., certain "
"to deliver the signal."
msgstr ""
"生成されるシグナル (したがって処理待ちとなるシグナル) には、 プロセス全体宛て"
-"と特定のスレッド宛てがある。 例えば、プロセス全体宛てのシグナルは B<kill>"
-"(2) を使って送信される。 特定のマシン語の命令の実行の結果として生成される、 "
-"B<SIGSEGV> や B<SIGFPE> などのシグナルは、スレッド宛てとなる。 また、 "
+"と特定のスレッド宛てがある。 例えば、プロセス全体宛てのシグナルは "
+"B<kill>(2) を使って送信される。 特定のマシン語の命令の実行の結果として生成さ"
+"れる、 B<SIGSEGV> や B<SIGFPE> などのシグナルは、スレッド宛てとなる。 また、 "
"B<pthread_kill>(3) を使って特定のスレッド宛てに生成されたシグナルも スレッド"
"宛てとなる。 プロセス宛てのシグナルは、そのシグナルをブロックしていないスレッ"
"ドのうち いずれかの一つに配送することができる。そのシグナルをブロックしていな"
"択する。"
#. type: Plain text
-#: build/C/man7/signal.7:214
+#: build/C/man7/signal.7:216
msgid ""
"A thread can obtain the set of signals that it currently has pending using "
"B<sigpending>(2). This set will consist of the union of the set of pending "
"ド宛てのシグナルの両方から構成される。"
#. type: Plain text
-#: build/C/man7/signal.7:220 build/C/man2/sigpending.2:76
+#: build/C/man7/signal.7:222 build/C/man2/sigpending.2:85
msgid ""
"A child created via B<fork>(2) initially has an empty pending signal set; "
"the pending signal set is preserved across an B<execve>(2)."
"で初期化される。 B<execve>(2) の前後で、処理待ちのシグナル集合は保持される。"
#. type: SS
-#: build/C/man7/signal.7:220
+#: build/C/man7/signal.7:222
#, no-wrap
-msgid "Standard Signals"
+msgid "Standard signals"
msgstr "標準シグナル"
-#. parisc is a law unto itself
#. type: Plain text
-#: build/C/man7/signal.7:230
+#: build/C/man7/signal.7:234
msgid ""
"Linux supports the standard signals listed below. Several signal numbers "
"are architecture-dependent, as indicated in the \"Value\" column. (Where "
"three values are given, the first one is usually valid for alpha and sparc, "
-"the middle one for ix86, ia64, ppc, s390, arm and sh, and the last one for "
-"mips. A - denotes that a signal is absent on the corresponding "
-"architecture.)"
+"the middle one for x86, arm, and most other architectures, and the last one "
+"for mips. (Values for parisc are I<not> shown; see the Linux kernel source "
+"for signal numbering on that architecture.) A - denotes that a signal is "
+"absent on the corresponding architecture.)"
msgstr ""
-"Linux は以下に示す標準シグナルに対応している。 シグナル番号の一部はアーキテク"
-"チャ依存であり、\"値\" 欄に示す通りである。 (3つの値が書かれているものは、 1"
-"つ目が alpha と sparc で通常有効な値、 真ん中が ix86, ia64, ppc, s390, arm, "
-"sh での値、最後が mips での値である。 - はそのアーキテクチャにおいて対応する"
-"シグナルがないことを示す。)"
+"Linux は以下に示す標準シグナルに対応している。シグナル番号の一部はアーキテク"
+"チャー依存であり、\"値\" 欄に示す通りである。 (3つの値が書かれているものは、 "
+"1つ目が alpha と sparc で通常有効な値、 真ん中が x86, arm や他のほとんどの"
+"アーキテクチャーでの有効な値、最後が mips での値である。 (parisc での値は記載"
+"されてI<いない>。 parisc でのシグナル番号は Linux カーネルソースを参照してほ"
+"しい)。 - はそのアーキテクチャーにおいて対応するシグナルがないことを示す。)"
#. type: Plain text
-#: build/C/man7/signal.7:232
+#: build/C/man7/signal.7:236
msgid "First the signals described in the original POSIX.1-1990 standard."
msgstr "最初に、POSIX.1-1990 に定義されているシグナルを示す。"
#. type: tbl table
-#: build/C/man7/signal.7:236 build/C/man7/signal.7:272
-#: build/C/man7/signal.7:301
+#: build/C/man7/signal.7:240 build/C/man7/signal.7:276
+#: build/C/man7/signal.7:305
#, no-wrap
msgid "Signal\tValue\tAction\tComment\n"
msgstr "シグナル\t値\t動作\tコメント\n"
#. type: tbl table
-#: build/C/man7/signal.7:237
+#: build/C/man7/signal.7:241
#, no-wrap
msgid "SIGHUP\t\\01\tTerm\tHangup detected on controlling terminal\n"
msgstr "SIGHUP\t\\01\tTerm\t制御端末(controlling terminal)のハングアップ検出、\n"
#. type: tbl table
-#: build/C/man7/signal.7:238
+#: build/C/man7/signal.7:242
#, no-wrap
msgid "\t\t\tor death of controlling process\n"
msgstr "\t\t\tまたは制御しているプロセスの死\n"
#. type: tbl table
-#: build/C/man7/signal.7:239
+#: build/C/man7/signal.7:243
#, no-wrap
msgid "SIGINT\t\\02\tTerm\tInterrupt from keyboard\n"
msgstr "SIGINT\t\\02\tTerm\tキーボードからの割り込み (Interrupt)\n"
#. type: tbl table
-#: build/C/man7/signal.7:240
+#: build/C/man7/signal.7:244
#, no-wrap
msgid "SIGQUIT\t\\03\tCore\tQuit from keyboard\n"
msgstr "SIGQUIT\t\\03\tCore\tキーボードによる中止 (Quit)\n"
#. type: tbl table
-#: build/C/man7/signal.7:241
+#: build/C/man7/signal.7:245
#, no-wrap
msgid "SIGILL\t\\04\tCore\tIllegal Instruction\n"
msgstr "SIGILL\t\\04\tCore\t不正な命令\n"
#. type: tbl table
-#: build/C/man7/signal.7:242
+#: build/C/man7/signal.7:246
#, no-wrap
msgid "SIGABRT\t\\06\tCore\tAbort signal from B<abort>(3)\n"
msgstr "SIGABRT\t\\06\tCore\tB<abort>(3) からの中断 (Abort) シグナル\n"
#. type: tbl table
-#: build/C/man7/signal.7:243
+#: build/C/man7/signal.7:247
#, no-wrap
msgid "SIGFPE\t\\08\tCore\tFloating point exception\n"
msgstr "SIGFPE\t\\08\tCore\t浮動小数点例外\n"
#. type: tbl table
-#: build/C/man7/signal.7:244
+#: build/C/man7/signal.7:248
#, no-wrap
msgid "SIGKILL\t\\09\tTerm\tKill signal\n"
msgstr "SIGKILL\t\\09\tTerm\tKill シグナル\n"
#. type: tbl table
-#: build/C/man7/signal.7:245
+#: build/C/man7/signal.7:249
#, no-wrap
msgid "SIGSEGV\t11\tCore\tInvalid memory reference\n"
-msgstr "SIGSEGV\t11\tCore\t不正なメモリ参照\n"
+msgstr "SIGSEGV\t11\tCore\t不正なメモリー参照\n"
#. type: tbl table
-#: build/C/man7/signal.7:246
+#: build/C/man7/signal.7:250
#, no-wrap
msgid "SIGPIPE\t13\tTerm\tBroken pipe: write to pipe with no\n"
msgstr "SIGPIPE\t13\tTerm\tパイプ破壊:\n"
#. type: tbl table
-#: build/C/man7/signal.7:247
+#: build/C/man7/signal.7:251
#, no-wrap
msgid "\t\t\treaders\n"
msgstr "\t\t\t読み手の無いパイプへの書き出し\n"
#. type: tbl table
-#: build/C/man7/signal.7:248
+#: build/C/man7/signal.7:252
#, no-wrap
msgid "SIGALRM\t14\tTerm\tTimer signal from B<alarm>(2)\n"
msgstr "SIGALRM\t14\tTerm\tB<alarm>(2) からのタイマーシグナル\n"
#. type: tbl table
-#: build/C/man7/signal.7:249
+#: build/C/man7/signal.7:253
#, no-wrap
msgid "SIGTERM\t15\tTerm\tTermination signal\n"
msgstr "SIGTERM\t15\tTerm\t終了 (termination) シグナル\n"
#. type: tbl table
-#: build/C/man7/signal.7:250
+#: build/C/man7/signal.7:254
#, no-wrap
msgid "SIGUSR1\t30,10,16\tTerm\tUser-defined signal 1\n"
-msgstr "SIGUSR1\t30,10,16\tTerm\tユーザ定義シグナル 1\n"
+msgstr "SIGUSR1\t30,10,16\tTerm\tユーザー定義シグナル 1\n"
#. type: tbl table
-#: build/C/man7/signal.7:251
+#: build/C/man7/signal.7:255
#, no-wrap
msgid "SIGUSR2\t31,12,17\tTerm\tUser-defined signal 2\n"
-msgstr "SIGUSR2\t31,12,17\tTerm\tユーザ定義シグナル 2\n"
+msgstr "SIGUSR2\t31,12,17\tTerm\tユーザー定義シグナル 2\n"
#. type: tbl table
-#: build/C/man7/signal.7:252
+#: build/C/man7/signal.7:256
#, no-wrap
msgid "SIGCHLD\t20,17,18\tIgn\tChild stopped or terminated\n"
msgstr "SIGCHLD\t20,17,18\tIgn\t子プロセスの一時停止 (stop) または終了\n"
#. type: tbl table
-#: build/C/man7/signal.7:253
+#: build/C/man7/signal.7:257
#, no-wrap
msgid "SIGCONT\t19,18,25\tCont\tContinue if stopped\n"
msgstr "SIGCONT\t19,18,25\tCont\t一時停止 (stop) からの再開\n"
#. type: tbl table
-#: build/C/man7/signal.7:254
+#: build/C/man7/signal.7:258
#, no-wrap
msgid "SIGSTOP\t17,19,23\tStop\tStop process\n"
msgstr "SIGSTOP\t17,19,23\tStop\tプロセスの一時停止 (stop)\n"
#. type: tbl table
-#: build/C/man7/signal.7:255
+#: build/C/man7/signal.7:259
#, no-wrap
-msgid "SIGTSTP\t18,20,24\tStop\tStop typed at tty\n"
-msgstr "SIGTSTP\t18,20,24\tStop\t端末 (tty) より入力された一時停止 (stop)\n"
+msgid "SIGTSTP\t18,20,24\tStop\tStop typed at terminal\n"
+msgstr "SIGTSTP\t18,20,24\tStop\t端末より入力された一時停止 (stop)\n"
#. type: tbl table
-#: build/C/man7/signal.7:256
+#: build/C/man7/signal.7:260
#, no-wrap
-msgid "SIGTTIN\t21,21,26\tStop\ttty input for background process\n"
-msgstr "SIGTTIN\t21,21,26\tStop\tバックグランドプロセスの tty 入力\n"
+msgid "SIGTTIN\t21,21,26\tStop\tTerminal input for background process\n"
+msgstr "SIGTTIN\t21,21,26\tStop\tバックグランドプロセスの端末入力\n"
#. type: tbl table
-#: build/C/man7/signal.7:257
+#: build/C/man7/signal.7:261
#, no-wrap
-msgid "SIGTTOU\t22,22,27\tStop\ttty output for background process\n"
-msgstr "SIGTTOU\t22,22,27\tStop\tバックグランドプロセスの tty 出力\n"
+msgid "SIGTTOU\t22,22,27\tStop\tTerminal output for background process\n"
+msgstr "SIGTTOU\t22,22,27\tStop\tバックグランドプロセスの端末出力\n"
#. type: Plain text
-#: build/C/man7/signal.7:265
+#: build/C/man7/signal.7:269
msgid ""
"The signals B<SIGKILL> and B<SIGSTOP> cannot be caught, blocked, or ignored."
msgstr "シグナル B<SIGKILL> と B<SIGSTOP> はキャッチ、ブロック、無視できない。"
#. type: Plain text
-#: build/C/man7/signal.7:268
+#: build/C/man7/signal.7:272
msgid ""
"Next the signals not in the POSIX.1-1990 standard but described in SUSv2 and "
"POSIX.1-2001."
"グナルを示す。"
#. type: tbl table
-#: build/C/man7/signal.7:273
+#: build/C/man7/signal.7:277
#, no-wrap
msgid "SIGBUS\t10,7,10\tCore\tBus error (bad memory access)\n"
-msgstr "SIGBUS\t10,7,10\tCore\tバスエラー (不正なメモリアクセス)\n"
+msgstr "SIGBUS\t10,7,10\tCore\tã\83\90ã\82¹ã\82¨ã\83©ã\83¼ (ä¸\8dæ£ã\81ªã\83¡ã\83¢ã\83ªã\83¼ã\82¢ã\82¯ã\82»ã\82¹)\n"
#. type: tbl table
-#: build/C/man7/signal.7:274
+#: build/C/man7/signal.7:278
#, no-wrap
msgid "SIGPOLL\t\tTerm\tPollable event (Sys V).\n"
msgstr "SIGPOLL\t\tTerm\tポーリング可能なイベント (Sys V)。\n"
#. type: tbl table
-#: build/C/man7/signal.7:275
+#: build/C/man7/signal.7:279
#, no-wrap
msgid "\t\t\tSynonym for B<SIGIO>\n"
msgstr "\t\t\tB<SIGIO> と同義\n"
#. type: tbl table
-#: build/C/man7/signal.7:276
+#: build/C/man7/signal.7:280
#, no-wrap
msgid "SIGPROF\t27,27,29\tTerm\tProfiling timer expired\n"
-msgstr "SIGPROF\t27,27,29\tTerm\tprofiling タイマの時間切れ\n"
+msgstr "SIGPROF\t27,27,29\tTerm\tprofiling ã\82¿ã\82¤ã\83\9eã\83¼ã\81®æ\99\82é\96\93å\88\87ã\82\8c\n"
#. type: tbl table
-#: build/C/man7/signal.7:277
+#: build/C/man7/signal.7:281
#, no-wrap
msgid "SIGSYS\t12,31,12\tCore\tBad argument to routine (SVr4)\n"
msgstr "SIGSYS\t12,31,12\tCore\tルーチンへの引き数が不正 (SVr4)\n"
#. type: tbl table
-#: build/C/man7/signal.7:278
+#: build/C/man7/signal.7:282
#, no-wrap
msgid "SIGTRAP\t5\tCore\tTrace/breakpoint trap\n"
msgstr "SIGTRAP\t5\tCore\tトレース/ブレークポイント トラップ\n"
#. type: tbl table
-#: build/C/man7/signal.7:279
+#: build/C/man7/signal.7:283
#, no-wrap
msgid "SIGURG\t16,23,21\tIgn\tUrgent condition on socket (4.2BSD)\n"
msgstr "SIGURG\t16,23,21\tIgn\tソケットの緊急事態 (urgent condition) (4.2BSD)\n"
#. type: tbl table
-#: build/C/man7/signal.7:280
+#: build/C/man7/signal.7:284
#, no-wrap
msgid "SIGVTALRM\t26,26,28\tTerm\tVirtual alarm clock (4.2BSD)\n"
msgstr "SIGVTALRM\t26,26,28\tTerm\t仮想アラームクロック (4.2BSD)\n"
#. type: tbl table
-#: build/C/man7/signal.7:281
+#: build/C/man7/signal.7:285
#, no-wrap
msgid "SIGXCPU\t24,24,30\tCore\tCPU time limit exceeded (4.2BSD)\n"
msgstr "SIGXCPU\t24,24,30\tCore\tCPU時間制限超過 (4.2BSD)\n"
#. type: tbl table
-#: build/C/man7/signal.7:282
+#: build/C/man7/signal.7:286
#, no-wrap
msgid "SIGXFSZ\t25,25,31\tCore\tFile size limit exceeded (4.2BSD)\n"
msgstr "SIGXFSZ\t25,25,31\tCore\tファイルサイズ制限の超過 (4.2BSD)\n"
#. type: Plain text
-#: build/C/man7/signal.7:295
+#: build/C/man7/signal.7:299
msgid ""
"Up to and including Linux 2.2, the default behavior for B<SIGSYS>, "
"B<SIGXCPU>, B<SIGXFSZ>, and (on architectures other than SPARC and MIPS) "
"core dump."
msgstr ""
"Linux 2.2 以前では、 B<SIGSYS>, B<SIGXCPU>, B<SIGXFSZ> および SPARC と MIPS "
-"以å¤\96ã\81®ã\82¢ã\83¼ã\82ã\83\86ã\82¯ã\83\81ã\83£ã\81§ã\81® B<SIGBUS> ã\81®ã\83\87ã\83\95ã\82©ã\83«ã\83\88ã\81®æ\8c¯ã\82\8bè\88\9eã\81\84ã\81¯ (ã\82³ã\82¢ã\83\80ã\83³ã\83\97å\87ºå\8a\9bã\81ª"
-"しの) プロセス終了であった。 (他の UNIX システムにも B<SIGXCPU> と "
+"以å¤\96ã\81®ã\82¢ã\83¼ã\82ã\83\86ã\82¯ã\83\81ã\83£ã\83¼ã\81§ã\81® B<SIGBUS> ã\81®ã\83\87ã\83\95ã\82©ã\83«ã\83\88ã\81®æ\8c¯ã\82\8bè\88\9eã\81\84ã\81¯ (ã\82³ã\82¢ã\83\80ã\83³ã\83\97å\87ºå\8a\9b"
+"ã\81ªã\81\97ã\81®) ã\83\97ã\83ã\82»ã\82¹çµ\82äº\86ã\81§ã\81\82ã\81£ã\81\9fã\80\82 (ä»\96ã\81® UNIX ã\82·ã\82¹ã\83\86ã\83 ã\81«ã\82\82 B<SIGXCPU> ã\81¨ "
"B<SIGXFSZ> のデフォルトの動作がコアダンプなしのプロセス終了のものがある。) "
"Linux 2.4 では、POSIX.1-2001 での要求仕様に準拠して、 これらのシグナルで、プ"
"ロセスを終了させ、コアダンプを出力する ようになっている。"
#. type: Plain text
-#: build/C/man7/signal.7:297
+#: build/C/man7/signal.7:301
msgid "Next various other signals."
msgstr "次にその他の各種シグナルを示す。"
#. type: tbl table
-#: build/C/man7/signal.7:302
+#: build/C/man7/signal.7:306
#, no-wrap
msgid "SIGIOT\t6\tCore\tIOT trap. A synonym for B<SIGABRT>\n"
msgstr "SIGIOT\t6\tCore\tIOT トラップ。B<SIGABRT> と同義\n"
#. type: tbl table
-#: build/C/man7/signal.7:303
+#: build/C/man7/signal.7:307
#, no-wrap
msgid "SIGEMT\t7,-,7\tTerm\n"
msgstr "SIGEMT\t7,-,7\tTerm\n"
#. type: tbl table
-#: build/C/man7/signal.7:304
+#: build/C/man7/signal.7:308
#, no-wrap
msgid "SIGSTKFLT\t-,16,-\tTerm\tStack fault on coprocessor (unused)\n"
msgstr "SIGSTKFLT\t-,16,-\tA\t数値演算プロセッサにおけるスタックフォルト (未使用)\n"
#. type: tbl table
-#: build/C/man7/signal.7:305
+#: build/C/man7/signal.7:309
#, no-wrap
msgid "SIGIO\t23,29,22\tTerm\tI/O now possible (4.2BSD)\n"
msgstr "SIGIO\t23,29,22\tTerm\t入出力が可能になった (4.2BSD)\n"
#. type: tbl table
-#: build/C/man7/signal.7:306
+#: build/C/man7/signal.7:310
#, no-wrap
msgid "SIGCLD\t-,-,18\tIgn\tA synonym for B<SIGCHLD>\n"
msgstr "SIGCLD\t-,-,18\tIgn\tB<SIGCHLD> と同義\n"
#. type: tbl table
-#: build/C/man7/signal.7:307
+#: build/C/man7/signal.7:311
#, no-wrap
msgid "SIGPWR\t29,30,19\tTerm\tPower failure (System V)\n"
msgstr "SIGPWR\t29,30,19\tTerm\t電源喪失 (Power failure) (System V)\n"
#. type: tbl table
-#: build/C/man7/signal.7:308
+#: build/C/man7/signal.7:312
#, no-wrap
msgid "SIGINFO\t29,-,-\t\tA synonym for B<SIGPWR>\n"
msgstr "SIGINFO\t29,-,-\t \tB<SIGPWR> と同義\n"
#. type: tbl table
-#: build/C/man7/signal.7:309
+#: build/C/man7/signal.7:313
#, no-wrap
-msgid "SIGLOST\t-,-,-\tTerm\tFile lock lost\n"
-msgstr "SIGLOST\t-,-,-\tTerm\tファイルロックが失われた\n"
+msgid "SIGLOST\t-,-,-\tTerm\tFile lock lost (unused)\n"
+msgstr "SIGLOST\t-,-,-\tTerm\tファイルロックが失われた (未使用)\n"
#. type: tbl table
-#: build/C/man7/signal.7:310
+#: build/C/man7/signal.7:314
#, no-wrap
msgid "SIGWINCH\t28,28,20\tIgn\tWindow resize signal (4.3BSD, Sun)\n"
msgstr "SIGWINCH\t28,28,20\tIgn\tウィンドウ リサイズ シグナル (4.3BSD, Sun)\n"
#. type: tbl table
-#: build/C/man7/signal.7:311
+#: build/C/man7/signal.7:315
#, no-wrap
msgid "SIGUNUSED\t-,31,-\tCore\tSynonymous with B<SIGSYS>\n"
msgstr "SIGUNUSED\t-,31,-\tCore\tB<SIGSYS> と同義\n"
#. type: Plain text
-#: build/C/man7/signal.7:321
+#: build/C/man7/signal.7:325
msgid ""
"(Signal 29 is B<SIGINFO> / B<SIGPWR> on an alpha but B<SIGLOST> on a sparc.)"
msgstr ""
"B<SIGLOST> である。)"
#. type: Plain text
-#: build/C/man7/signal.7:327
+#: build/C/man7/signal.7:331
msgid ""
"B<SIGEMT> is not specified in POSIX.1-2001, but nevertheless appears on most "
"other UNIX systems, where its default action is typically to terminate the "
"である。"
#. type: Plain text
-#: build/C/man7/signal.7:331
+#: build/C/man7/signal.7:335
msgid ""
"B<SIGPWR> (which is not specified in POSIX.1-2001) is typically ignored by "
"default on those other UNIX systems where it appears."
"UNIX システムでは多くの場合、デフォルト動作は無視である。"
#. type: Plain text
-#: build/C/man7/signal.7:335
+#: build/C/man7/signal.7:339
msgid ""
"B<SIGIO> (which is not specified in POSIX.1-2001) is ignored by default on "
"several other UNIX systems."
#. parisc is the only exception: SIGSYS is 12, SIGUNUSED is 31
#. type: Plain text
-#: build/C/man7/signal.7:342
+#: build/C/man7/signal.7:346
msgid ""
"Where defined, B<SIGUNUSED> is synonymous with B<SIGSYS> on most "
"architectures."
msgstr ""
-"B<SIGUNUSED> ã\81\8cå®\9a義ã\81\95ã\82\8cã\81¦ã\81\84ã\82\8bå ´å\90\88ã\81«ã\81¯ã\80\81ã\81»ã\81¨ã\82\93ã\81©ã\81®ã\82¢ã\83¼ã\82ã\83\86ã\82¯ã\83\81ã\83£ã\81§ B<SIGSYS> "
-"の同義語となっている。"
+"B<SIGUNUSED> ã\81\8cå®\9a義ã\81\95ã\82\8cã\81¦ã\81\84ã\82\8bå ´å\90\88ã\81«ã\81¯ã\80\81ã\81»ã\81¨ã\82\93ã\81©ã\81®ã\82¢ã\83¼ã\82ã\83\86ã\82¯ã\83\81ã\83£ã\83¼ã\81§ "
+"B<SIGSYS> の同義語となっている。"
#. type: SS
-#: build/C/man7/signal.7:342
+#: build/C/man7/signal.7:346
#, no-wrap
-msgid "Real-time Signals"
+msgid "Real-time signals"
msgstr "リアルタイムシグナル"
#. type: Plain text
-#: build/C/man7/signal.7:352
+#: build/C/man7/signal.7:356
msgid ""
"Linux supports real-time signals as originally defined in the POSIX.1b real-"
"time extensions (and now included in POSIX.1-2001). The range of supported "
"る。"
#. type: Plain text
-#: build/C/man7/signal.7:374
+#: build/C/man7/signal.7:378
msgid ""
"The Linux kernel supports a range of 32 different real-time signals, "
"numbered 33 to 64. However, the glibc POSIX threads implementation "
"超えていないかのチェックを (実行時に) 適切に行うべきである。"
#. type: Plain text
-#: build/C/man7/signal.7:378
+#: build/C/man7/signal.7:382
msgid ""
"Unlike standard signals, real-time signals have no predefined meanings: the "
"entire set of real-time signals can be used for application-defined purposes."
"リアルタイムシグナルの全部をアプリケーションで定義した用途に使える。"
#. type: Plain text
-#: build/C/man7/signal.7:381
+#: build/C/man7/signal.7:385
msgid ""
"The default action for an unhandled real-time signal is to terminate the "
"receiving process."
"終了である。"
#. type: Plain text
-#: build/C/man7/signal.7:383
+#: build/C/man7/signal.7:387
msgid "Real-time signals are distinguished by the following:"
msgstr "リアルタイムシグナルは以下の特徴がある:"
#. type: Plain text
-#: build/C/man7/signal.7:387
+#: build/C/man7/signal.7:391
msgid ""
"Multiple instances of real-time signals can be queued. By contrast, if "
"multiple instances of a standard signal are delivered while that signal is "
"ンスが配送されても、 1 つだけがキューに入れられる。"
#. type: Plain text
-#: build/C/man7/signal.7:407
+#: build/C/man7/signal.7:411
msgid ""
"If the signal is sent using B<sigqueue>(3), an accompanying value (either an "
"integer or a pointer) can be sent with the signal. If the receiving process "
"establishes a handler for this signal using the B<SA_SIGINFO> flag to "
-"B<sigaction>(2) then it can obtain this data via the I<si_value> field of "
+"B<sigaction>(2), then it can obtain this data via the I<si_value> field of "
"the I<siginfo_t> structure passed as the second argument to the handler. "
"Furthermore, the I<si_pid> and I<si_uid> fields of this structure can be "
"used to obtain the PID and real user ID of the process sending the signal."
msgstr ""
"シグナルが B<sigqueue>(3) を用いて送信された場合、 付属データ (整数かポイン"
-"タ) をシグナルと共に送信できる。 受信側プロセスが B<sigaction>(2) に "
-"B<SA_SIGINFO> ã\83\95ã\83©ã\82°ã\82\92æ\8c\87å®\9aã\81\97ã\81¦ã\82·ã\82°ã\83\8aã\83«ã\83\8fã\83³ã\83\89ã\83©ã\82\92è¨å®\9aã\81\97ã\81\9få ´å\90\88ã\80\81 ã\81\93ã\81®ã\83\87ã\83¼ã\82¿ã\81¯ "
-"I<siginfo_t> 構造体の I<si_value> フィールド経由でハンドラの第 2 引き数として"
-"渡され、 利用することができる。 さらに、この構造体の I<si_pid> と I<si_uid> "
-"フィールドでシグナルを送信したプロセスの PID と実ユーザ ID を 得ることができ"
-"る。"
+"ター) をシグナルと共に送信できる。 受信側プロセスが B<sigaction>(2) に "
+"B<SA_SIGINFO> ã\83\95ã\83©ã\82°ã\82\92æ\8c\87å®\9aã\81\97ã\81¦ã\82·ã\82°ã\83\8aã\83«ã\83\8fã\83³ã\83\89ã\83©ã\83¼ã\82\92è¨å®\9aã\81\97ã\81\9få ´å\90\88ã\80\81 ã\81\93ã\81®ã\83\87ã\83¼ã\82¿"
+"は I<siginfo_t> 構造体の I<si_value> フィールド経由でハンドラーの第 2 引き数"
+"として渡され、 利用することができる。 さらに、この構造体の I<si_pid> と "
+"I<si_uid> フィールドでシグナルを送信したプロセスの PID と実ユーザー ID を 得"
+"ã\82\8bã\81\93ã\81¨ã\81\8cã\81§ã\81\8dã\82\8bã\80\82"
#. type: Plain text
-#: build/C/man7/signal.7:416
+#: build/C/man7/signal.7:420
msgid ""
"Real-time signals are delivered in a guaranteed order. Multiple real-time "
"signals of the same type are delivered in the order they were sent. If "
"る。"
#. type: Plain text
-#: build/C/man7/signal.7:421
+#: build/C/man7/signal.7:425
msgid ""
"If both standard and real-time signals are pending for a process, POSIX "
"leaves it unspecified which is delivered first. Linux, like many other "
"実装と同様、このような場合には 標準シグナルが優先される。"
#. type: Plain text
-#: build/C/man7/signal.7:444
+#: build/C/man7/signal.7:448
msgid ""
"According to POSIX, an implementation should permit at least "
"B<_POSIX_SIGQUEUE_MAX> (32) real-time signals to be queued to a process. "
"ることで、いくつのリアルタイムシグナルが現在キューに入っているかを 知ることが"
"できる。 Linux 2.6.8 で、これらの I</proc> 経由のインターフェースは、 "
"B<RLIMIT_SIGPENDING> リソース制限に置き換えられた。 これは、キューに入るシグ"
-"ナル数に関してユーザ単位に 上限を指定するものである。 詳しくは B<setrlimit>"
-"(2) を参照。"
+"ナル数に関してユーザー単位に 上限を指定するものである。 詳しくは "
+"B<setrlimit>(2) を参照。"
#. type: SS
-#: build/C/man7/signal.7:444
+#: build/C/man7/signal.7:448
#, no-wrap
msgid "Async-signal-safe functions"
msgstr "非同期シグナルで安全な関数 (async-signal-safe functions)"
#. type: Plain text
-#: build/C/man7/signal.7:453
+#: build/C/man7/signal.7:457
msgid ""
"A signal handler function must be very careful, since processing elsewhere "
"may be interrupted at some arbitrary point in the execution of the program. "
"execution of an unsafe function, and I<handler> calls an unsafe function, "
"then the behavior of the program is undefined."
msgstr ""
-"シグナルハンドラ関数には非常に注意しなければならない。 他の場所の処理はプログ"
-"ã\83©ã\83 å®\9fè¡\8cã\81®ä»»æ\84\8fã\81®ç®\87æ\89\80ã\81§ä¸æ\96ã\81\95ã\82\8cã\82\8bå\8f¯è\83½æ\80§ã\81\8cã\81\82ã\82\8bã\81\9fã\82\81ã\81§ã\81\82ã\82\8bã\80\82 POSIX ã\81«ã\81¯ã\80\8cå®\89å\85¨ã\81ªé\96¢"
-"数 (safe function)」という概念がある。 シグナルが安全でない関数の実行を中断"
+"シグナルハンドラー関数には非常に注意しなければならない。 他の場所の処理はプロ"
+"ã\82°ã\83©ã\83 å®\9fè¡\8cã\81®ä»»æ\84\8fã\81®ç®\87æ\89\80ã\81§ä¸æ\96ã\81\95ã\82\8cã\82\8bå\8f¯è\83½æ\80§ã\81\8cã\81\82ã\82\8bã\81\9fã\82\81ã\81§ã\81\82ã\82\8bã\80\82 POSIX ã\81«ã\81¯ã\80\8cå®\89å\85¨ã\81ª"
+"関数 (safe function)」という概念がある。 シグナルが安全でない関数の実行を中断"
"し、かつ I<handler> が安全でない関数を呼び出した場合、プログラムの挙動は未定"
"義である。"
#. type: Plain text
-#: build/C/man7/signal.7:457
+#: build/C/man7/signal.7:461
msgid ""
"POSIX.1-2004 (also known as POSIX.1-2001 Technical Corrigendum 2) requires "
"an implementation to guarantee that the following functions can be safely "
"called inside a signal handler:"
msgstr ""
"POSIX.1-2004 (POSIX.1-2001 Technical Corrigendum (正誤表) 2 とも言う) では、 "
-"シグナルハンドラ内での安全な呼び出しを保証することが必須の関数として 以下が規"
-"定されている。"
+"シグナルハンドラー内での安全な呼び出しを保証することが必須の関数として 以下が"
+"規定されている。"
#. type: Plain text
-#: build/C/man7/signal.7:578
+#: build/C/man7/signal.7:582
#, no-wrap
msgid ""
"_Exit()\n"
"write()\n"
#. type: Plain text
-#: build/C/man7/signal.7:583
+#: build/C/man7/signal.7:587
msgid ""
"POSIX.1-2008 removes fpathconf(), pathconf(), and sysconf() from the above "
"list, and adds the following functions:"
"削除され、以下の関数が追加された。"
#. type: Plain text
-#: build/C/man7/signal.7:606
+#: build/C/man7/signal.7:610
#, no-wrap
msgid ""
"execl()\n"
"utimes()\n"
#. type: SS
-#: build/C/man7/signal.7:608
+#: build/C/man7/signal.7:612
#, no-wrap
-msgid "Interruption of System Calls and Library Functions by Signal Handlers"
-msgstr "シグナルハンドラによるシステムコールやライブラリ関数への割り込み"
+msgid "Interruption of system calls and library functions by signal handlers"
+msgstr "ã\82·ã\82°ã\83\8aã\83«ã\83\8fã\83³ã\83\89ã\83©ã\83¼ã\81«ã\82\88ã\82\8bã\82·ã\82¹ã\83\86ã\83 ã\82³ã\83¼ã\83«ã\82\84ã\83©ã\82¤ã\83\96ã\83©ã\83ªé\96¢æ\95°ã\81¸ã\81®å\89²ã\82\8aè¾¼ã\81¿"
#. type: Plain text
-#: build/C/man7/signal.7:611
+#: build/C/man7/signal.7:615
msgid ""
"If a signal handler is invoked while a system call or library function call "
"is blocked, then either:"
msgstr ""
-"ã\82·ã\82¹ã\83\86ã\83 ã\82³ã\83¼ã\83«ã\82\84ã\83©ã\82¤ã\83\96ã\83©ã\83ªã\81\8cå\81\9cæ¢ (block) ã\81\97ã\81¦ã\81\84ã\82\8bé\96\93ã\81«ã\82·ã\82°ã\83\8aã\83«ã\83\8fã\83³ã\83\89ã\83©ã\81\8c èµ·å\8b\95"
-"されると、以下のどちらかとなる。"
+"ã\82·ã\82¹ã\83\86ã\83 ã\82³ã\83¼ã\83«ã\82\84ã\83©ã\82¤ã\83\96ã\83©ã\83ªã\81\8cå\81\9cæ¢ (block) ã\81\97ã\81¦ã\81\84ã\82\8bé\96\93ã\81«ã\82·ã\82°ã\83\8aã\83«ã\83\8fã\83³ã\83\89ã\83©ã\83¼ã\81\8c èµ·"
+"動されると、以下のどちらかとなる。"
#. type: Plain text
-#: build/C/man7/signal.7:613
+#: build/C/man7/signal.7:617
msgid ""
"the call is automatically restarted after the signal handler returns; or"
msgstr "シグナルが返った後、呼び出しは自動的に再スタートされる。"
#. type: Plain text
-#: build/C/man7/signal.7:616
+#: build/C/man7/signal.7:620
msgid "the call fails with the error B<EINTR>."
msgstr "呼び出しはエラー B<EINTR> で失敗する。"
#. type: Plain text
-#: build/C/man7/signal.7:624
+#: build/C/man7/signal.7:628
msgid ""
"Which of these two behaviors occurs depends on the interface and whether or "
"not the signal handler was established using the B<SA_RESTART> flag (see "
"for Linux."
msgstr ""
"これらの二つの挙動のうちどちらが起こるかは、インターフェイスにより依存し、 シ"
-"ã\82°ã\83\8aã\83«ã\83\8fã\83³ã\83\89ã\83©ã\81\8c B<SA_RESTART> ã\83\95ã\83©ã\82° (B<sigaction>(2) å\8f\82ç\85§) ã\82\92使ã\81£ã\81¦è¨å®\9aã\81\95"
-"ã\82\8cã\81¦ã\81\84ã\81\9fã\81\8bã\81«ã\82\82ä¾\9då\98ã\81\99ã\82\8bã\80\82 詳細ã\81¯ UNIX ã\82·ã\82¹ã\83\86ã\83 ã\81«ã\82\88ã\81£ã\81¦ç\95°ã\81ªã\82\8bã\80\82 Linux ã\81«ã\81\8aã\81\91ã\82\8b"
-"詳細を以下で説明する。"
+"ã\82°ã\83\8aã\83«ã\83\8fã\83³ã\83\89ã\83©ã\83¼ã\81\8c B<SA_RESTART> ã\83\95ã\83©ã\82° (B<sigaction>(2) å\8f\82ç\85§) ã\82\92使ã\81£ã\81¦è¨å®\9a"
+"ã\81\95ã\82\8cã\81¦ã\81\84ã\81\9fã\81\8bã\81«ã\82\82ä¾\9då\98ã\81\99ã\82\8bã\80\82 詳細ã\81¯ UNIX ã\82·ã\82¹ã\83\86ã\83 ã\81«ã\82\88ã\81£ã\81¦ç\95°ã\81ªã\82\8bã\80\82 Linux ã\81«ã\81\8aã\81\91"
+"る詳細を以下で説明する。"
#. The following system calls use ERESTARTSYS,
#. so that they are restartable
#. type: Plain text
-#: build/C/man7/signal.7:633
+#: build/C/man7/signal.7:637
msgid ""
"If a blocked call to one of the following interfaces is interrupted by a "
"signal handler, then the call will be automatically restarted after the "
"signal handler returns if the B<SA_RESTART> flag was used; otherwise the "
"call will fail with the error B<EINTR>:"
msgstr ""
-"以下のインターフェイスのいずれかの呼び出しが停止している間に シグナルハンドラ"
-"ã\81«ã\82\88ã\82\8aå\89²ã\82\8aè¾¼ã\81¾ã\82\8cã\81\9få ´å\90\88ã\80\81 B<SA_RESTART> ã\83\95ã\83©ã\82°ã\81\8c使ç\94¨ã\81\95ã\82\8cã\81¦ã\81\84ã\82\8cã\81°ã\80\81ã\82·ã\82°ã\83\8aã\83«ã\83\8fã\83³"
-"ã\83\89ã\83©ã\81\8cè¿\94ã\81£ã\81\9få¾\8cã\81« ã\81\9dã\81®å\91¼ã\81³å\87ºã\81\97ã\81¯è\87ªå\8b\95ç\9a\84ã\81«å\86\8dã\82¹ã\82¿ã\83¼ã\83\88ã\81\95ã\82\8cã\82\8bã\81\93ã\81¨ã\81«ã\81ªã\82\8bã\80\82 ã\81\9dã\82\8c以å¤\96"
-"の場合は、その呼び出しはエラー B<EINTR> で失敗することになる。"
+"以下のインターフェイスのいずれかの呼び出しが停止している間に シグナルハンド"
+"ã\83©ã\83¼ã\81«ã\82\88ã\82\8aå\89²ã\82\8aè¾¼ã\81¾ã\82\8cã\81\9få ´å\90\88ã\80\81 B<SA_RESTART> ã\83\95ã\83©ã\82°ã\81\8c使ç\94¨ã\81\95ã\82\8cã\81¦ã\81\84ã\82\8cã\81°ã\80\81ã\82·ã\82°ã\83\8aã\83«"
+"ã\83\8fã\83³ã\83\89ã\83©ã\83¼ã\81\8cè¿\94ã\81£ã\81\9få¾\8cã\81« ã\81\9dã\81®å\91¼ã\81³å\87ºã\81\97ã\81¯è\87ªå\8b\95ç\9a\84ã\81«å\86\8dã\82¹ã\82¿ã\83¼ã\83\88ã\81\95ã\82\8cã\82\8bã\81\93ã\81¨ã\81«ã\81ªã\82\8bã\80\82 ã\81\9d"
+"ã\82\8c以å¤\96ã\81®å ´å\90\88ã\81¯ã\80\81ã\81\9dã\81®å\91¼ã\81³å\87ºã\81\97ã\81¯ã\82¨ã\83©ã\83¼ B<EINTR> ã\81§å¤±æ\95\97ã\81\99ã\82\8bã\81\93ã\81¨ã\81«ã\81ªã\82\8bã\80\82"
+#. commit 1ca39ab9d21ac93f94b9e3eb364ea9a5cf2aba06
#. type: Plain text
-#: build/C/man7/signal.7:649
+#: build/C/man7/signal.7:672
msgid ""
"B<read>(2), B<readv>(2), B<write>(2), B<writev>(2), and B<ioctl>(2) calls "
"on \"slow\" devices. A \"slow\" device is one where the I/O call may block "
"for an indefinite time, for example, a terminal, pipe, or socket. (A disk "
-"is not a slow device according to this definition.) If an I/O call on a "
-"slow device has already transferred some data by the time it is interrupted "
-"by a signal handler, then the call will return a success status (normally, "
-"the number of bytes transferred)."
+"is not a slow device according to this definition.) A B<read>(2) on an "
+"B<eventfd>(2), B<signalfd>(2), B<timerfd>(2), B<fanotify>(7), or "
+"B<inotify>(7) file descriptor is also considered to be a \"slow\" "
+"operation. (Before Linux 3.8, reads from an B<inotify>(7) file descriptor "
+"were not restartable; when interrupted by a signal handler, B<read>(2) "
+"always failed with the error B<EINTR>.) If an I/O call on a slow device has "
+"already transferred some data by the time it is interrupted by a signal "
+"handler, then the call will return a success status (normally, the number of "
+"bytes transferred)."
msgstr ""
"B<read>(2), B<readv>(2), B<write>(2), B<writev>(2), B<ioctl>(2) の「遅い "
"(slow)」デバイスに対する呼び出し。 ここでいう「遅い」デバイスとは、I/O 呼び出"
"しが無期限に停止 (block) する 可能性のあるデバイスのことで、例としては端末、"
-"パイプ、ソケットがある (この定義では、ディスクは遅いデバイスではない)。 遅い"
-"デバイスに対する I/O 呼び出しが、 シグナルハンドラにより割り込まれた時点まで"
-"に何らかのデータを すでに転送していれば、呼び出しは成功ステータス (通常は、転"
-"送されたバイト数) を返すことだろう。"
+"パイプ、ソケットがある (この定義では、ディスクは遅いデバイスではない)。 "
+"B<eventfd>(2), B<signalfd>(2), B<timerfd>(2), B<fanotify>(7), B<inotify>(7) "
+"のファイルディスクリプターに対する B<read>(2) も「遅い」操作と考えられる。 "
+"(Linux 3.8 より前であh, B<inotify>(7) ファイルディスクリプターからの読み出"
+"しは再開できなかった。シグナルハンドラーによって割り込まれた場合、 "
+"B<read>(2) は常にエラー B<EINTR> で失敗していた。) 遅いデバイスに対する I/O "
+"呼び出しが、 シグナルハンドラーにより割り込まれた時点までに何らかのデータを "
+"すでに転送していれば、呼び出しは成功ステータス (通常は、転送されたバイト数) "
+"を返すことだろう。"
#. type: Plain text
-#: build/C/man7/signal.7:653
+#: build/C/man7/signal.7:676
msgid ""
"B<open>(2), if it can block (e.g., when opening a FIFO; see B<fifo>(7))."
msgstr ""
-"停止 (block) する可能性のある B<open>(2) (例えば、FIFO のオープン時; B<fifo>"
-"(7) 参照)。"
+"停止 (block) する可能性のある B<open>(2) (例えば、FIFO のオープン時; "
+"B<fifo>(7) 参照)。"
#. type: Plain text
-#: build/C/man7/signal.7:660
+#: build/C/man7/signal.7:683
msgid "B<wait>(2), B<wait3>(2), B<wait4>(2), B<waitid>(2), and B<waitpid>(2)."
msgstr "B<wait>(2), B<wait3>(2), B<wait4>(2), B<waitid>(2), B<waitpid>(2)."
#. system calls switch to using EINTR. Consequently, they and are not
#. automatically restarted, and they show the stop/cont behavior
#. described below. (Verified from 2.6.26 source, and by experiment; mtk)
+#. FIXME . What about sendmmsg()?
#. type: Plain text
-#: build/C/man7/signal.7:676
+#: build/C/man7/signal.7:701
msgid ""
"Socket interfaces: B<accept>(2), B<connect>(2), B<recv>(2), B<recvfrom>(2), "
-"B<recvmsg>(2), B<send>(2), B<sendto>(2), and B<sendmsg>(2), unless a timeout "
-"has been set on the socket (see below)."
+"B<recvmmsg>(2), B<recvmsg>(2), B<send>(2), B<sendto>(2), and B<sendmsg>(2), "
+"unless a timeout has been set on the socket (see below)."
msgstr ""
"ソケットインターフェイス: B<accept>(2), B<connect>(2), B<recv>(2), "
-"B<recvfrom>(2), B<recvmsg>(2), B<send>(2), B<sendto>(2), B<sendmsg>(2). 但"
-"し、ソケットにタイムアウトが設定されていない場合 (下記参照)。"
+"B<recvfrom>(2), B<recvmmsg>(2), B<recvmsg>(2), B<send>(2), B<sendto>(2), "
+"B<sendmsg>(2). 但し、ソケットにタイムアウトが設定されていない場合 (下記参"
+"照)。"
#. type: Plain text
-#: build/C/man7/signal.7:682
-msgid "File locking interfaces: B<flock>(2) and B<fcntl>(2) B<F_SETLKW>."
+#: build/C/man7/signal.7:711
+#, fuzzy
+#| msgid "File locking interfaces: B<flock>(2) and B<fcntl>(2) B<F_SETLKW>."
+msgid ""
+"File locking interfaces: B<flock>(2) and the B<F_SETLKW> and "
+"B<F_OFD_SETLKW> operations of B<fcntl>(2)"
msgstr ""
"ファイルロック用インターフェイス: B<flock>(2), B<fcntl>(2) B<F_SETLKW>."
#. type: Plain text
-#: build/C/man7/signal.7:689
+#: build/C/man7/signal.7:718
msgid ""
"POSIX message queue interfaces: B<mq_receive>(3), B<mq_timedreceive>(3), "
"B<mq_send>(3), and B<mq_timedsend>(3)."
msgstr ""
-"POSIX メッセージキューインターフェイス: B<mq_receive>(3), B<mq_timedreceive>"
-"(3), B<mq_send>(3), B<mq_timedsend>(3)."
+"POSIX メッセージキューインターフェイス: B<mq_receive>(3), "
+"B<mq_timedreceive>(3), B<mq_send>(3), B<mq_timedsend>(3)."
#. type: Plain text
-#: build/C/man7/signal.7:694
+#: build/C/man7/signal.7:723
msgid ""
"B<futex>(2) B<FUTEX_WAIT> (since Linux 2.6.22; beforehand, always failed "
"with B<EINTR>)."
"していた)。"
#. type: Plain text
-#: build/C/man7/signal.7:701
+#: build/C/man7/signal.7:725
+#, fuzzy
+#| msgid "B<read>(2)"
+msgid "B<getrandom>(2)."
+msgstr "B<read>(2)"
+
+#. type: Plain text
+#: build/C/man7/signal.7:729
+msgid "B<pthread_mutex_lock>(3), B<pthread_cond_wait>(3), and related APIs."
+msgstr "B<pthread_mutex_lock>(3), B<pthread_cond_wait>(3) と関連 API。"
+
+#. type: Plain text
+#: build/C/man7/signal.7:736
msgid ""
"POSIX semaphore interfaces: B<sem_wait>(3) and B<sem_timedwait>(3) (since "
"Linux 2.6.22; beforehand, always failed with B<EINTR>)."
#. These are the system calls that give EINTR or ERESTARTNOHAND
#. on interruption by a signal handler.
#. type: Plain text
-#: build/C/man7/signal.7:712
+#: build/C/man7/signal.7:747
msgid ""
"The following interfaces are never restarted after being interrupted by a "
"signal handler, regardless of the use of B<SA_RESTART>; they always fail "
"with the error B<EINTR> when interrupted by a signal handler:"
msgstr ""
"以下のインターフェイスは、 B<SA_RESTART> を使っているどうかに関わらず、シグナ"
-"ルハンドラにより割り込まれた後、 再スタートすることは決してない。 これらは、"
-"シグナルハンドラにより割り込まれると、常にエラー B<EINTR> で失敗する。"
+"ルハンドラーにより割り込まれた後、 再スタートすることは決してない。 これら"
+"は、シグナルハンドラーにより割り込まれると、常にエラー B<EINTR> で失敗する。"
+
+#. type: Plain text
+#: build/C/man7/signal.7:762 build/C/man7/signal.7:837
+msgid ""
+"\"Input\" socket interfaces, when a timeout (B<SO_RCVTIMEO>) has been set "
+"on the socket using B<setsockopt>(2): B<accept>(2), B<recv>(2), "
+"B<recvfrom>(2), B<recvmmsg>(2) (also with a non-NULL I<timeout> argument), "
+"and B<recvmsg>(2)."
+msgstr ""
+"B<setsockopt>(2) を使ってタイムアウト (B<SO_RCVTIMEO>) が設定されている「入"
+"力」ソケットインターフェース: B<accept>(2), B<recv>(2), B<recvfrom>(2), "
+"B<recvmmsg>(2) (NULL 以外の I<timeout> 引き数も指定されている場合), "
+"B<recvmsg>(2)"
+#. FIXME . What about sendmmsg()?
#. type: Plain text
-#: build/C/man7/signal.7:732 build/C/man7/signal.7:806
+#: build/C/man7/signal.7:773 build/C/man7/signal.7:848
msgid ""
-"Socket interfaces, when a timeout has been set on the socket using "
-"B<setsockopt>(2): B<accept>(2), B<recv>(2), B<recvfrom>(2), and B<recvmsg>"
-"(2), if a receive timeout (B<SO_RCVTIMEO>) has been set; B<connect>(2), "
-"B<send>(2), B<sendto>(2), and B<sendmsg>(2), if a send timeout "
-"(B<SO_SNDTIMEO>) has been set."
+"\"Output\" socket interfaces, when a timeout (B<SO_SNDTIMEO>) has been set "
+"on the socket using B<setsockopt>(2): B<connect>(2), B<send>(2), "
+"B<sendto>(2), and B<sendmsg>(2)."
msgstr ""
-"B<setsockopt>(2) を使ってタイムアウトが設定されているソケットインターフェー"
-"ス: B<accept>(2), B<recv>(2), B<recvfrom>(2), B<recvmsg>(2) で受信タイムアウ"
-"ト (B<SO_RCVTIMEO>) が設定されている場合と、 B<connect>(2), B<send>(2), "
-"B<sendto>(2), B<sendmsg>(2) で送信タイムアウト (B<SO_SNDTIMEO>) が設定され"
-"ている場合。"
+"B<setsockopt>(2) を使ってタイムアウト (B<SO_SNDTIMEO>) が設定されているソ"
+"ケットインターフェース: B<connect>(2), B<send>(2), B<sendto>(2), "
+"B<sendmsg>(2)"
#. type: Plain text
-#: build/C/man7/signal.7:739
+#: build/C/man7/signal.7:780
msgid ""
"Interfaces used to wait for signals: B<pause>(2), B<sigsuspend>(2), "
"B<sigtimedwait>(2), and B<sigwaitinfo>(2)."
"B<sigtimedwait>(2), B<sigwaitinfo>(2)."
#. type: Plain text
-#: build/C/man7/signal.7:748
+#: build/C/man7/signal.7:789
msgid ""
-"File descriptor multiplexing interfaces: B<epoll_wait>(2), B<epoll_pwait>"
-"(2), B<poll>(2), B<ppoll>(2), B<select>(2), and B<pselect>(2)."
+"File descriptor multiplexing interfaces: B<epoll_wait>(2), "
+"B<epoll_pwait>(2), B<poll>(2), B<ppoll>(2), B<select>(2), and B<pselect>(2)."
msgstr ""
-"ファイルディスクリプタ多重インターフェイス: B<epoll_wait>(2), B<epoll_pwait>"
-"(2), B<poll>(2), B<ppoll>(2), B<select>(2), B<pselect>(2)."
+"ファイルディスクリプター多重インターフェイス: B<epoll_wait>(2), "
+"B<epoll_pwait>(2), B<poll>(2), B<ppoll>(2), B<select>(2), B<pselect>(2)."
#. On some other systems, SA_RESTART does restart these system calls
#. type: Plain text
-#: build/C/man7/signal.7:756
+#: build/C/man7/signal.7:797
msgid ""
"System V IPC interfaces: B<msgrcv>(2), B<msgsnd>(2), B<semop>(2), and "
"B<semtimedop>(2)."
"B<semtimedop>(2)."
#. type: Plain text
-#: build/C/man7/signal.7:762
+#: build/C/man7/signal.7:803
msgid ""
"Sleep interfaces: B<clock_nanosleep>(2), B<nanosleep>(2), and B<usleep>(3)."
msgstr ""
"B<usleep>(3)."
#. type: Plain text
-#: build/C/man7/signal.7:767 build/C/man7/signal.7:820
-msgid "B<read>(2) from an B<inotify>(7) file descriptor."
-msgstr "B<inotify>(7) ファイルディスクリプタからの B<read>(2)."
-
-#. type: Plain text
-#: build/C/man7/signal.7:769
+#: build/C/man7/signal.7:805
msgid "B<io_getevents>(2)."
msgstr "B<io_getevents>(2)."
#. type: Plain text
-#: build/C/man7/signal.7:775
+#: build/C/man7/signal.7:811
msgid ""
"The B<sleep>(3) function is also never restarted if interrupted by a "
"handler, but gives a success return: the number of seconds remaining to "
"sleep."
msgstr ""
-"B<sleep>(3) é\96¢æ\95°ã\82\82ã\80\81ã\83\8fã\83³ã\83\89ã\83©ã\81«ã\82\88ã\82\8aå\89²ã\82\8aè¾¼ã\81¾ã\82\8cã\81\9få ´å\90\88ã\80\81決ã\81\97ã\81¦å\86\8dã\82¹ã\82¿ã\83¼ã\83\88ã\81\95ã\82\8cã\82\8bã\81\93"
-"とはない。 しかし、成功となり、残っている停止時間を返す。"
+"B<sleep>(3) é\96¢æ\95°ã\82\82ã\80\81ã\83\8fã\83³ã\83\89ã\83©ã\83¼ã\81«ã\82\88ã\82\8aå\89²ã\82\8aè¾¼ã\81¾ã\82\8cã\81\9få ´å\90\88ã\80\81決ã\81\97ã\81¦å\86\8dã\82¹ã\82¿ã\83¼ã\83\88ã\81\95ã\82\8cã\82\8b"
+"ã\81\93ã\81¨ã\81¯ã\81ªã\81\84ã\80\82 ã\81\97ã\81\8bã\81\97ã\80\81æ\88\90å\8a\9fã\81¨ã\81ªã\82\8aã\80\81æ®\8bã\81£ã\81¦ã\81\84ã\82\8bå\81\9cæ¢æ\99\82é\96\93ã\82\92è¿\94ã\81\99ã\80\82"
#. type: SS
-#: build/C/man7/signal.7:775
+#: build/C/man7/signal.7:811
#, no-wrap
-msgid "Interruption of System Calls and Library Functions by Stop Signals"
+msgid "Interruption of system calls and library functions by stop signals"
msgstr "一時停止シグナルによるシステムコールやライブラリ関数への割り込み"
#. type: Plain text
-#: build/C/man7/signal.7:784
+#: build/C/man7/signal.7:820
msgid ""
"On Linux, even in the absence of signal handlers, certain blocking "
"interfaces can fail with the error B<EINTR> after the process is stopped by "
"one of the stop signals and then resumed via B<SIGCONT>. This behavior is "
"not sanctioned by POSIX.1, and doesn't occur on other systems."
msgstr ""
-"Linux ã\81§ã\81¯ã\80\81ã\82·ã\82°ã\83\8aã\83«ã\83\8fã\83³ã\83\89ã\83©ã\81\8cè¨å®\9aã\81\95ã\82\8cã\81¦ã\81\84ã\81ªã\81\84å ´å\90\88ã\81§ã\82\82ã\80\81 ã\81\84ã\81\8fã\81¤ã\81\8bã\81®ã\83\96ã\83ã\83\83ã\82ã\83³"
-"ã\82°å\9e\8bã\81®ã\82¤ã\83³ã\82¿ã\83¼ã\83\95ã\82§ã\82¤ã\82¹ã\81¯ã\80\81 ã\83\97ã\83ã\82»ã\82¹ã\81\8cä¸\80æ\99\82å\81\9cæ¢ (stop) ã\82·ã\82°ã\83\8aã\83«ã\81®ä¸\80ã\81¤ã\81«ã\82\88ã\82\8aå\81\9cæ¢"
-"され、 B<SIGCONT> により再開された後に、エラー B<EINTR> で失敗する可能性があ"
-"る。 この挙動は POSIX.1 で認められておらず、他のシステムでは起こらない。"
+"Linux ã\81§ã\81¯ã\80\81ã\82·ã\82°ã\83\8aã\83«ã\83\8fã\83³ã\83\89ã\83©ã\83¼ã\81\8cè¨å®\9aã\81\95ã\82\8cã\81¦ã\81\84ã\81ªã\81\84å ´å\90\88ã\81§ã\82\82ã\80\81 ã\81\84ã\81\8fã\81¤ã\81\8bã\81®ã\83\96ã\83ã\83\83ã\82"
+"ã\83³ã\82°å\9e\8bã\81®ã\82¤ã\83³ã\82¿ã\83¼ã\83\95ã\82§ã\82¤ã\82¹ã\81¯ã\80\81 ã\83\97ã\83ã\82»ã\82¹ã\81\8cä¸\80æ\99\82å\81\9cæ¢ (stop) ã\82·ã\82°ã\83\8aã\83«ã\81®ä¸\80ã\81¤ã\81«ã\82\88ã\82\8aå\81\9c"
+"止され、 B<SIGCONT> により再開された後に、エラー B<EINTR> で失敗する可能性が"
+"ã\81\82ã\82\8bã\80\82 ã\81\93ã\81®æ\8c\99å\8b\95ã\81¯ POSIX.1 ã\81§èª\8dã\82\81ã\82\89ã\82\8cã\81¦ã\81\8aã\82\89ã\81\9aã\80\81ä»\96ã\81®ã\82·ã\82¹ã\83\86ã\83 ã\81§ã\81¯èµ·ã\81\93ã\82\89ã\81ªã\81\84ã\80\82"
#. type: Plain text
-#: build/C/man7/signal.7:786
+#: build/C/man7/signal.7:822
msgid "The Linux interfaces that display this behavior are:"
msgstr "この挙動を示す Linux のインターフェイスは以下の通りである。"
#. type: Plain text
-#: build/C/man7/signal.7:809
+#: build/C/man7/signal.7:851
msgid "B<epoll_wait>(2), B<epoll_pwait>(2)."
msgstr "B<epoll_wait>(2), B<epoll_pwait>(2)."
#. type: Plain text
-#: build/C/man7/signal.7:812
+#: build/C/man7/signal.7:854
msgid "B<semop>(2), B<semtimedop>(2)."
msgstr "B<semop>(2), B<semtimedop>(2)."
#. type: Plain text
-#: build/C/man7/signal.7:815
+#: build/C/man7/signal.7:857
msgid "B<sigtimedwait>(2), B<sigwaitinfo>(2)."
msgstr "B<sigtimedwait>(2), B<sigwaitinfo>(2)."
+#. commit 1ca39ab9d21ac93f94b9e3eb364ea9a5cf2aba06
+#. type: Plain text
+#: build/C/man7/signal.7:864
+msgid ""
+"Linux 3.7 and earlier: B<read>(2) from an B<inotify>(7) file descriptor."
+msgstr ""
+"Linux 3.7 以前: B<inotify>(7) ファイルディスクリプターからの B<read>(2)."
+
#. type: Plain text
-#: build/C/man7/signal.7:826
+#: build/C/man7/signal.7:870
msgid ""
"Linux 2.6.21 and earlier: B<futex>(2) B<FUTEX_WAIT>, B<sem_timedwait>(3), "
"B<sem_wait>(3)."
"B<sem_wait>(3)."
#. type: Plain text
-#: build/C/man7/signal.7:830
+#: build/C/man7/signal.7:874
msgid "Linux 2.6.8 and earlier: B<msgrcv>(2), B<msgsnd>(2)."
msgstr "Linux 2.6.8 以前: B<msgrcv>(2), B<msgsnd>(2)."
#. type: Plain text
-#: build/C/man7/signal.7:833
+#: build/C/man7/signal.7:877
msgid "Linux 2.4 and earlier: B<nanosleep>(2)."
msgstr "Linux 2.4 以前: B<nanosleep>(2)."
-#. type: Plain text
-#: build/C/man7/signal.7:836
+#. It must be a *very* long time since this was true:
+#. .SH BUGS
+#. .B SIGIO
+#. and
+#. .B SIGLOST
+#. have the same value.
+#. The latter is commented out in the kernel source, but
+#. the build process of some software still thinks that
+#. signal 29 is
+#. .BR SIGLOST .
+#. type: Plain text
+#: build/C/man7/signal.7:890
msgid "POSIX.1, except as noted."
msgstr "POSIX.1 (注記した内容以外)。"
#. type: Plain text
-#: build/C/man7/signal.7:845
-msgid ""
-"B<SIGIO> and B<SIGLOST> have the same value. The latter is commented out in "
-"the kernel source, but the build process of some software still thinks that "
-"signal 29 is B<SIGLOST>."
-msgstr ""
-"B<SIGIO> と B<SIGLOST> は同じ値を持っている。 B<SIGLOST> はカーネルのソースで"
-"はコメントアウトされている。 しかし、ソフトウェアによってはビルドの過程でシグ"
-"ナル 29 を B<SIGLOST> とみなしてしまうものがある。"
-
-#. type: Plain text
-#: build/C/man7/signal.7:878
+#: build/C/man7/signal.7:925
msgid ""
-"B<kill>(1), B<getrlimit>(2), B<kill>(2), B<killpg>(2), B<rt_sigqueueinfo>"
-"(2), B<setitimer>(2), B<setrlimit>(2), B<sgetmask>(2), B<sigaction>(2), "
-"B<sigaltstack>(2), B<signal>(2), B<signalfd>(2), B<sigpending>(2), "
-"B<sigprocmask>(2), B<sigsuspend>(2), B<sigwaitinfo>(2), B<abort>(3), "
+"B<kill>(1), B<getrlimit>(2), B<kill>(2), B<killpg>(2), "
+"B<restart_syscall>(2), B<rt_sigqueueinfo>(2), B<setitimer>(2), "
+"B<setrlimit>(2), B<sgetmask>(2), B<sigaction>(2), B<sigaltstack>(2), "
+"B<signal>(2), B<signalfd>(2), B<sigpending>(2), B<sigprocmask>(2), "
+"B<sigreturn>(2), B<sigsuspend>(2), B<sigwaitinfo>(2), B<abort>(3), "
"B<bsd_signal>(3), B<longjmp>(3), B<raise>(3), B<pthread_sigqueue>(3), "
"B<sigqueue>(3), B<sigset>(3), B<sigsetops>(3), B<sigvec>(3), B<sigwait>(3), "
"B<strsignal>(3), B<sysv_signal>(3), B<core>(5), B<proc>(5), B<pthreads>(7), "
"B<sigevent>(7)"
msgstr ""
-"B<kill>(1), B<getrlimit>(2), B<kill>(2), B<killpg>(2), B<rt_sigqueueinfo>"
-"(2), B<setitimer>(2), B<setrlimit>(2), B<sgetmask>(2), B<sigaction>(2), "
-"B<sigaltstack>(2), B<signal>(2), B<signalfd>(2), B<sigpending>(2), "
-"B<sigprocmask>(2), B<sigsuspend>(2), B<sigwaitinfo>(2), B<abort>(3), "
+"B<kill>(1), B<getrlimit>(2), B<kill>(2), B<killpg>(2), "
+"B<restart_syscall>(2), B<rt_sigqueueinfo>(2), B<setitimer>(2), "
+"B<setrlimit>(2), B<sgetmask>(2), B<sigaction>(2), B<sigaltstack>(2), "
+"B<signal>(2), B<signalfd>(2), B<sigpending>(2), B<sigprocmask>(2), "
+"B<sigreturn>(2), B<sigsuspend>(2), B<sigwaitinfo>(2), B<abort>(3), "
"B<bsd_signal>(3), B<longjmp>(3), B<raise>(3), B<pthread_sigqueue>(3), "
"B<sigqueue>(3), B<sigset>(3), B<sigsetops>(3), B<sigvec>(3), B<sigwait>(3), "
"B<strsignal>(3), B<sysv_signal>(3), B<core>(5), B<proc>(5), B<pthreads>(7), "
"B<sigevent>(7)"
#. type: TH
-#: build/C/man2/signalfd.2:19
+#: build/C/man2/signalfd.2:20
#, no-wrap
msgid "SIGNALFD"
-msgstr "SIGNALFD"
-
-#. type: TH
-#: build/C/man2/signalfd.2:19
-#, no-wrap
-msgid "2009-01-13"
-msgstr "2009-01-13"
+msgstr "SIGNALFD"
#. type: Plain text
-#: build/C/man2/signalfd.2:22
+#: build/C/man2/signalfd.2:23
msgid "signalfd - create a file descriptor for accepting signals"
-msgstr "signalfd - シグナル受け付け用のファイルディスクリプタを生成する"
+msgstr "signalfd - ã\82·ã\82°ã\83\8aã\83«å\8f\97ã\81\91ä»\98ã\81\91ç\94¨ã\81®ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\83¼ã\82\92ç\94\9fæ\88\90ã\81\99ã\82\8b"
#. type: Plain text
-#: build/C/man2/signalfd.2:24
+#: build/C/man2/signalfd.2:25
msgid "B<#include E<lt>sys/signalfd.hE<gt>>"
msgstr "B<#include E<lt>sys/signalfd.hE<gt>>"
#. type: Plain text
-#: build/C/man2/signalfd.2:26
+#: build/C/man2/signalfd.2:27
msgid ""
"B<int signalfd(int >I<fd>B<, const sigset_t *>I<mask>B<, int >I<flags>B<);>"
msgstr ""
"B<int signalfd(int >I<fd>B<, const sigset_t *>I<mask>B<, int >I<flags>B<);>"
#. type: Plain text
-#: build/C/man2/signalfd.2:37
+#: build/C/man2/signalfd.2:38
msgid ""
"B<signalfd>() creates a file descriptor that can be used to accept signals "
"targeted at the caller. This provides an alternative to the use of a signal "
"may be monitored by B<select>(2), B<poll>(2), and B<epoll>(7)."
msgstr ""
"B<signalfd>() は、呼び出し元宛てのシグナルを受け付けるために使用されるファイ"
-"ル ディスクリプタを生成する。 この方法はシグナルハンドラや B<sigwaitinfo>"
-"(2) を用いる方法の代わりとなるものであり、このファイルディスクリプタを "
-"B<select>(2), B<poll>(2), B<epoll>(7) で監視できるという利点がある。"
+"ル ディスクリプターを生成する。 この方法はシグナルハンドラーや "
+"B<sigwaitinfo>(2) を用いる方法の代わりとなるものであり、このファイルディスク"
+"リプターを B<select>(2), B<poll>(2), B<epoll>(7) で監視できるという利点があ"
+"る。"
#. type: Plain text
-#: build/C/man2/signalfd.2:57
+#: build/C/man2/signalfd.2:58
msgid ""
"The I<mask> argument specifies the set of signals that the caller wishes to "
"accept via the file descriptor. This argument is a signal set whose "
"B<SIGKILL> or B<SIGSTOP> signals via a signalfd file descriptor; these "
"signals are silently ignored if specified in I<mask>."
msgstr ""
-"I<mask> 引き数には、呼び出し元がこのファイルディスクリプタ経由で受け付けたい "
-"シグナル集合を指定する。この引き数で指定するシグナル集合の内容は、 "
+"I<mask> 引き数には、呼び出し元がこのファイルディスクリプター経由で受け付けた"
+"ã\81\84 ã\82·ã\82°ã\83\8aã\83«é\9b\86å\90\88ã\82\92æ\8c\87å®\9aã\81\99ã\82\8bã\80\82ã\81\93ã\81®å¼\95ã\81\8dæ\95°ã\81§æ\8c\87å®\9aã\81\99ã\82\8bã\82·ã\82°ã\83\8aã\83«é\9b\86å\90\88ã\81®å\86\85容ã\81¯ã\80\81 "
"B<sigsetops>(3) で説明されているマクロを使って初期化することができる。 通"
-"常、ファイルディスクリプタ経由で受信するシグナル集合は、 そのシグナルがデフォ"
-"ã\83«ã\83\88ã\81®é\85\8dé\80\81æ\96¹æ³\95ã\81«å\9fºã\81\84ã\81¦å\87¦ç\90\86ã\81\95ã\82\8cã\82\8bã\81®ã\82\92é\98²ã\81\90ã\81\9fã\82\81ã\81«ã\80\81 B<sigprocmask>(2) ã\82\92使ã\81£ã\81¦"
-"ブロックしておくべきである。 シグナル B<SIGKILL> と B<SIGSTOP> を signalfd "
-"ファイルディスクリプタ経由で受信することはできない。 これらのシグナルが "
-"I<mask> で指定された場合には黙って無視される。"
+"常、ファイルディスクリプター経由で受信するシグナル集合は、 そのシグナルがデ"
+"ã\83\95ã\82©ã\83«ã\83\88ã\81®é\85\8dé\80\81æ\96¹æ³\95ã\81«å\9fºã\81\84ã\81¦å\87¦ç\90\86ã\81\95ã\82\8cã\82\8bã\81®ã\82\92é\98²ã\81\90ã\81\9fã\82\81ã\81«ã\80\81 B<sigprocmask>(2) ã\82\92"
+"使ってブロックしておくべきである。 シグナル B<SIGKILL> と B<SIGSTOP> を "
+"signalfd ファイルディスクリプター経由で受信することはできない。 これらのシグ"
+"ナルが I<mask> で指定された場合には黙って無視される。"
#. type: Plain text
-#: build/C/man2/signalfd.2:71
+#: build/C/man2/signalfd.2:72
msgid ""
"If the I<fd> argument is -1, then the call creates a new file descriptor and "
"associates the signal set specified in I<mask> with that descriptor. If "
"descriptor, and I<mask> is used to replace the signal set associated with "
"that descriptor."
msgstr ""
-"I<fd> å¼\95ã\81\8dæ\95°ã\81\8c -1 ã\81®å ´å\90\88ã\80\81 B<signalfd>() ã\81¯æ\96°ã\81\97ã\81\84ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\82\92ç\94\9f"
-"成し、 I<mask> で指定されたシグナル集合をそのファイルディスクリプタに関連付け"
-"る。 I<fd> 引き数が -1 以外の場合、 I<fd> には有効な既存の signalfd ファイル"
-"ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\82\92æ\8c\87å®\9aã\81\97ã\81ªã\81\91ã\82\8cã\81°ã\81ªã\82\89ã\81\9aã\80\81 ã\81\9dã\81®ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\81«é\96¢é\80£ä»\98ã\81\91ã\82\89ã\82\8cã\81¦ã\81\84ã\82\8b"
-"シグナル集合は I<mask> を使って置き換えられる。"
+"I<fd> å¼\95ã\81\8dæ\95°ã\81\8c -1 ã\81®å ´å\90\88ã\80\81 B<signalfd>() ã\81¯æ\96°ã\81\97ã\81\84ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\83¼ã\82\92"
+"生成し、 I<mask> で指定されたシグナル集合をそのファイルディスクリプターに関連"
+"付ける。 I<fd> 引き数が -1 以外の場合、 I<fd> には有効な既存の signalfd ファ"
+"ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\83¼ã\82\92æ\8c\87å®\9aã\81\97ã\81ªã\81\91ã\82\8cã\81°ã\81ªã\82\89ã\81\9aã\80\81 ã\81\9dã\81®ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\83¼ã\81«é\96¢é\80£ä»\98ã\81\91ã\82\89"
+"ã\82\8cã\81¦ã\81\84ã\82\8bã\82·ã\82°ã\83\8aã\83«é\9b\86å\90\88ã\81¯ I<mask> ã\82\92使ã\81£ã\81¦ç½®ã\81\8dæ\8f\9bã\81\88ã\82\89ã\82\8cã\82\8bã\80\82"
#. type: Plain text
-#: build/C/man2/signalfd.2:76
+#: build/C/man2/signalfd.2:77
msgid ""
"Starting with Linux 2.6.27, the following values may be bitwise ORed in "
-"I<flags> to change the behaviour of B<signalfd>():"
+"I<flags> to change the behavior of B<signalfd>():"
msgstr ""
"Linux 2.6.27 以降では、 以下の値のいくつかをビット単位の論理和 (OR) で指定す"
"ることで、 B<signalfd>() の振舞いを変更することができる。"
#. type: TP
-#: build/C/man2/signalfd.2:76
+#: build/C/man2/signalfd.2:77
#, no-wrap
msgid "B<SFD_NONBLOCK>"
msgstr "B<SFD_NONBLOCK>"
#. type: TP
-#: build/C/man2/signalfd.2:84
+#: build/C/man2/signalfd.2:85
#, no-wrap
msgid "B<SFD_CLOEXEC>"
msgstr "B<SFD_CLOEXEC>"
#. type: Plain text
-#: build/C/man2/signalfd.2:101
+#: build/C/man2/signalfd.2:102
msgid ""
"B<signalfd>() returns a file descriptor that supports the following "
"operations:"
msgstr ""
-"B<signalfd>() が返すファイルディスクリプタは以下の操作をサポートしている。"
+"B<signalfd>() ã\81\8cè¿\94ã\81\99ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\83¼ã\81¯ä»¥ä¸\8bã\81®æ\93\8dä½\9cã\82\92ã\82µã\83\9dã\83¼ã\83\88ã\81\97ã\81¦ã\81\84ã\82\8bã\80\82"
#. type: Plain text
-#: build/C/man2/signalfd.2:120
+#: build/C/man2/signalfd.2:121
msgid ""
"If one or more of the signals specified in I<mask> is pending for the "
"process, then the buffer supplied to B<read>(2) is used to return one or "
"more I<signalfd_siginfo> structures (see below) that describe the signals. "
"The B<read>(2) returns information for as many signals as are pending and "
-"will fit in the supplied buffer. The buffer must be at least I<sizeof"
-"(struct signalfd_siginfo)> bytes. The return value of the B<read>(2) is "
-"the total number of bytes read."
+"will fit in the supplied buffer. The buffer must be at least "
+"I<sizeof(struct signalfd_siginfo)> bytes. The return value of the "
+"B<read>(2) is the total number of bytes read."
msgstr ""
"I<mask> に指定されているシグナルのうち一つ以上がそのプロセスに対して 処理待"
"ち (pending) であれば、それらのシグナルの情報が B<read>(2) に渡されたバッ"
-"ã\83\95ã\82¡ã\82\92使ã\81£ã\81¦ã\80\81 I<signalfd_siginfo> æ§\8bé\80 ä½\93ã\81«æ ¼ç´\8dã\81\95ã\82\8cã\81¦è¿\94ã\81\95ã\82\8cã\82\8bã\80\82 B<read>(2) "
-"は、バッファに格納可能な範囲でできるだけ多くの処理待ちのシグナルに ついての情"
-"報を返す。 バッファは最低でも I<sizeof(struct signalfd_siginfo)> バイトの大き"
-"さがなければならない。 B<read>(2) の返り値は読み出されたトータルのバイト数で"
-"ある。"
+"ã\83\95ã\82¡ã\83¼ã\82\92使ã\81£ã\81¦ã\80\81 I<signalfd_siginfo> æ§\8bé\80 ä½\93ã\81«æ ¼ç´\8dã\81\95ã\82\8cã\81¦è¿\94ã\81\95ã\82\8cã\82\8bã\80\82 "
+"B<read>(2) は、バッファーに格納可能な範囲でできるだけ多くの処理待ちのシグナ"
+"ルに ついての情報を返す。 バッファーは最低でも I<sizeof(struct "
+"signalfd_siginfo)> バイトの大きさがなければならない。 B<read>(2) の返り値は"
+"読み出されたトータルのバイト数である。"
#. type: Plain text
-#: build/C/man2/signalfd.2:128
+#: build/C/man2/signalfd.2:129
msgid ""
"As a consequence of the B<read>(2), the signals are consumed, so that they "
"are no longer pending for the process (i.e., will not be caught by signal "
"handlers, and cannot be accepted using B<sigwaitinfo>(2))."
msgstr ""
"B<read>(2) が行われた結果、シグナルは消費され、 これらのシグナルはそのプロセ"
-"ã\82¹ã\81«å¯¾ã\81\97ã\81¦ã\81¯å\87¦ç\90\86å¾\85ã\81¡ã\81§ã\81¯ã\81ªã\81\8fã\81ªã\82\8b (ã\81¤ã\81¾ã\82\8aã\80\81ã\82·ã\82°ã\83\8aã\83«ã\83\8fã\83³ã\83\89ã\83©ã\81§æ\8d\95æ\8d\89ã\81\95ã\82\8cã\82\8bã\81\93ã\81¨ã\82\82"
-"なく、 B<sigwaitinfo>(2) を使って受け取ることもできなくなる)。"
+"ã\82¹ã\81«å¯¾ã\81\97ã\81¦ã\81¯å\87¦ç\90\86å¾\85ã\81¡ã\81§ã\81¯ã\81ªã\81\8fã\81ªã\82\8b (ã\81¤ã\81¾ã\82\8aã\80\81ã\82·ã\82°ã\83\8aã\83«ã\83\8fã\83³ã\83\89ã\83©ã\83¼ã\81§æ\8d\95æ\8d\89ã\81\95ã\82\8cã\82\8bã\81\93ã\81¨"
+"ã\82\82ã\81ªã\81\8fã\80\81 B<sigwaitinfo>(2) ã\82\92使ã\81£ã\81¦å\8f\97ã\81\91å\8f\96ã\82\8bã\81\93ã\81¨ã\82\82ã\81§ã\81\8dã\81ªã\81\8fã\81ªã\82\8b)ã\80\82"
#. type: Plain text
-#: build/C/man2/signalfd.2:139
+#: build/C/man2/signalfd.2:140
msgid ""
"If none of the signals in I<mask> is pending for the process, then the "
"B<read>(2) either blocks until one of the signals in I<mask> is generated "
msgstr ""
"I<mask> に指定されているシグナルがそのプロセスに対して一つも処理待ちでなけれ"
"ば、 B<read>(2) は、 I<mask> で指定されたシグナルのうちいずれか一つがそのプ"
-"ロセスに対して発生するまで 停止 (block) する、もしくはファイルディスクリプタ"
-"が非停止 (nonblocking) に設定されている場合はエラー B<EAGAIN> で失敗する。"
+"ロセスに対して発生するまで 停止 (block) する、もしくはファイルディスクリプ"
+"ターが非停止 (nonblocking) に設定されている場合はエラー B<EAGAIN> で失敗す"
+"る。"
#. type: Plain text
-#: build/C/man2/signalfd.2:152
+#: build/C/man2/signalfd.2:153
msgid ""
"The file descriptor is readable (the B<select>(2) I<readfds> argument; the "
"B<poll>(2) B<POLLIN> flag) if one or more of the signals in I<mask> is "
"pending for the process."
msgstr ""
"I<mask> に指定されたシグナルのうち一つ以上がそのプロセスに対して処理待ちであ"
-"れば、 ファイルディスクリプタは読み出し可能となる (B<select>(2) の "
+"ã\82\8cã\81°ã\80\81 ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\83¼ã\81¯èªã\81¿å\87ºã\81\97å\8f¯è\83½ã\81¨ã\81ªã\82\8b (B<select>(2) ã\81® "
"I<readfds> 引き数や B<poll>(2) の B<POLLIN> フラグ)。"
#. type: Plain text
-#: build/C/man2/signalfd.2:159
+#: build/C/man2/signalfd.2:160
msgid ""
"The signalfd file descriptor also supports the other file-descriptor "
"multiplexing APIs: B<pselect>(2), B<ppoll>(2), and B<epoll>(7)."
msgstr ""
-"signalfd ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\81¯ã\80\81ã\81\93ã\82\8c以å¤\96ã\81®ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ å¤\9aé\87\8d API "
-"である B<pselect>(2), B<ppoll>(2), B<epoll>(7) もサポートしている。"
+"signalfd ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\83¼ã\81¯ã\80\81ã\81\93ã\82\8c以å¤\96ã\81®ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\83¼ å¤\9aé\87\8d "
+"API である B<pselect>(2), B<ppoll>(2), B<epoll>(7) もサポートしている。"
#. type: Plain text
-#: build/C/man2/signalfd.2:164
+#: build/C/man2/signalfd.2:165
msgid ""
"When the file descriptor is no longer required it should be closed. When "
"all file descriptors associated with the same signalfd object have been "
"closed, the resources for object are freed by the kernel."
msgstr ""
-"ファイルディスクリプタがそれ以降は必要なくなった際には、クローズすべきであ"
-"ã\82\8bã\80\82 å\90\8cã\81\98 signalfd ã\82ªã\83\96ã\82¸ã\82§ã\82¯ã\83\88ã\81«é\96¢é\80£ä»\98ã\81\91ã\82\89ã\82\8cã\81\9fã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\81\8cå\85¨ã\81¦ "
-"クローズされると、そのオブジェクト用の資源がカーネルにより解放される。"
+"ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\83¼ã\81\8cã\81\9dã\82\8c以é\99\8dã\81¯å¿\85è¦\81ã\81ªã\81\8fã\81ªã\81£ã\81\9fé\9a\9bã\81«ã\81¯ã\80\81ã\82¯ã\83ã\83¼ã\82ºã\81\99ã\81¹ã\81\8dã\81§ã\81\82"
+"ã\82\8bã\80\82 å\90\8cã\81\98 signalfd ã\82ªã\83\96ã\82¸ã\82§ã\82¯ã\83\88ã\81«é\96¢é\80£ä»\98ã\81\91ã\82\89ã\82\8cã\81\9fã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\83¼ã\81\8cå\85¨"
+"ã\81¦ ã\82¯ã\83ã\83¼ã\82ºã\81\95ã\82\8cã\82\8bã\81¨ã\80\81ã\81\9dã\81®ã\82ªã\83\96ã\82¸ã\82§ã\82¯ã\83\88ç\94¨ã\81®è³\87æº\90ã\81\8cã\82«ã\83¼ã\83\8dã\83«ã\81«ã\82\88ã\82\8a解æ\94¾ã\81\95ã\82\8cã\82\8bã\80\82"
#. type: SS
-#: build/C/man2/signalfd.2:164
+#: build/C/man2/signalfd.2:165
#, no-wrap
msgid "The signalfd_siginfo structure"
msgstr "signalfd_siginfo 構造体"
#. type: Plain text
-#: build/C/man2/signalfd.2:170
+#: build/C/man2/signalfd.2:171
msgid ""
"The format of the I<signalfd_siginfo> structure(s) returned by B<read>(2)s "
"from a signalfd file descriptor is as follows:"
msgstr ""
-"signalfd ファイルディスクリプタからの B<read>(2) で返される "
+"signalfd ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\83¼ã\81\8bã\82\89ã\81® B<read>(2) ã\81§è¿\94ã\81\95ã\82\8cã\82\8b "
"I<signalfd_siginfo> 構造体のフォーマットは以下の通りである。"
#. ssi_trapno is unused on most arches
+#. FIXME Since Linux 2.6.37 there is 'uint16_t ssi_addr_lsb'
+#. in the signalfd_siginfo structure. This needs to be documented.
#. type: Plain text
-#: build/C/man2/signalfd.2:195
+#: build/C/man2/signalfd.2:198
#, no-wrap
msgid ""
"struct signalfd_siginfo {\n"
" int32_t ssi_code; /* シグナルコード */\n"
" uint32_t ssi_pid; /* 送信元の PID */\n"
" uint32_t ssi_uid; /* 送信元の実 UID */\n"
-" int32_t ssi_fd; /* ファイルディスクリプタ (SIGIO) */\n"
-" uint32_t ssi_tid; /* カーネルタイマ ID (POSIX タイマ)\n"
+" int32_t ssi_fd; /* ファイルディスクリプター (SIGIO) */\n"
+" uint32_t ssi_tid; /* カーネルタイマー ID (POSIX タイマー)\n"
" uint32_t ssi_band; /* Band イベント (SIGIO) */\n"
-" uint32_t ssi_overrun; /* POSIX タイマのオーバーラン回数 */\n"
+" uint32_t ssi_overrun; /* POSIX ã\82¿ã\82¤ã\83\9eã\83¼ã\81®ã\82ªã\83¼ã\83\90ã\83¼ã\83©ã\83³å\9b\9eæ\95° */\n"
" uint32_t ssi_trapno; /* シグナルの原因となったトラップ番号 */\n"
" int32_t ssi_status; /* 終了ステータスかシグナル (SIGCHLD) */\n"
" int32_t ssi_int; /* sigqueue(3) から送られた整数 */\n"
-" uint64_t ssi_ptr; /* sigqueue(3) から送られたポインタ */\n"
-" uint64_t ssi_utime; /* 消費したユーザ CPU 時間 (SIGCHLD) */\n"
+" uint64_t ssi_ptr; /* sigqueue(3) から送られたポインター */\n"
+" uint64_t ssi_utime; /* 消費したユーザー CPU 時間 (SIGCHLD) */\n"
" uint64_t ssi_stime; /* 消費したシステム CPU 時間 (SIGCHLD) */\n"
" uint64_t ssi_addr; /* シグナルを生成したアドレス\n"
" (ハードウェアが生成したシグナルの場合) */\n"
"};\n"
#. type: Plain text
-#: build/C/man2/signalfd.2:218
+#: build/C/man2/signalfd.2:221
msgid ""
"Each of the fields in this structure is analogous to the similarly named "
"field in the I<siginfo_t> structure. The I<siginfo_t> structure is "
"B<sigaction>(2) for details."
msgstr ""
"I<signalfd_siginfo> 構造体の各フィールドは、 I<siginfo_t> 構造体の同じような"
-"名前のフィールドと同様である。 I<siginfo_t> 構造体については B<sigaction>"
-"(2) に説明がある。 返された I<signalfd_siginfo> 構造体の全てのフィールドがあ"
-"ã\82\8bã\82·ã\82°ã\83\8aã\83«ã\81«å¯¾ã\81\97ã\81¦æ\9c\89å\8a¹ã\81ªã\82\8fã\81\91ã\81§ã\81¯ã\81ªã\81\84ã\80\82 ã\81©ã\81®ã\83\95ã\82£ã\83¼ã\83«ã\83\89ã\81\8cæ\9c\89å\8a¹ã\81\8bã\81¯ã\80\81 "
-"I<ssi_code> フィールドで返される値から判定することができる。 このフィールド"
-"ã\81¯ I<siginfo_t> ã\81® I<si_code> ã\83\95ã\82£ã\83¼ã\83«ã\83\89ã\81¨å\90\8cæ§\98ã\81§ã\81\82ã\82\8bã\80\82詳細ã\81¯ B<sigaction>"
-"(2) を参照。"
+"名前のフィールドと同様である。 I<siginfo_t> 構造体については "
+"B<sigaction>(2) に説明がある。 返された I<signalfd_siginfo> 構造体の全ての"
+"ã\83\95ã\82£ã\83¼ã\83«ã\83\89ã\81\8cã\81\82ã\82\8bã\82·ã\82°ã\83\8aã\83«ã\81«å¯¾ã\81\97ã\81¦æ\9c\89å\8a¹ã\81ªã\82\8fã\81\91ã\81§ã\81¯ã\81ªã\81\84ã\80\82 ã\81©ã\81®ã\83\95ã\82£ã\83¼ã\83«ã\83\89ã\81\8cæ\9c\89å\8a¹ã\81\8b"
+"は、 I<ssi_code> フィールドで返される値から判定することができる。 このフィー"
+"ã\83«ã\83\89ã\81¯ I<siginfo_t> ã\81® I<si_code> ã\83\95ã\82£ã\83¼ã\83«ã\83\89ã\81¨å\90\8cæ§\98ã\81§ã\81\82ã\82\8bã\80\82詳細ã\81¯ "
+"B<sigaction>(2) を参照。"
#. type: SS
-#: build/C/man2/signalfd.2:218 build/C/man2/timerfd_create.2:268
+#: build/C/man2/signalfd.2:221 build/C/man2/timerfd_create.2:276
#, no-wrap
msgid "fork(2) semantics"
msgstr "fork(2) での扱い"
#. type: Plain text
-#: build/C/man2/signalfd.2:226
+#: build/C/man2/signalfd.2:229
msgid ""
"After a B<fork>(2), the child inherits a copy of the signalfd file "
"descriptor. A B<read>(2) from the file descriptor in the child will return "
"information about signals queued to the child."
msgstr ""
-"B<fork>(2) が行われると、子プロセスは signalfd ファイルディスクリプタのコ"
-"ã\83\94ã\83¼ã\82\92 ç¶\99æ\89¿ã\81\99ã\82\8bã\80\82 å\90ã\83\97ã\83ã\82»ã\82¹ã\81§ã\81\93ã\81®ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\81\8bã\82\89 B<read>(2) ã\82\92è¡\8c"
-"うと、子プロセスに対するキューに入っているシグナルに関する 情報が返される。"
+"B<fork>(2) ã\81\8cè¡\8cã\82\8fã\82\8cã\82\8bã\81¨ã\80\81å\90ã\83\97ã\83ã\82»ã\82¹ã\81¯ signalfd ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\83¼ã\81®ã\82³"
+"ã\83\94ã\83¼ã\82\92 ç¶\99æ\89¿ã\81\99ã\82\8bã\80\82 å\90ã\83\97ã\83ã\82»ã\82¹ã\81§ã\81\93ã\81®ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\83¼ã\81\8bã\82\89 B<read>(2) ã\82\92"
+"行うと、子プロセスに対するキューに入っているシグナルに関する 情報が返される。"
#. type: SS
-#: build/C/man2/signalfd.2:226 build/C/man2/timerfd_create.2:280
+#: build/C/man2/signalfd.2:229 build/C/man2/timerfd_create.2:288
#, no-wrap
msgid "execve(2) semantics"
msgstr "execve(2) での扱い"
#. type: Plain text
-#: build/C/man2/signalfd.2:238
+#: build/C/man2/signalfd.2:241
msgid ""
"Just like any other file descriptor, a signalfd file descriptor remains open "
"across an B<execve>(2), unless it has been marked for close-on-exec (see "
"analogous to traditional signal semantics, where a blocked signal that is "
"pending remains pending across an B<execve>(2).)"
msgstr ""
-"ä»\96ã\81®ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\81¨å\85¨ã\81\8få\90\8cæ§\98ã\81«ã\80\81 signalfd ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\82\82 "
-"B<execve>(2) の前後でオープンされたままとなる。但し、そのファイルディスクリ"
-"ã\83\97ã\82¿ã\81« close-on-exec ã\81®ã\83\9eã\83¼ã\82¯ (B<fcntl>(2) å\8f\82ç\85§) ã\81\8cä»\98ã\81\84ã\81¦ã\81\84ã\82\8bå ´å\90\88ã\81¯ã\82¯ã\83ã\83¼ã\82º"
-"ã\81\95ã\82\8cã\82\8bã\80\82 B<execve>(2) ã\81®å\89\8dã\81«èªã\81¿å\87ºã\81\97å\8f¯è\83½ã\81¨ã\81ªã\81£ã\81¦ã\81\84ã\81\9få\85¨ã\81¦ã\81®ã\82·ã\82°ã\83\8aã\83«ã\81¯æ\96°ã\81\97ã\81\8fèµ·"
-"動されたプログラム でも引き続き読み出し可能である (これは伝統的なシグナルの扱"
-"ã\81\84ã\81¨å\90\8cã\81\98ã\81§ã\81\82ã\82\8aã\80\81 å\87¦ç\90\86å¾\85ã\81¡ã\81®ã\83\96ã\83ã\83\83ã\82¯ã\81\95ã\82\8cã\81\9fã\82·ã\82°ã\83\8aã\83«ã\81¯ B<execve>(2) ã\81®å\89\8då¾\8cã\81§å\87¦"
-"理待ちのままとなる)。"
+"ä»\96ã\81®ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\83¼ã\81¨å\85¨ã\81\8få\90\8cæ§\98ã\81«ã\80\81 signalfd ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\83¼"
+"も B<execve>(2) の前後でオープンされたままとなる。但し、そのファイルディスク"
+"ã\83ªã\83\97ã\82¿ã\83¼ã\81« close-on-exec ã\81®ã\83\9eã\83¼ã\82¯ (B<fcntl>(2) å\8f\82ç\85§) ã\81\8cä»\98ã\81\84ã\81¦ã\81\84ã\82\8bå ´å\90\88ã\81¯ã\82¯"
+"ã\83ã\83¼ã\82ºã\81\95ã\82\8cã\82\8bã\80\82 B<execve>(2) ã\81®å\89\8dã\81«èªã\81¿å\87ºã\81\97å\8f¯è\83½ã\81¨ã\81ªã\81£ã\81¦ã\81\84ã\81\9få\85¨ã\81¦ã\81®ã\82·ã\82°ã\83\8aã\83«ã\81¯æ\96°"
+"しく起動されたプログラム でも引き続き読み出し可能である (これは伝統的なシグナ"
+"ã\83«ã\81®æ\89±ã\81\84ã\81¨å\90\8cã\81\98ã\81§ã\81\82ã\82\8aã\80\81 å\87¦ç\90\86å¾\85ã\81¡ã\81®ã\83\96ã\83ã\83\83ã\82¯ã\81\95ã\82\8cã\81\9fã\82·ã\82°ã\83\8aã\83«ã\81¯ B<execve>(2) ã\81®å\89\8d"
+"後で処理待ちのままとなる)。"
#. type: SS
-#: build/C/man2/signalfd.2:238
+#: build/C/man2/signalfd.2:241
#, no-wrap
msgid "Thread semantics"
msgstr "スレッドでの扱い"
#. type: Plain text
-#: build/C/man2/signalfd.2:248
+#: build/C/man2/signalfd.2:251
msgid ""
"The semantics of signalfd file descriptors in a multithreaded program mirror "
"the standard semantics for signals. In other words, when a thread reads "
"the entire thread group). (A thread will not be able to read signals that "
"are directed to other threads in the process.)"
msgstr ""
-"ã\83\9eã\83«ã\83\81ã\82¹ã\83¬ã\83\83ã\83\89ã\83\97ã\83ã\82°ã\83©ã\83 ã\81«ã\81\8aã\81\91ã\82\8b signalfd ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\81®æ\89±ã\81\84ã\81¯ ã\82·ã\82°"
-"ナルの標準的な扱いと全く同じである。 言い換えると、あるスレッドが signalfd "
-"ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\81\8bã\82\89 èªã\81¿å\87ºã\81\97ã\82\92è¡\8cã\81\86ã\81¨ã\80\81ã\81\9dã\81®ã\82¹ã\83¬ã\83\83ã\83\89è\87ªèº«å®\9bã\81¦ã\81®ã\82·ã\82°ã\83\8aã\83«ã\81¨"
-"プロセス (すなわち スレッドグループ全体) 宛てのシグナルが読み出される。 (ス"
+"ã\83\9eã\83«ã\83\81ã\82¹ã\83¬ã\83\83ã\83\89ã\83\97ã\83ã\82°ã\83©ã\83 ã\81«ã\81\8aã\81\91ã\82\8b signalfd ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\83¼ã\81®æ\89±ã\81\84ã\81¯ ã\82·"
+"ã\82°ã\83\8aã\83«ã\81®æ¨\99æº\96ç\9a\84ã\81ªæ\89±ã\81\84ã\81¨å\85¨ã\81\8få\90\8cã\81\98ã\81§ã\81\82ã\82\8bã\80\82 è¨\80ã\81\84æ\8f\9bã\81\88ã\82\8bã\81¨ã\80\81ã\81\82ã\82\8bã\82¹ã\83¬ã\83\83ã\83\89ã\81\8c signalfd "
+"ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\83¼ã\81\8bã\82\89 èªã\81¿å\87ºã\81\97ã\82\92è¡\8cã\81\86ã\81¨ã\80\81ã\81\9dã\81®ã\82¹ã\83¬ã\83\83ã\83\89è\87ªèº«å®\9bã\81¦ã\81®ã\82·ã\82°ã\83\8aã\83«"
+"ã\81¨ã\83\97ã\83ã\82»ã\82¹ (ã\81\99ã\81ªã\82\8fã\81¡ ã\82¹ã\83¬ã\83\83ã\83\89ã\82°ã\83«ã\83¼ã\83\97å\85¨ä½\93) å®\9bã\81¦ã\81®ã\82·ã\82°ã\83\8aã\83«ã\81\8cèªã\81¿å\87ºã\81\95ã\82\8cã\82\8bã\80\82 (ã\82¹"
"レッドは同じプロセスの他のスレッド宛てのシグナルを読み出すことはできない。)"
#. type: Plain text
-#: build/C/man2/signalfd.2:262
+#: build/C/man2/signalfd.2:265
msgid ""
"On success, B<signalfd>() returns a signalfd file descriptor; this is "
"either a new file descriptor (if I<fd> was -1), or I<fd> if I<fd> was a "
"valid signalfd file descriptor. On error, -1 is returned and I<errno> is "
"set to indicate the error."
msgstr ""
-"成功すると、 B<signalfd>() は signalfd ファイルディスクリプタを返す。 返され"
-"るファイルディスクリプタは、 I<fd> が -1 の場合は新規のファイルディスクリプタ"
-"であり、 I<fd> が有効な signalfd ファイルディスクリプタだった場合は I<fd> 自"
-"身である。 エラーの場合、-1 を返し、 I<errno> にエラーを示す値を設定する。"
-
-#. type: TP
-#: build/C/man2/signalfd.2:263 build/C/man2/timerfd_create.2:337
-#, no-wrap
-msgid "B<EBADF>"
-msgstr "B<EBADF>"
+"成功すると、 B<signalfd>() は signalfd ファイルディスクリプターを返す。 返さ"
+"れるファイルディスクリプターは、 I<fd> が -1 の場合は新規のファイルディスクリ"
+"プターであり、 I<fd> が有効な signalfd ファイルディスクリプターだった場合は "
+"I<fd> 自身である。 エラーの場合、-1 を返し、 I<errno> にエラーを示す値を設定"
+"する。"
#. type: Plain text
-#: build/C/man2/signalfd.2:268
+#: build/C/man2/signalfd.2:271
msgid "The I<fd> file descriptor is not a valid file descriptor."
-msgstr "ファイルディスクリプタ I<fd> が有効なファイルディスクリプタでない。"
+msgstr ""
+"ファイルディスクリプター I<fd> が有効なファイルディスクリプターでない。"
#. or, the
#. .I sizemask
#. argument is not equal to
#. .IR sizeof(sigset_t) ;
#. type: Plain text
-#: build/C/man2/signalfd.2:276
+#: build/C/man2/signalfd.2:279
msgid "I<fd> is not a valid signalfd file descriptor."
-msgstr "I<fd> が有効な signalfd ファイルディスクリプタではない。"
+msgstr "I<fd> ã\81\8cæ\9c\89å\8a¹ã\81ª signalfd ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\83¼ã\81§ã\81¯ã\81ªã\81\84ã\80\82"
#. type: Plain text
-#: build/C/man2/signalfd.2:283 build/C/man2/timerfd_create.2:319
+#: build/C/man2/signalfd.2:286 build/C/man2/timerfd_create.2:327
msgid ""
"I<flags> is invalid; or, in Linux 2.6.26 or earlier, I<flags> is nonzero."
msgstr ""
"外である。"
#. type: Plain text
-#: build/C/man2/signalfd.2:286 build/C/man2/timerfd_create.2:322
+#: build/C/man2/signalfd.2:289 build/C/man2/timerfd_create.2:330
msgid "The per-process limit of open file descriptors has been reached."
msgstr ""
-"オープン済みのファイルディスクリプタの数がプロセスあたりの上限に 達していた。"
+"オープン済みのファイルディスクリプターの数がプロセスあたりの上限に 達してい"
+"た。"
#. type: Plain text
-#: build/C/man2/signalfd.2:296
+#: build/C/man2/signalfd.2:299
msgid "There was insufficient memory to create a new signalfd file descriptor."
msgstr ""
-"新しい signalfd ファイルディスクリプタを生成するのに十分なメモリがなかった。"
+"新しい signalfd ファイルディスクリプターを生成するのに十分なメモリーがなかっ"
+"た。"
#. signalfd() is in glibc 2.7, but reportedly does not build
#. type: Plain text
-#: build/C/man2/signalfd.2:304
+#: build/C/man2/signalfd.2:307
msgid ""
"B<signalfd>() is available on Linux since kernel 2.6.22. Working support "
"is provided in glibc since version 2.8. The B<signalfd4>() system call "
"る。"
#. type: Plain text
-#: build/C/man2/signalfd.2:309
+#: build/C/man2/signalfd.2:312
msgid "B<signalfd>() and B<signalfd4>() are Linux-specific."
msgstr "B<signalfd>() と B<signalfd4>() は Linux 固有である。"
#. type: Plain text
-#: build/C/man2/signalfd.2:319
+#: build/C/man2/signalfd.2:326
+msgid ""
+"A process can create multiple signalfd file descriptors. This makes it "
+"possible to accept different signals on different file descriptors. (This "
+"may be useful if monitoring the file descriptors using B<select>(2), "
+"B<poll>(2), or B<epoll>(7): the arrival of different signals will make "
+"different descriptors ready.) If a signal appears in the I<mask> of more "
+"than one of the file descriptors, then occurrences of that signal can be "
+"read (once) from any one of the descriptors."
+msgstr ""
+"一つのプロセスは複数の signalfd ファイルディスクリプターを生成することができ"
+"る。 これにより、異なるファイルディスクリプターで異なるシグナルを受け取ること"
+"が できる (この機能は B<select>(2), B<poll>(2), B<epoll>(7) を使ってファイル"
+"ディスクリプターを監視する場合に有用かもしれない。 異なるシグナルが到着する"
+"と、異なるファイルディスクリプターが利用可能に なるからだ)。 一つのシグナルが"
+"二つ以上のファイルディスクリプターの I<mask> に含まれている場合、そのシグナル"
+"の発生はそのシグナルを I<mask> に含むファイルディスクリプターのうちいずれか一"
+"つから読み出すことができる。"
+
+#. type: Plain text
+#: build/C/man2/signalfd.2:336
msgid ""
"The underlying Linux system call requires an additional argument, I<size_t "
"sizemask>, which specifies the size of the I<mask> argument. The glibc "
"呼び出すシステムコールに提供する。"
#. type: Plain text
-#: build/C/man2/signalfd.2:333
-msgid ""
-"A process can create multiple signalfd file descriptors. This makes it "
-"possible to accept different signals on different file descriptors. (This "
-"may be useful if monitoring the file descriptors using B<select>(2), B<poll>"
-"(2), or B<epoll>(7): the arrival of different signals will make different "
-"descriptors ready.) If a signal appears in the I<mask> of more than one of "
-"the file descriptors, then occurrences of that signal can be read (once) "
-"from any one of the descriptors."
-msgstr ""
-"一つのプロセスは複数の signalfd ファイルディスクリプタを生成することができ"
-"る。 これにより、異なるファイルディスクリプタで異なるシグナルを受け取ること"
-"が できる (この機能は B<select>(2), B<poll>(2), B<epoll>(7) を使ってファイル"
-"ディスクリプタを監視する場合に有用かもしれない。 異なるシグナルが到着すると、"
-"異なるファイルディスクリプタが利用可能に なるからだ)。 一つのシグナルが二つ以"
-"上のファイルディスクリプタの I<mask> に含まれている場合、そのシグナルの発生は"
-"そのシグナルを I<mask> に含むファイルディスクリプタのうちいずれか一つから読み"
-"出すことができる。"
-
-#. type: Plain text
-#: build/C/man2/signalfd.2:349
+#: build/C/man2/signalfd.2:352
msgid ""
"There are two underlying Linux system calls: B<signalfd>() and the more "
"recent B<signalfd4>(). The former system call does not implement a I<flags> "
#. The fix also was put into 2.6.24.5
#. type: Plain text
-#: build/C/man2/signalfd.2:357
+#: build/C/man2/signalfd.2:360
msgid ""
"In kernels before 2.6.25, the I<ssi_ptr> and I<ssi_int> fields are not "
"filled in with the data accompanying a signal sent by B<sigqueue>(3)."
"渡されるデータでは、フィールド I<ssi_ptr> と I<ssi_int> は設定されない。"
#. type: Plain text
-#: build/C/man2/signalfd.2:367
+#: build/C/man2/signalfd.2:370
msgid ""
"The program below accepts the signals B<SIGINT> and B<SIGQUIT> via a "
"signalfd file descriptor. The program terminates after accepting a "
"program:"
msgstr ""
"下記のプログラムは、シグナル B<SIGINT> と B<SIGQUIT> を signalfd ファイルディ"
-"スクリプタ経由で受信する。 シグナル B<SIGQUIT> 受信後にプログラムは終了す"
+"スクリプター経由で受信する。 シグナル B<SIGQUIT> 受信後にプログラムは終了す"
"る。 以下に示すシェルセッションにこのプログラムの使い方を示す。"
#. type: Plain text
-#: build/C/man2/signalfd.2:378
+#: build/C/man2/signalfd.2:381
#, no-wrap
msgid ""
"$B< ./signalfd_demo>\n"
"$\n"
#. type: Plain text
-#: build/C/man2/signalfd.2:388
+#: build/C/man2/signalfd.2:391
#, no-wrap
msgid ""
"#include E<lt>sys/signalfd.hE<gt>\n"
"#include E<lt>stdio.hE<gt>\n"
#. type: Plain text
-#: build/C/man2/signalfd.2:399
+#: build/C/man2/signalfd.2:402
#, no-wrap
msgid ""
"int\n"
" ssize_t s;\n"
#. type: Plain text
-#: build/C/man2/signalfd.2:403
+#: build/C/man2/signalfd.2:406
#, no-wrap
msgid ""
" sigemptyset(&mask);\n"
" sigaddset(&mask, SIGQUIT);\n"
#. type: Plain text
-#: build/C/man2/signalfd.2:406
+#: build/C/man2/signalfd.2:409
#, no-wrap
msgid ""
" /* Block signals so that they aren\\(aqt handled\n"
" according to their default dispositions */\n"
#. type: Plain text
-#: build/C/man2/signalfd.2:409
+#: build/C/man2/signalfd.2:412
#, no-wrap
msgid ""
" if (sigprocmask(SIG_BLOCK, &mask, NULL) == -1)\n"
" handle_error(\"sigprocmask\");\n"
#. type: Plain text
-#: build/C/man2/signalfd.2:413
+#: build/C/man2/signalfd.2:416
#, no-wrap
msgid ""
" sfd = signalfd(-1, &mask, 0);\n"
" handle_error(\"signalfd\");\n"
#. type: Plain text
-#: build/C/man2/signalfd.2:418
+#: build/C/man2/signalfd.2:421
#, no-wrap
msgid ""
" for (;;) {\n"
" handle_error(\"read\");\n"
#. type: Plain text
-#: build/C/man2/signalfd.2:429
+#: build/C/man2/signalfd.2:432
#, no-wrap
msgid ""
" if (fdsi.ssi_signo == SIGINT) {\n"
"}\n"
#. type: Plain text
-#: build/C/man2/signalfd.2:443
+#: build/C/man2/signalfd.2:446
msgid ""
"B<eventfd>(2), B<poll>(2), B<read>(2), B<select>(2), B<sigaction>(2), "
"B<sigprocmask>(2), B<sigwaitinfo>(2), B<timerfd_create>(2), B<sigsetops>(3), "
"B<sigwait>(3), B<epoll>(7), B<signal>(7)"
#. type: TH
-#: build/C/man3/sigpause.3:23
+#: build/C/man3/sigpause.3:25
#, no-wrap
msgid "SIGPAUSE"
msgstr "SIGPAUSE"
-#. type: TH
-#: build/C/man3/sigpause.3:23
-#, no-wrap
-msgid "2010-09-12"
-msgstr "2010-09-12"
-
#. type: Plain text
-#: build/C/man3/sigpause.3:26
+#: build/C/man3/sigpause.3:28
msgid "sigpause - atomically release blocked signals and wait for interrupt"
msgstr "sigpause - ブロックされたシグナルをアトミックに解放して割り込みを待つ"
#. type: Plain text
-#: build/C/man3/sigpause.3:31
+#: build/C/man3/sigpause.3:33
#, no-wrap
-msgid "B<int sigpause(int >I<sigmask>B<); /* BSD */>\n"
-msgstr "B<int sigpause(int >I<sigmask>B<); /* BSD */>\n"
+msgid "B<int sigpause(int >I<sigmask>B<); /* BSD (but see NOTES) */>\n"
+msgstr "B<int sigpause(int >I<sigmask>B<); /* BSD (ただし「備考」を参照) */>\n"
#. type: Plain text
-#: build/C/man3/sigpause.3:33
+#: build/C/man3/sigpause.3:35
#, no-wrap
msgid "B<int sigpause(int >I<sig>B<); /* System V / UNIX 95 */>\n"
msgstr "B<int sigpause(int >I<sig>B<); /* System V / UNIX 95 */>\n"
#. type: Plain text
-#: build/C/man3/sigpause.3:39
+#: build/C/man3/sigpause.3:41
msgid "Don't use this function. Use B<sigsuspend>(2) instead."
msgstr "この関数を使わないこと。 代わりに B<sigsuspend>(2) を使うこと。"
#. type: Plain text
-#: build/C/man3/sigpause.3:46
+#: build/C/man3/sigpause.3:48
msgid ""
"The function B<sigpause>() is designed to wait for some signal. It changes "
"the process's signal mask (set of blocked signals), and then waits for a "
"るのを待つ。 シグナルが到着すると、シグナルマスクは元に戻される。"
#. type: Plain text
-#: build/C/man3/sigpause.3:54
+#: build/C/man3/sigpause.3:56
msgid ""
"If B<sigpause>() returns, it was interrupted by a signal and the return "
"value is -1 with I<errno> set to B<EINTR>."
"り値は -1 で、 I<errno> は B<EINTR> に設定される。"
#. type: Plain text
-#: build/C/man3/sigpause.3:58
+#: build/C/man3/sigpause.3:61
+msgid "The B<sigpause>() function is thread-safe."
+msgstr "B<sigpause>() 関数はスレッドセーフである。"
+
+#. type: Plain text
+#: build/C/man3/sigpause.3:65
msgid "The System V version of B<sigpause>() is standardized in POSIX.1-2001."
msgstr "System V 版の B<sigpause>() は POSIX.1-2001 で標準化されている。"
#. __xpg_sigpause: UNIX 95, spec 1170, SVID, SVr4, XPG
#. type: Plain text
-#: build/C/man3/sigpause.3:75
+#: build/C/man3/sigpause.3:82
msgid ""
"The classical BSD version of this function appeared in 4.2BSD. It sets the "
"process's signal mask to I<sigmask>. UNIX 95 standardized the incompatible "
"System V version of this function, which removes only the specified signal "
"I<sig> from the process's signal mask. The unfortunate situation with two "
-"incompatible functions with the same name was solved by the B<\\%sigsuspend>"
-"(2) function, that takes a I<sigset_t *> argument (instead of an I<int>)."
+"incompatible functions with the same name was solved by the B<\\"
+"%sigsuspend>(2) function, that takes a I<sigset_t\\ *> argument (instead of "
+"an I<int>)."
msgstr ""
"この関数の古典的な BSD 版は 4.2BSD で登場した。 この関数はプロセスのシグナル"
"マスクを I<sigmask> に設定する。 UNIX 95 では BSD 版と互換性のない System V "
"版のこの関数が標準化された。 UNIX 95 版は、指定されたシグナル I<sig> をプロセ"
"スのシグナルマスクから削除するだけである。 同じ名前で互換性のない 2 つの関数"
"があるという不幸な事態は、 B<\\%sigsuspend>(2) 関数によって解消された。 この"
-"関数は (I<int> の代わりに) B<sigset_t *> 引き数をとる。"
+"関数は (I<int> の代わりに) B<sigset_t\\ *> 引き数をとる。"
#. type: Plain text
-#: build/C/man3/sigpause.3:78
+#: build/C/man3/sigpause.3:85
msgid ""
"On Linux, this routine is a system call only on the Sparc (sparc64) "
"architecture."
msgstr ""
-"Linux では、このルーチンは Sparc (sparc64) アーキテクチャでのみ システムコー"
-"ルとなっている。"
-
-#. type: Plain text
-#: build/C/man3/sigpause.3:80
-msgid "Libc4 and libc5 only know about the BSD version."
-msgstr "libc4 と libc5 には BSD 版しかない。"
+"Linux では、このルーチンは Sparc (sparc64) アーキテクチャーでのみ システム"
+"コールとなっている。"
+#. Libc4 and libc5 know only about the BSD version.
#. For the BSD version, one usually uses a zero
#. .I sigmask
#. to indicate that no signals are to be blocked.
#. type: Plain text
-#: build/C/man3/sigpause.3:96
+#: build/C/man3/sigpause.3:111
msgid ""
"Glibc uses the BSD version if the B<_BSD_SOURCE> feature test macro is "
"defined and none of B<_POSIX_SOURCE>, B<_POSIX_C_SOURCE>, B<_XOPEN_SOURCE>, "
"B<_GNU_SOURCE>, or B<_SVID_SOURCE> is defined. Otherwise, the System V "
-"version is used."
+"version is used (and B<_XOPEN_SOURCE> must be defined to obtain the "
+"declaration). Since glibc 2.19, only the System V version is exposed by "
+"I<E<lt>signal.hE<gt>>; applications that formerly used the BSD "
+"B<sigpause>() should be amended to use B<sigsuspend>(2)."
msgstr ""
"機能検査マクロ B<_BSD_SOURCE> が定義され、 B<_POSIX_SOURCE>, "
"B<_POSIX_C_SOURCE>, B<_XOPEN_SOURCE>, B<_GNU_SOURCE>, B<_SVID_SOURCE> のいず"
"れも定義されていない場合、 glibc は BSD 版を使う。 それ以外の場合には、"
-"System V 版を使用する。"
+"System V 版を使用する (宣言を得るためには B<_XOPEN_SOURCE> が定義されていなけ"
+"ればならない)。 glibc 2.19 以降では、 I<E<lt>signal.hE<gt>> では System V 版"
+"だけが公開される。 BSD 版の B<sigpause>() を使用していたアプリケーションは "
+"B<sigsuspend>(2) を使用するように修正すべきである。"
#. type: Plain text
-#: build/C/man3/sigpause.3:104
+#: build/C/man3/sigpause.3:119
msgid ""
-"B<kill>(2), B<sigaction>(2), B<sigprocmask>(2), B<sigsuspend>(2), B<sigblock>"
-"(3), B<sigvec>(3), B<feature_test_macros>(7)"
+"B<kill>(2), B<sigaction>(2), B<sigprocmask>(2), B<sigsuspend>(2), "
+"B<sigblock>(3), B<sigvec>(3), B<feature_test_macros>(7)"
msgstr ""
-"B<kill>(2), B<sigaction>(2), B<sigprocmask>(2), B<sigsuspend>(2), B<sigblock>"
-"(3), B<sigvec>(3), B<feature_test_macros>(7)"
+"B<kill>(2), B<sigaction>(2), B<sigprocmask>(2), B<sigsuspend>(2), "
+"B<sigblock>(3), B<sigvec>(3), B<feature_test_macros>(7)"
#. type: TH
-#: build/C/man2/sigpending.2:27
+#: build/C/man2/sigpending.2:29
#, no-wrap
msgid "SIGPENDING"
msgstr "SIGPENDING"
#. type: TH
-#: build/C/man2/sigpending.2:27
+#: build/C/man2/sigpending.2:29
#, no-wrap
-msgid "2008-10-04"
-msgstr "2008-10-04"
+msgid "2013-12-11"
+msgstr "2013-12-11"
#. type: Plain text
-#: build/C/man2/sigpending.2:30
+#: build/C/man2/sigpending.2:32
msgid "sigpending - examine pending signals"
msgstr "sigpending - 処理待ちのシグナルの検査"
#. type: Plain text
-#: build/C/man2/sigpending.2:34
+#: build/C/man2/sigpending.2:36
msgid "B<int sigpending(sigset_t *>I<set>B<);>"
msgstr "B<int sigpending(sigset_t *>I<set>B<);>"
#. type: Plain text
-#: build/C/man2/sigpending.2:43
+#: build/C/man2/sigpending.2:45
msgid ""
"B<sigpending>(): _POSIX_C_SOURCE\\ E<gt>=\\ 1 || _XOPEN_SOURCE || "
"_POSIX_SOURCE"
"_POSIX_SOURCE"
#. type: Plain text
-#: build/C/man2/sigpending.2:51
+#: build/C/man2/sigpending.2:53
msgid ""
"B<sigpending>() returns the set of signals that are pending for delivery to "
"the calling thread (i.e., the signals which have been raised while "
"スクが I<set> に格納される。"
#. type: Plain text
-#: build/C/man2/sigpending.2:54
-msgid "B<sigpending>() returns 0 on success and -1 on error."
-msgstr "B<sigpending>() は成功すれば 0 を返し、エラーならば -1 を返す。"
+#: build/C/man2/sigpending.2:59
+msgid ""
+"B<sigpending>() returns 0 on success and -1 on error. In the event of an "
+"error, I<errno> is set to indicate the cause."
+msgstr ""
+"B<sigpending>() は成功した場合 0 を返す。 エラーの場合、 -1 を返し、I<errno> "
+"にエラーの原因を示す値を設定する。"
#. type: Plain text
-#: build/C/man2/sigpending.2:59
+#: build/C/man2/sigpending.2:64
msgid ""
"I<set> points to memory which is not a valid part of the process address "
"space."
msgstr ""
-"I<set> が指しているメモリが、プロセスのアドレス空間の有効な部分ではない。"
+"I<set> が指しているメモリーが、プロセスのアドレス空間の有効な部分ではない。"
+
+#. type: Plain text
+#: build/C/man2/sigpending.2:74
+msgid ""
+"If a signal is both blocked and has a disposition of \"ignored\", it is "
+"I<not> added to the mask of pending signals when generated."
+msgstr ""
+"シグナルが禁止 (ブロック) されており、かつ配送方法が \"ignored\" (無視) に"
+"なっている場合、そのシグナルが発生した場合に処理待ちシグナルのマスクにそのシ"
+"グナルは追加I<されない>。"
#. type: Plain text
-#: build/C/man2/sigpending.2:70
+#: build/C/man2/sigpending.2:79
msgid ""
"The set of signals that is pending for a thread is the union of the set of "
"signals that is pending for that thread and the set of signals that is "
"る。 B<signal>(7) 参照。"
#. type: Plain text
-#: build/C/man2/sigpending.2:82
+#: build/C/man2/sigpending.2:91
msgid ""
"In versions of glibc up to and including 2.2.1, there is a bug in the "
"wrapper function for B<sigpending>() which means that information about "
"待ちのリアルタイムシグナルに関する情報が 正しく返されないというバグがある。"
#. type: Plain text
-#: build/C/man2/sigpending.2:90
+#: build/C/man2/sigpending.2:99
msgid ""
-"B<kill>(2), B<sigaction>(2), B<signal>(2), B<sigprocmask>(2), B<sigsuspend>"
-"(2), B<sigsetops>(3), B<signal>(7)"
+"B<kill>(2), B<sigaction>(2), B<signal>(2), B<sigprocmask>(2), "
+"B<sigsuspend>(2), B<sigsetops>(3), B<signal>(7)"
msgstr ""
-"B<kill>(2), B<sigaction>(2), B<signal>(2), B<sigprocmask>(2), B<sigsuspend>"
-"(2), B<sigsetops>(3), B<signal>(7)"
+"B<kill>(2), B<sigaction>(2), B<signal>(2), B<sigprocmask>(2), "
+"B<sigsuspend>(2), B<sigsetops>(3), B<signal>(7)"
#. type: TH
-#: build/C/man2/sigprocmask.2:27
+#: build/C/man2/sigprocmask.2:29
#, no-wrap
msgid "SIGPROCMASK"
msgstr "SIGPROCMASK"
+#. type: TH
+#: build/C/man2/sigprocmask.2:29 build/C/man2/sigsuspend.2:29
+#, no-wrap
+msgid "2013-04-19"
+msgstr "2013-04-19"
+
#. type: Plain text
-#: build/C/man2/sigprocmask.2:30
+#: build/C/man2/sigprocmask.2:32
msgid "sigprocmask - examine and change blocked signals"
msgstr "sigprocmask - 禁止するシグナルの確認と変更"
#. type: Plain text
-#: build/C/man2/sigprocmask.2:35
+#: build/C/man2/sigprocmask.2:37
msgid ""
"B<int sigprocmask(int >I<how>B<, const sigset_t *>I<set>B<,> B<sigset_t "
"*>I<oldset>B<);>"
"*>I<oldset>B<);>"
#. type: Plain text
-#: build/C/man2/sigprocmask.2:44
+#: build/C/man2/sigprocmask.2:46
msgid ""
"B<sigprocmask>(): _POSIX_C_SOURCE\\ E<gt>=\\ 1 || _XOPEN_SOURCE || "
"_POSIX_SOURCE"
"_POSIX_SOURCE"
#. type: Plain text
-#: build/C/man2/sigprocmask.2:53
+#: build/C/man2/sigprocmask.2:55
msgid ""
"B<sigprocmask>() is used to fetch and/or change the signal mask of the "
"calling thread. The signal mask is the set of signals whose delivery is "
"の 集合のことである (詳細については B<signal>(7) も参照のこと)。"
#. type: Plain text
-#: build/C/man2/sigprocmask.2:57
+#: build/C/man2/sigprocmask.2:59
msgid ""
"The behavior of the call is dependent on the value of I<how>, as follows."
msgstr "このコールの動作は I<how> の値によって決まる:"
#. type: TP
-#: build/C/man2/sigprocmask.2:57
+#: build/C/man2/sigprocmask.2:59
#, no-wrap
msgid "B<SIG_BLOCK>"
msgstr "B<SIG_BLOCK>"
#. type: Plain text
-#: build/C/man2/sigprocmask.2:62
+#: build/C/man2/sigprocmask.2:64
msgid ""
"The set of blocked signals is the union of the current set and the I<set> "
"argument."
"禁止されたシグナルの集合は現在の値と I<set> 引き数を結合したものとなる。"
#. type: TP
-#: build/C/man2/sigprocmask.2:62
+#: build/C/man2/sigprocmask.2:64
#, no-wrap
msgid "B<SIG_UNBLOCK>"
msgstr "B<SIG_UNBLOCK>"
#. type: Plain text
-#: build/C/man2/sigprocmask.2:68
+#: build/C/man2/sigprocmask.2:70
msgid ""
"The signals in I<set> are removed from the current set of blocked signals. "
"It is permissible to attempt to unblock a signal which is not blocked."
"れていないシグナルを取り除こうと することも認められている。"
#. type: TP
-#: build/C/man2/sigprocmask.2:68
+#: build/C/man2/sigprocmask.2:70
#, no-wrap
msgid "B<SIG_SETMASK>"
msgstr "B<SIG_SETMASK>"
#. type: Plain text
-#: build/C/man2/sigprocmask.2:72
+#: build/C/man2/sigprocmask.2:74
msgid "The set of blocked signals is set to the argument I<set>."
msgstr "禁止されているシグナルの集合に I<set> 引き数を設定する。"
#. type: Plain text
-#: build/C/man2/sigprocmask.2:77
+#: build/C/man2/sigprocmask.2:79
msgid ""
"If I<oldset> is non-NULL, the previous value of the signal mask is stored in "
"I<oldset>."
"る。"
#. type: Plain text
-#: build/C/man2/sigprocmask.2:86
+#: build/C/man2/sigprocmask.2:88
msgid ""
"If I<set> is NULL, then the signal mask is unchanged (i.e., I<how> is "
"ignored), but the current value of the signal mask is nevertheless returned "
"入れて返される (但し、 I<oldset> が NULL でない場合)。"
#. type: Plain text
-#: build/C/man2/sigprocmask.2:91
+#: build/C/man2/sigprocmask.2:93
msgid ""
"The use of B<sigprocmask>() is unspecified in a multithreaded process; see "
"B<pthread_sigmask>(3)."
"いない。 B<pthread_sigmask>(3) を参照のこと。"
#. type: Plain text
-#: build/C/man2/sigprocmask.2:94
-msgid "B<sigprocmask>() returns 0 on success and -1 on error."
-msgstr "B<sigprocmask>() は成功すれば 0 を返し、エラーならば -1 を返す。"
+#: build/C/man2/sigprocmask.2:99
+msgid ""
+"B<sigprocmask>() returns 0 on success and -1 on error. In the event of an "
+"error, I<errno> is set to indicate the cause."
+msgstr ""
+"B<sigprocmask>() は成功した場合 0 を返す。 エラーの場合、 -1 を返し、 "
+"I<errno> にエラーの原因を示す値を設定する。"
#. type: Plain text
-#: build/C/man2/sigprocmask.2:99
-msgid "B<EINVAL> The value specified in I<how> was invalid."
-msgstr "B<EINVAL> I<how> に指定された値が有効ではない。"
+#: build/C/man2/sigprocmask.2:107
+msgid ""
+"the I<set> or I<oldset> argument points outside the process's allocated "
+"address space."
+msgstr ""
+"引き数 I<set> か I<oldset> がプロセスに割り当てられたアドレス空間の外を指して"
+"いる。"
+
+#. type: Plain text
+#: build/C/man2/sigprocmask.2:112
+msgid "The value specified in I<how> was invalid."
+msgstr "I<how> に指定された値が有効ではない。"
#. type: Plain text
-#: build/C/man2/sigprocmask.2:105
+#: build/C/man2/sigprocmask.2:118
msgid ""
"It is not possible to block B<SIGKILL> or B<SIGSTOP>. Attempts to do so are "
"silently ignored."
"無視される。"
#. type: Plain text
-#: build/C/man2/sigprocmask.2:107
+#: build/C/man2/sigprocmask.2:120
msgid "Each of the threads in a process has its own signal mask."
msgstr "プロセス内の各スレッドはそれぞれ専用のシグナルマスクを持つ。"
#. type: Plain text
-#: build/C/man2/sigprocmask.2:127
+#: build/C/man2/sigprocmask.2:140
msgid ""
"If B<SIGBUS>, B<SIGFPE>, B<SIGILL>, or B<SIGSEGV> are generated while they "
"are blocked, the result is undefined, unless the signal was generated by "
"て生成されたものでないときには、 その後の動作は未定義である。"
#. type: Plain text
-#: build/C/man2/sigprocmask.2:142
+#: build/C/man2/sigprocmask.2:155
msgid ""
"B<kill>(2), B<pause>(2), B<sigaction>(2), B<signal>(2), B<sigpending>(2), "
"B<sigsuspend>(2), B<pthread_sigmask>(3), B<sigqueue>(3), B<sigsetops>(3), "
"B<signal>(7)"
#. type: TH
-#: build/C/man3/sigqueue.3:26
+#: build/C/man3/sigqueue.3:28
#, no-wrap
msgid "SIGQUEUE"
msgstr "SIGQUEUE"
+#. type: TH
+#: build/C/man3/sigqueue.3:28 build/C/man3/sigwait.3:26
+#, no-wrap
+msgid "2013-12-16"
+msgstr "2013-12-16"
+
#. type: Plain text
-#: build/C/man3/sigqueue.3:29
-msgid "sigqueue, rt_sigqueueinfo - queue a signal and data to a process"
-msgstr "sigqueue, rt_sigqueueinfo - シグナルとデータをプロセスに送る"
+#: build/C/man3/sigqueue.3:31
+msgid "sigqueue - queue a signal and data to a process"
+msgstr "sigqueue - シグナルとデータをプロセスに送る"
#. type: Plain text
-#: build/C/man3/sigqueue.3:33
+#: build/C/man3/sigqueue.3:35
msgid ""
"B<int sigqueue(pid_t >I<pid>B<, int >I<sig>B<, const union sigval "
">I<value>B<);>"
">I<value>B<);>"
#. type: Plain text
-#: build/C/man3/sigqueue.3:41
+#: build/C/man3/sigqueue.3:43
msgid "B<sigqueue>(): _POSIX_C_SOURCE\\ E<gt>=\\ 199309L"
msgstr "B<sigqueue>(): _POSIX_C_SOURCE\\ E<gt>=\\ 199309L"
#. type: Plain text
-#: build/C/man3/sigqueue.3:53
+#: build/C/man3/sigqueue.3:55
msgid ""
"B<sigqueue>() sends the signal specified in I<sig> to the process whose PID "
"is given in I<pid>. The permissions required to send a signal are the same "
"check if a process with a given PID exists."
msgstr ""
"B<sigqueue>() は I<sig> で指定されたシグナルを、PID が I<pid> であるプロセス"
-"に送る。 シグナルを送るのに必要な権限は B<kill>(2) と同じである。 B<kill>"
-"(2) と同様に、ヌル・シグナル (0) を使って 指定した PID のプロセスが存在する"
-"かをチェックすることができる。"
+"に送る。 シグナルを送るのに必要な権限は B<kill>(2) と同じである。 "
+"B<kill>(2) と同様に、ヌルシグナル (0) を使って 指定した PID のプロセスが存在"
+"ã\81\99ã\82\8bã\81\8bã\82\92ã\83\81ã\82§ã\83\83ã\82¯ã\81\99ã\82\8bã\81\93ã\81¨ã\81\8cã\81§ã\81\8dã\82\8bã\80\82"
#. type: Plain text
-#: build/C/man3/sigqueue.3:58
+#: build/C/man3/sigqueue.3:60
msgid ""
"The I<value> argument is used to specify an accompanying item of data "
"(either an integer or a pointer value) to be sent with the signal, and has "
"the following type:"
msgstr ""
"I<value> 引き数はシグナルと一緒に送るデータの付属アイテムを指定する。 "
-"I<value> は (整数またはポインタの値であり) 以下のような型である。"
+"I<value> ã\81¯ (æ\95´æ\95°ã\81¾ã\81\9fã\81¯ã\83\9dã\82¤ã\83³ã\82¿ã\83¼ã\81®å\80¤ã\81§ã\81\82ã\82\8a) 以ä¸\8bã\81®ã\82\88ã\81\86ã\81ªå\9e\8bã\81§ã\81\82ã\82\8bã\80\82"
#. type: Plain text
-#: build/C/man3/sigqueue.3:65
+#: build/C/man3/sigqueue.3:67
#, no-wrap
msgid ""
"union sigval {\n"
"};\n"
#. type: Plain text
-#: build/C/man3/sigqueue.3:81
+#: build/C/man3/sigqueue.3:83
msgid ""
"If the receiving process has installed a handler for this signal using the "
"B<SA_SIGINFO> flag to B<sigaction>(2), then it can obtain this data via the "
"argument to the handler. Furthermore, the I<si_code> field of that "
"structure will be set to B<SI_QUEUE>."
msgstr ""
-"受取先のプロセスに、このシグナルに対するハンドラを (B<sigaction>(2) に "
-"B<SA_SIGINFO> ã\82\92æ\8c\87å®\9aã\81\97ã\81¦) ã\82¤ã\83³ã\82¹ã\83\88ã\83¼ã\83«ã\81\97ã\81¦ã\81\8aã\81\8fã\81¨ã\80\81 ã\81\9dã\81®ã\83\8fã\83³ã\83\89ã\83©ã\81®ç¬¬ 2 å¼\95ã\81\8dæ\95°"
-"に渡される I<siginfo_t> 構造体の I<si_value> フィールドによって、このデータを"
-"取得できる。 さらに、この構造体の I<si_code> フィールドは B<SI_QUEUE> に設定"
-"される。"
+"å\8f\97å\8f\96å\85\88ã\81®ã\83\97ã\83ã\82»ã\82¹ã\81«ã\80\81ã\81\93ã\81®ã\82·ã\82°ã\83\8aã\83«ã\81«å¯¾ã\81\99ã\82\8bã\83\8fã\83³ã\83\89ã\83©ã\83¼ã\82\92 (B<sigaction>(2) ã\81« "
+"B<SA_SIGINFO> ã\82\92æ\8c\87å®\9aã\81\97ã\81¦) ã\82¤ã\83³ã\82¹ã\83\88ã\83¼ã\83«ã\81\97ã\81¦ã\81\8aã\81\8fã\81¨ã\80\81 ã\81\9dã\81®ã\83\8fã\83³ã\83\89ã\83©ã\83¼ã\81®ç¬¬ 2 å¼\95ã\81\8d"
+"数に渡される I<siginfo_t> 構造体の I<si_value> フィールドによって、このデータ"
+"を取得できる。 さらに、この構造体の I<si_code> フィールドは B<SI_QUEUE> に設"
+"定される。"
#. type: Plain text
-#: build/C/man3/sigqueue.3:89
+#: build/C/man3/sigqueue.3:91
msgid ""
"On success, B<sigqueue>() returns 0, indicating that the signal was "
-"successfully queued to the receiving process. Otherwise -1 is returned and "
+"successfully queued to the receiving process. Otherwise, -1 is returned and "
"I<errno> is set to indicate the error."
msgstr ""
"成功した場合、 B<sigqueue>() は 0 を返す。 これは受け取り側プロセスの待ち行"
"I<errno> がエラーを表す値に設定される。"
#. type: Plain text
-#: build/C/man3/sigqueue.3:100
+#: build/C/man3/sigqueue.3:102
msgid "I<sig> was invalid."
msgstr "I<sig> が不正である。"
#. type: Plain text
-#: build/C/man3/sigqueue.3:106
+#: build/C/man3/sigqueue.3:108
msgid ""
"The process does not have permission to send the signal to the receiving "
"process. For the required permissions, see B<kill>(2)."
"ついては、 B<kill>(2) を参照すること。"
#. type: Plain text
-#: build/C/man3/sigqueue.3:110
+#: build/C/man3/sigqueue.3:112
msgid "No process has a PID matching I<pid>."
msgstr "I<pid> にマッチする PID のプロセスがない。"
#. type: Plain text
-#: build/C/man3/sigqueue.3:112
+#: build/C/man3/sigqueue.3:114
msgid "This system call first appeared in Linux 2.2."
msgstr "このシステムコールは Linux 2.2 で初めて登場した。"
#. type: Plain text
-#: build/C/man3/sigqueue.3:122
+#: build/C/man3/sigqueue.3:119
+msgid "The B<sigqueue>() function is thread-safe."
+msgstr "B<sigqueue>() 関数はスレッドセーフである。"
+
+#. type: Plain text
+#: build/C/man3/sigqueue.3:129
msgid ""
"If this function results in the sending of a signal to the process that "
"invoked it, and that signal was not blocked by the calling thread, and no "
"に対してシグナルが配送されていなければならない。"
#. type: Plain text
-#: build/C/man3/sigqueue.3:137
+#: build/C/man3/sigqueue.3:144
msgid ""
"On Linux, this function is implemented using the B<rt_sigqueueinfo>(2) "
"system call. The system call differs in its third argument, which is the "
"Linux では、この関数は B<rt_sigqueueinfo>(2) システムコールを使って実装され"
"ている。 両者には 3 番目の引き数に違いがあり、 B<rt_sigqueueinfo>(2) では 3 "
"番目の引き数は I<siginfo_t> 構造体である。 I<siginfo_t> 構造体は、シグナルを"
-"受信するプロセスのシグナルハンドラに渡されたり、 シグナル受信プロセスの "
-"B<sigtimedwait>(2) システムコールから返されたりする。 glibc の B<sigqueue>"
-"() ラッパー関数内部では、 この引き数 I<uinfo> は以下のように初期化される。"
+"受信するプロセスのシグナルハンドラーに渡されたり、 シグナル受信プロセスの "
+"B<sigtimedwait>(2) システムコールから返されたりする。 glibc の "
+"B<sigqueue>() ラッパー関数内部では、 この引き数 I<uinfo> は以下のように初期"
+"化される。"
#. type: Plain text
-#: build/C/man3/sigqueue.3:145
+#: build/C/man3/sigqueue.3:152
#, no-wrap
msgid ""
-"uinfo.si_signo = sig; /* argument supplied to sigqueue() */\n"
+"uinfo.si_signo = sig; /* Argument supplied to sigqueue() */\n"
"uinfo.si_code = SI_QUEUE;\n"
"uinfo.si_pid = getpid(); /* Process ID of sender */\n"
"uinfo.si_uid = getuid(); /* Real UID of sender */\n"
-"uinfo.si_value = val; /* argument supplied to sigqueue() */\n"
+"uinfo.si_value = val; /* Argument supplied to sigqueue() */\n"
msgstr ""
-"uinfo.si_signo = sig; /* argument supplied to sigqueue() */\n"
+"uinfo.si_signo = sig; /* Argument supplied to sigqueue() */\n"
"uinfo.si_code = SI_QUEUE;\n"
"uinfo.si_pid = getpid(); /* Process ID of sender */\n"
"uinfo.si_uid = getuid(); /* Real UID of sender */\n"
-"uinfo.si_value = val; /* argument supplied to sigqueue() */\n"
+"uinfo.si_value = val; /* Argument supplied to sigqueue() */\n"
#. type: Plain text
-#: build/C/man3/sigqueue.3:155
+#: build/C/man3/sigqueue.3:162
msgid ""
"B<kill>(2), B<rt_sigqueueinfo>(2), B<sigaction>(2), B<signal>(2), "
"B<pthread_sigqueue>(3), B<sigwait>(3), B<signal>(7)"
"B<pthread_sigqueue>(3), B<sigwait>(3), B<signal>(7)"
#. type: TH
-#: build/C/man2/sigreturn.2:27
+#: build/C/man2/sigreturn.2:30
#, no-wrap
msgid "SIGRETURN"
msgstr "SIGRETURN"
-#. type: TH
-#: build/C/man2/sigreturn.2:27
-#, no-wrap
-msgid "2008-06-26"
-msgstr "2008-06-26"
-
#. type: Plain text
-#: build/C/man2/sigreturn.2:30
+#: build/C/man2/sigreturn.2:33
msgid "sigreturn - return from signal handler and cleanup stack frame"
-msgstr "sigreturn - ã\82·ã\82°ã\83\8aã\83«ã\83»ã\83\8fã\83³ã\83\89ã\83©から返り、スタックを掃除する"
+msgstr "sigreturn - ã\82·ã\82°ã\83\8aã\83«ã\83\8fã\83³ã\83\89ã\83©ã\83¼から返り、スタックを掃除する"
#. type: Plain text
-#: build/C/man2/sigreturn.2:32
-msgid "B<int sigreturn(unsigned long >I<__unused>B<);>"
-msgstr "B<int sigreturn(unsigned long >I<__unused>B<);>"
+#: build/C/man2/sigreturn.2:35
+msgid "B<int sigreturn(...);>"
+msgstr "B<int sigreturn(...);>"
+#. See arch/x86/kernel/signal.c::__setup_frame() [in 3.17 source code]
#. type: Plain text
-#: build/C/man2/sigreturn.2:40
+#: build/C/man2/sigreturn.2:45
msgid ""
-"When the Linux kernel creates the stack frame for a signal handler, a call "
-"to B<sigreturn>() is inserted into the stack frame so that upon return from "
-"the signal handler, B<sigreturn>() will be called."
+"If the Linux kernel determines that an unblocked signal is pending for a "
+"process, then, at the next transition back to user mode in that process (e."
+"g., upon return from a system call or when the process is rescheduled onto "
+"the CPU), it saves various pieces of process context (processor status word, "
+"registers, signal mask, and signal stack settings) into the user-space "
+"stack."
msgstr ""
-"Linux カーネルは、 シグナル・ハンドラ用にスタック・フレームを作成する際、 "
-"B<sigreturn>() をスタック・フレームに挿入し、シグナル・ハンドラが返るときに "
-"B<sigreturn>() が呼ばれるようにする。"
+"Linux カーネルがプロセスに対してブロックされていないシグナルが処理待ちと判定"
+"した場合、 そのプロセスの次回のユーザーモードへの遷移 (すなわち、システムコー"
+"ルからのリターン時やそのプロセスが CPU に再スケジュールされる際)、 カーネルは"
+"プロセスコンテキストの種々の値 (プロセッサーのステータスワード、 レジス"
+"ター、 シグナルマスク、 シグナルスタック設定) をユーザー空間のスタックに保存"
+"する。"
#. type: Plain text
-#: build/C/man2/sigreturn.2:51
+#: build/C/man2/sigreturn.2:52
msgid ""
-"This B<sigreturn>() call undoes everything that was done\\(emchanging the "
-"process's signal mask, switching stacks (see B<sigaltstack>(2))\\(emin order "
-"to invoke the signal handler: it restores the process's signal mask, "
-"switches stacks, and restores the process's context (registers, processor "
-"flags), so that the process directly resumes execution at the point where it "
-"was interrupted by the signal."
-msgstr ""
-"B<sigreturn>() は、シグナル・ハンドラを起動するために行ったことの全て \\(em "
-"プロセスのシグナルマスクの変更、スタックの切り替え (B<sigaltstack>(2) 参照) "
-"\\(em の取り消しを行う。 プロセスのシグナルマスクの復元、スタックの切り替"
-"え、 プロセスのコンテキスト (レジスタ、プロセッサ・フラグ) の復元を行い、 プ"
-"ロセスがシグナルにより割り込まれた場所からそのまま実行を 再開できるようにす"
-"る。"
+"The kernel also arranges that, during the transition back to user mode, the "
+"signal handler is called, and that, upon return from the handler, control "
+"passes to a piece of user-space code commonly called the \"signal trampoline"
+"\". The signal trampoline code in turn calls B<sigreturn>()."
+msgstr ""
+"また、 カーネルは、 ユーザーモードへの遷移時にシグナルハンドラーが呼び出さ"
+"れ、 ハンドラーからのリターン時に、 制御が \"signal trampoline\" と呼ばれる"
+"ユーザー空間コードブロックに渡されるように、準備を行う。 signal trampoline の"
+"コードが B<sigreturn>() を呼び出す。"
#. type: Plain text
-#: build/C/man2/sigreturn.2:54
+#: build/C/man2/sigreturn.2:65
+msgid ""
+"This B<sigreturn>() call undoes everything that was done\\(emchanging the "
+"process's signal mask, switching signal stacks (see "
+"B<sigaltstack>(2))\\(emin order to invoke the signal handler. It restores "
+"the process's signal mask, switches stacks, and restores the process's "
+"context (processor flags and registers, including the stack pointer and "
+"instruction pointer), so that the process resumes execution at the point "
+"where it was interrupted by the signal."
+msgstr ""
+"B<sigreturn>() は、シグナルハンドラーを起動するために行ったことの全て \\(em "
+"プロセスのシグナルマスクの変更、 シグナルスタックの切り替え "
+"(B<sigaltstack>(2) 参照) \\(em の取り消しを行う。 プロセスのシグナルマスクの"
+"復元、 スタックの切り替え、 プロセスのコンテキスト (プロセッサフラグ、 レジス"
+"ター (スタックポインター、 命令ポインターを含む)) の復元を行い、 プロセスがシ"
+"グナルにより割り込まれた場所から実行を再開できるようにする。"
+
+#. type: Plain text
+#: build/C/man2/sigreturn.2:68
msgid "B<sigreturn>() never returns."
msgstr "B<sigreturn>() が返ることはない。"
-#. type: SH
-#: build/C/man2/sigreturn.2:54
-#, no-wrap
-msgid "FILES"
-msgstr "ファイル"
+#. type: Plain text
+#: build/C/man2/sigreturn.2:74
+msgid ""
+"Many UNIX-type systems have a B<sigreturn>() system call or near "
+"equivalent. However, this call is not specified in POSIX, and details of "
+"its behavior vary across systems."
+msgstr ""
+"多くの UNIX 系のシステムには B<sigreturn>() システムコールか似たようなシステ"
+"ムコールがある。 しかしながら、 このシステムコールは POSIX には規定されておら"
+"ず、 その動作の詳細はシステムにより異なる。"
#. type: Plain text
-#: build/C/man2/sigreturn.2:56
-msgid "/usr/src/linux/arch/i386/kernel/signal.c"
-msgstr "/usr/src/linux/arch/i386/kernel/signal.c"
+#: build/C/man2/sigreturn.2:83
+msgid ""
+"B<sigreturn>() exists only to allow the implementation of signal handlers. "
+"It should B<never> be called directly. Details of the arguments (if any) "
+"passed to B<sigreturn>() vary depending on the architecture."
+msgstr ""
+"B<sigreturn>() はシグナルハンドラーを実装するためだけに存在している。 これら"
+"を直接呼び出すのはB<決して>行うべきではない。 B<sigreturn>() に渡される引き数"
+"の詳細はアーキテクチャーにより異なる。"
+#. See, for example, sysdeps/unix/sysv/linux/i386/sigaction.c and
+#. sysdeps/unix/sysv/linux/x86_64/sigaction.c in the glibc (2.20) source.
#. type: Plain text
-#: build/C/man2/sigreturn.2:58
-msgid "/usr/src/linux/arch/alpha/kernel/entry.S"
-msgstr "/usr/src/linux/arch/alpha/kernel/entry.S"
+#: build/C/man2/sigreturn.2:106
+msgid ""
+"Once upon a time, UNIX systems placed the signal trampoline code onto the "
+"user stack. Nowadays, pages of the user stack are protected so as to "
+"disallow code execution. Thus, on contemporary Linux systems, depending on "
+"the architecture, the signal trampoline code lives either in the B<vdso>(7) "
+"or in the C library. In the latter case, the C library supplies the "
+"location of the trampoline code using the I<sa_restorer> field of the "
+"I<sigaction> structure that is passed to B<sigaction>(2), and sets the "
+"B<SA_RESTORER> flag in the I<sa_flags> field."
+msgstr ""
+"かつて、 UNIX システムでは signal trampoline コードがユーザースタックに置かれ"
+"ていた。 今日では、 ユーザースタックのページは保護され、 コードの実行は禁止さ"
+"れている。 したがって、 現代の Linux システムでは、 アーキテクチャー依存では"
+"あるが、 signal trampoline コードは B<vdso>(7) 内もしくは C ライブラリ内に置"
+"かれる。 後者の場合、 C ライブラリは trampoline code の場所を "
+"B<sigaction>(2) に渡される I<sigaction> 構造体の I<sa_restorer> フィールドを"
+"使って渡し、 I<sa_flags> フィールドの B<SA_RESTORER> フラグをセットする。"
#. type: Plain text
-#: build/C/man2/sigreturn.2:62
+#: build/C/man2/sigreturn.2:115
msgid ""
-"B<sigreturn>() is specific to Linux and should not be used in programs "
-"intended to be portable."
+"The saved process context information is placed in a I<ucontext_t> structure "
+"(see I<E<lt>sys/ucontext.hE<gt>>). That structure is visible within the "
+"signal handler as the third argument of a handler established with the "
+"B<SA_SIGINFO> flag."
msgstr ""
-"B<sigreturn>() は Linux 特有であり、移植を意図したプログラムでは使用してはい"
-"けない。"
+"保存されたプロセスコンテキスト情報は I<ucontext_t>構造体に置かれる "
+"(I<E<lt>sys/ucontext.hE<gt>> 参照)。 この構造体は、 B<SA_SIGINFO> フラグを付"
+"けて設定されたシグナルハンドラーの第 3 引き数としてシングルハンドラー内で参照"
+"できる。"
#. type: Plain text
-#: build/C/man2/sigreturn.2:72
+#: build/C/man2/sigreturn.2:123
msgid ""
-"The B<sigreturn>() call is used by the kernel to implement signal "
-"handlers. It should B<never> be called directly. Better yet, the specific "
-"use of the I<__unused> argument varies depending on the architecture."
+"On some other UNIX systems, the operation of the signal trampoline differs a "
+"little. In particular, on some systems, upon transitioning back to user "
+"mode, the kernel passes control to the trampoline (rather than the signal "
+"handler), and the trampoline code calls the signal handler (and then calls "
+"B<sigreturn>() once the handler returns)."
msgstr ""
-"B<sigreturn>() コールは、シグナル・ハンドラを実装するためにカーネルにより使"
-"用される。 これを直接呼び出しては B<決して> いけない。さらに I<__unused> 引き"
-"数がどのように使われるかはそのアーキテクチャに依存して変化する。"
+"他のいくつかの UNIX システムでは、 signal trampoline の扱いは少し異なる。 特"
+"に、 いくつかのシステムでは、 ユーザーモードに戻る際に、 カーネルは制御を (シ"
+"グナルハンドラーではなく) trampoline に渡し、 trampoline コードがシグナルハン"
+"ドラーを呼び出す (その後ハンドラーが返ると B<sigreturn>() を呼び出す)。"
#. type: Plain text
-#: build/C/man2/sigreturn.2:77
-msgid "B<kill>(2), B<sigaltstack>(2), B<signal>(2), B<signal>(7)"
-msgstr "B<kill>(2), B<sigaltstack>(2), B<signal>(2), B<signal>(7)"
+#: build/C/man2/sigreturn.2:130
+msgid ""
+"B<kill>(2), B<restart_syscall>(2), B<sigaltstack>(2), B<signal>(2), "
+"B<getcontext>(3), B<signal>(7)"
+msgstr ""
+"B<kill>(2), B<restart_syscall>(2), B<sigaltstack>(2), B<signal>(2), "
+"B<getcontext>(3), B<signal>(7)"
#. type: TH
-#: build/C/man3/sigset.3:24
+#: build/C/man3/sigset.3:26
#, no-wrap
msgid "SIGSET"
msgstr "SIGSET"
#. type: Plain text
-#: build/C/man3/sigset.3:27
+#: build/C/man3/sigset.3:29
msgid "sigset, sighold, sigrelse, sigignore - System V signal API"
msgstr "sigset, sighold, sigrelse, sigignore - System V 版シグナル API"
#. type: Plain text
-#: build/C/man3/sigset.3:33
+#: build/C/man3/sigset.3:35
msgid "B<sighandler_t sigset(int >I<sig>B<, sighandler_t >I<disp>B<);>"
msgstr "B<sighandler_t sigset(int >I<sig>B<, sighandler_t >I<disp>B<);>"
#. type: Plain text
-#: build/C/man3/sigset.3:35
+#: build/C/man3/sigset.3:37
msgid "B<int sighold(int >I<sig>B<);>"
msgstr "B<int sighold(int >I<sig>B<);>"
#. type: Plain text
-#: build/C/man3/sigset.3:37
+#: build/C/man3/sigset.3:39
msgid "B<int sigrelse(int >I<sig>B<);>"
msgstr "B<int sigrelse(int >I<sig>B<);>"
#. type: Plain text
-#: build/C/man3/sigset.3:39
+#: build/C/man3/sigset.3:41
msgid "B<int sigignore(int >I<sig>B<);>"
msgstr "B<int sigignore(int >I<sig>B<);>"
#. type: Plain text
-#: build/C/man3/sigset.3:50
+#: build/C/man3/sigset.3:52
msgid "B<sigset>(), B<sighold>(), B<sigrelse>(), B<sigignore>():"
msgstr "B<sigset>(), B<sighold>(), B<sigrelse>(), B<sigignore>():"
#. type: Plain text
-#: build/C/man3/sigset.3:54
+#: build/C/man3/sigset.3:56
msgid ""
"_XOPEN_SOURCE\\ E<gt>=\\ 500 || _XOPEN_SOURCE\\ &&\\ _XOPEN_SOURCE_EXTENDED"
msgstr ""
"_XOPEN_SOURCE\\ E<gt>=\\ 500 || _XOPEN_SOURCE\\ &&\\ _XOPEN_SOURCE_EXTENDED"
#. type: Plain text
-#: build/C/man3/sigset.3:63
+#: build/C/man3/sigset.3:65
msgid ""
"These functions are provided in glibc as a compatibility interface for "
"programs that make use of the historical System V signal API. This API is "
"B<sigprocmask>(2), etc.)"
msgstr ""
"これらの関数は、昔ながらの System V 版シグナル API を使用しているプログラム "
-"ã\81«å¯¾ã\81\97ã\81¦äº\92æ\8f\9bæ\80§ã\81®ã\81\82ã\82\8bã\82¤ã\83³ã\82¿ã\83\95ã\82§ã\83¼ã\82¹ã\82\92 glibc ã\81§æ\8f\90ä¾\9bã\81\99ã\82\8bã\82\82ã\81®ã\81§ã\81\82ã\82\8bã\80\82 ã\81\93ã\81® API ã\81¯"
-"過去のものであり、新しいアプリケーションでは POSIX シグナル API (B<sigaction>"
-"(2), B<sigprocmask>(2) など) を使用すべきである。"
+"ã\81«å¯¾ã\81\97ã\81¦äº\92æ\8f\9bæ\80§ã\81®ã\81\82ã\82\8bã\82¤ã\83³ã\82¿ã\83¼ã\83\95ã\82§ã\83¼ã\82¹ã\82\92 glibc ã\81§æ\8f\90ä¾\9bã\81\99ã\82\8bã\82\82ã\81®ã\81§ã\81\82ã\82\8bã\80\82 ã\81\93ã\81® API "
+"は過去のものであり、新しいアプリケーションでは POSIX シグナル API "
+"(B<sigaction>(2), B<sigprocmask>(2) など) を使用すべきである。"
#. type: Plain text
-#: build/C/man3/sigset.3:72
+#: build/C/man3/sigset.3:74
msgid ""
"The B<sigset>() function modifies the disposition of the signal I<sig>. "
"The I<disp> argument can be the address of a signal handler function, or one "
"of the following constants:"
msgstr ""
-"関数 B<sigset>() はシグナル I<sig> のシグナルハンドラの動作を変更する。 "
-"I<disp> 引き数には、シグナルハンドラ関数のアドレスか、 以下の定数のいずれか一"
-"つを指定できる。"
+"é\96¢æ\95° B<sigset>() ã\81¯ã\82·ã\82°ã\83\8aã\83« I<sig> ã\81®ã\82·ã\82°ã\83\8aã\83«ã\83\8fã\83³ã\83\89ã\83©ã\83¼ã\81®å\8b\95ä½\9cã\82\92å¤\89æ\9b´ã\81\99ã\82\8bã\80\82 "
+"I<disp> 引き数には、シグナルハンドラー関数のアドレスか、 以下の定数のいずれか"
+"一つを指定できる。"
#. type: TP
-#: build/C/man3/sigset.3:72
+#: build/C/man3/sigset.3:74
#, no-wrap
msgid "B<SIG_DFL>"
msgstr "B<SIG_DFL>"
#. type: Plain text
-#: build/C/man3/sigset.3:77
+#: build/C/man3/sigset.3:79
msgid "Reset the disposition of I<sig> to the default."
msgstr "I<sig> の動作をデフォルトにリセットする。"
#. type: TP
-#: build/C/man3/sigset.3:77
+#: build/C/man3/sigset.3:79
#, no-wrap
msgid "B<SIG_IGN>"
msgstr "B<SIG_IGN>"
#. type: Plain text
-#: build/C/man3/sigset.3:81
+#: build/C/man3/sigset.3:83
msgid "Ignore I<sig>."
msgstr "I<sig> を無視する。"
#. type: TP
-#: build/C/man3/sigset.3:81
+#: build/C/man3/sigset.3:83
#, no-wrap
msgid "B<SIG_HOLD>"
msgstr "B<SIG_HOLD>"
#. type: Plain text
-#: build/C/man3/sigset.3:88
+#: build/C/man3/sigset.3:90
msgid ""
"Add I<sig> to the process's signal mask, but leave the disposition of I<sig> "
"unchanged."
"い。"
#. type: Plain text
-#: build/C/man3/sigset.3:94
+#: build/C/man3/sigset.3:96
msgid ""
"If I<disp> specifies the address of a signal handler, then I<sig> is added "
"to the process's signal mask during execution of the handler."
msgstr ""
-"I<disp> ã\81«ã\82·ã\82°ã\83\8aã\83«ã\83\8fã\83³ã\83\89ã\83©ã\81®ã\82¢ã\83\89ã\83¬ã\82¹ã\81\8cæ\8c\87å®\9aã\81\95ã\82\8cã\81\9få ´å\90\88ã\80\81 ã\82·ã\82°ã\83\8aã\83«ã\83\8fã\83³ã\83\89ã\83©ã\81®å®\9fè¡\8c"
-"中は、そのプロセスのシグナルマスクに I<sig> が追加される。"
+"I<disp> ã\81«ã\82·ã\82°ã\83\8aã\83«ã\83\8fã\83³ã\83\89ã\83©ã\83¼ã\81®ã\82¢ã\83\89ã\83¬ã\82¹ã\81\8cæ\8c\87å®\9aã\81\95ã\82\8cã\81\9få ´å\90\88ã\80\81 ã\82·ã\82°ã\83\8aã\83«ã\83\8fã\83³ã\83\89ã\83©ã\83¼ã\81®"
+"実行中は、そのプロセスのシグナルマスクに I<sig> が追加される。"
#. type: Plain text
-#: build/C/man3/sigset.3:102
+#: build/C/man3/sigset.3:104
msgid ""
"If I<disp> was specified as a value other than B<SIG_HOLD>, then I<sig> is "
"removed from the process's signal mask."
"クから I<sig> が削除される。"
#. type: Plain text
-#: build/C/man3/sigset.3:108 build/C/man3/sigvec.3:85
+#: build/C/man3/sigset.3:110 build/C/man3/sigvec.3:87
msgid "The dispositions for B<SIGKILL> and B<SIGSTOP> cannot be changed."
msgstr "シグナル B<SIGKILL> と B<SIGSTOP> に対する動作は変更できない。"
#. type: Plain text
-#: build/C/man3/sigset.3:114
+#: build/C/man3/sigset.3:116
msgid ""
"The B<sighold>() function adds I<sig> to the calling process's signal mask."
msgstr ""
"る。"
#. type: Plain text
-#: build/C/man3/sigset.3:120
+#: build/C/man3/sigset.3:122
msgid ""
"The B<sigrelse>() function removes I<sig> from the calling process's signal "
"mask."
"する。"
#. type: Plain text
-#: build/C/man3/sigset.3:127
+#: build/C/man3/sigset.3:129
msgid ""
"The B<sigignore>() function sets the disposition of I<sig> to B<SIG_IGN>."
msgstr "関数 B<sigignore>() は、 I<sig> の動作を B<SIG_IGN> に設定する。"
#. type: Plain text
-#: build/C/man3/sigset.3:143
+#: build/C/man3/sigset.3:145
msgid ""
"On success, B<sigset>() returns B<SIG_HOLD> if I<sig> was blocked before "
"the call, or the signal's previous disposition if it was not blocked before "
"す値をセットする。 但し、以下の「バグ」の節も参照のこと。"
#. type: Plain text
-#: build/C/man3/sigset.3:152
+#: build/C/man3/sigset.3:154
msgid ""
"The B<sighold>(), B<sigrelse>(), and B<sigignore>() functions return 0 on "
"success; on error, these functions return -1 and set I<errno> to indicate "
"ラーの場合、-1 を返し、 I<errno> にエラーを示す値をセットする。"
#. type: Plain text
-#: build/C/man3/sigset.3:159
+#: build/C/man3/sigset.3:161
msgid ""
"For B<sigset>() see the ERRORS under B<sigaction>(2) and B<sigprocmask>(2)."
msgstr ""
"の節を参照。"
#. type: Plain text
-#: build/C/man3/sigset.3:166
+#: build/C/man3/sigset.3:168
msgid ""
"For B<sighold>() and B<sigrelse>() see the ERRORS under B<sigprocmask>(2)."
msgstr ""
"の節を参照。"
#. type: Plain text
-#: build/C/man3/sigset.3:171
+#: build/C/man3/sigset.3:173
msgid "For B<sigignore>(), see the errors under B<sigaction>(2)."
msgstr "B<sigignore>() に関しては、 B<sigaction>(2) の「エラー」の節を参照。"
#. type: Plain text
-#: build/C/man3/sigset.3:188
+#: build/C/man3/sigset.3:190
msgid ""
"SVr4, POSIX.1-2001. These functions are obsolete: do not use them in new "
"programs. POSIX.1-2008 marks B<sighold>(), B<sigignore>(), B<sigpause>(), "
"B<sigrelse>(), and B<sigset>() as obsolete, recommending the use of "
-"B<sigaction>(2), B<sigprocmask>(2), B<pthread_sigmask>(3), and B<sigsuspend>"
-"(2) instead."
+"B<sigaction>(2), B<sigprocmask>(2), B<pthread_sigmask>(3), and "
+"B<sigsuspend>(2) instead."
msgstr ""
"SVr4, POSIX.1-2001. これらの関数は廃止予定である。新しいプログラムでは使用し"
"ないこと。 POSIX.1-2008 は、 B<sighold>(), B<sigignore>(), B<sigpause>(), "
-"B<sigrelse>(), B<sigset>() を廃止予定としている。 代わりに、 B<sigaction>"
-"(2), B<sigprocmask>(2), B<pthread_sigmask>(3), B<sigsuspend>(2) の使用が推奨"
-"されている。"
+"B<sigrelse>(), B<sigset>() を廃止予定としている。 代わりに、 "
+"B<sigaction>(2), B<sigprocmask>(2), B<pthread_sigmask>(3), B<sigsuspend>(2) "
+"ã\81®ä½¿ç\94¨ã\81\8cæ\8e¨å¥¨ã\81\95ã\82\8cã\81¦ã\81\84ã\82\8bã\80\82"
#. type: Plain text
-#: build/C/man3/sigset.3:190
+#: build/C/man3/sigset.3:192
msgid "These functions appeared in glibc version 2.1."
msgstr "これらの関数は glibc 2.1 で登場した。"
#. type: Plain text
-#: build/C/man3/sigset.3:196
+#: build/C/man3/sigset.3:198
msgid ""
-"The I<sighandler_t> type is a GNU extension; it is only used on this page to "
+"The I<sighandler_t> type is a GNU extension; it is used on this page only to "
"make the B<sigset>() prototype more easily readable."
msgstr ""
"I<sighandler_t> 型は GNU による拡張であり、この man page で B<sigset>() のプ"
"ロトタイプをより読みやすくするために使われているだけである。"
#. type: Plain text
-#: build/C/man3/sigset.3:204
+#: build/C/man3/sigset.3:206
msgid ""
"The B<sigset>() function provides reliable signal handling semantics (as "
"when calling B<sigaction>(2) with I<sa_mask> equal to 0)."
"で B<sigaction>(2) を呼び出したときと同様)。"
#. type: Plain text
-#: build/C/man3/sigset.3:222
+#: build/C/man3/sigset.3:224
msgid ""
"On System V, the B<signal>() function provides unreliable semantics (as "
"when calling B<sigaction>(2) with I<sa_mask> equal to I<SA_RESETHAND | "
"SA_NODEFER>). On BSD, B<signal>() provides reliable semantics. "
-"POSIX.1-2001 leaves these aspects of B<signal>() unspecified. See B<signal>"
-"(2) for further details."
+"POSIX.1-2001 leaves these aspects of B<signal>() unspecified. See "
+"B<signal>(2) for further details."
msgstr ""
"System V では、関数 B<signal>() が提供する処理機構は信頼性のないものである "
"(I<sa_mask> を I<SA_RESETHAND | SA_NODEFER> として B<sigaction>(2) を呼び出"
"なる詳細については B<signal>(2) を参照。"
#. type: Plain text
-#: build/C/man3/sigset.3:230 build/C/man3/sigvec.3:250
+#: build/C/man3/sigset.3:232 build/C/man3/sigvec.3:272
msgid ""
"In order to wait for a signal, BSD and System V both provided a function "
"named B<sigpause>(3), but this function has a different argument on the two "
"systems. See B<sigpause>(3) for details."
msgstr ""
-"BSD と System V のどちらのシステムでも シグナルを待つために、 B<sigpause>"
-"(3) という名前の関数が提供されているが、 この関数の引き数は両方のシステムで"
-"異なる。 詳細は B<sigpause>(3) を参照。"
+"BSD と System V のどちらのシステムでも シグナルを待つために、 "
+"B<sigpause>(3) という名前の関数が提供されているが、 この関数の引き数は両方の"
+"システムで異なる。 詳細は B<sigpause>(3) を参照。"
#. type: Plain text
-#: build/C/man3/sigset.3:239
+#: build/C/man3/sigset.3:241
msgid ""
"In versions of glibc before 2.2, B<sigset>() did not unblock I<sig> if "
"I<disp> was specified as a value other than B<SIG_HOLD>."
#. See http://sourceware.org/bugzilla/show_bug.cgi?id=1951
#. type: Plain text
-#: build/C/man3/sigset.3:264
+#: build/C/man3/sigset.3:266
msgid ""
"In versions of glibc before 2.5, B<sigset>() does not correctly return the "
"previous disposition of the signal in two cases. First, if I<disp> is "
"る。"
#. type: Plain text
-#: build/C/man3/sigset.3:274
+#: build/C/man3/sigset.3:276
msgid ""
"B<kill>(2), B<pause>(2), B<sigaction>(2), B<signal>(2), B<sigprocmask>(2), "
"B<raise>(3), B<sigpause>(3), B<sigvec>(3), B<signal>(7)"
"B<raise>(3), B<sigpause>(3), B<sigvec>(3), B<signal>(7)"
#. type: TH
-#: build/C/man3/sigsetops.3:29
+#: build/C/man3/sigsetops.3:31
#, no-wrap
msgid "SIGSETOPS"
msgstr "SIGSETOPS"
#. type: TH
-#: build/C/man3/sigsetops.3:29
+#: build/C/man3/sigsetops.3:31
#, no-wrap
-msgid "2008-09-01"
-msgstr "2008-09-01"
+msgid "2014-04-14"
+msgstr "2014-04-14"
#. type: Plain text
-#: build/C/man3/sigsetops.3:33
+#: build/C/man3/sigsetops.3:35
msgid ""
"sigemptyset, sigfillset, sigaddset, sigdelset, sigismember - POSIX signal "
-"set operations."
+"set operations"
msgstr ""
"sigemptyset, sigfillset, sigaddset, sigdelset, sigismember - POSIX シグナル集"
"合の操作"
#. type: Plain text
-#: build/C/man3/sigsetops.3:37
+#: build/C/man3/sigsetops.3:39
msgid "B<int sigemptyset(sigset_t *>I<set>B<);>"
msgstr "B<int sigemptyset(sigset_t *>I<set>B<);>"
#. type: Plain text
-#: build/C/man3/sigsetops.3:39
+#: build/C/man3/sigsetops.3:41
msgid "B<int sigfillset(sigset_t *>I<set>B<);>"
msgstr "B<int sigfillset(sigset_t *>I<set>B<);>"
#. type: Plain text
-#: build/C/man3/sigsetops.3:41
+#: build/C/man3/sigsetops.3:43
msgid "B<int sigaddset(sigset_t *>I<set>B<, int >I<signum>B<);>"
msgstr "B<int sigaddset(sigset_t *>I<set>B<, int >I<signum>B<);>"
#. type: Plain text
-#: build/C/man3/sigsetops.3:43
+#: build/C/man3/sigsetops.3:45
msgid "B<int sigdelset(sigset_t *>I<set>B<, int >I<signum>B<);>"
msgstr "B<int sigdelset(sigset_t *>I<set>B<, int >I<signum>B<);>"
#. type: Plain text
-#: build/C/man3/sigsetops.3:45
+#: build/C/man3/sigsetops.3:47
msgid "B<int sigismember(const sigset_t *>I<set>B<, int >I<signum>B<);>"
msgstr "B<int sigismember(const sigset_t *>I<set>B<, int >I<signum>B<);>"
#. type: Plain text
-#: build/C/man3/sigsetops.3:57
+#: build/C/man3/sigsetops.3:59
msgid ""
"B<sigemptyset>(), B<sigfillset>(), B<sigaddset>(), B<sigdelset>(), "
"B<sigismember>():"
"B<sigismember>():"
#. type: Plain text
-#: build/C/man3/sigsetops.3:59
+#: build/C/man3/sigsetops.3:61
msgid "_POSIX_C_SOURCE\\ E<gt>=\\ 1 || _XOPEN_SOURCE || _POSIX_SOURCE"
msgstr "_POSIX_C_SOURCE\\ E<gt>=\\ 1 || _XOPEN_SOURCE || _POSIX_SOURCE"
#. type: Plain text
-#: build/C/man3/sigsetops.3:63
+#: build/C/man3/sigsetops.3:65
msgid "These functions allow the manipulation of POSIX signal sets."
msgstr "これらの関数は POSIX シグナル集合(signal set)を操作するため使用する。"
#. type: Plain text
-#: build/C/man3/sigsetops.3:68
+#: build/C/man3/sigsetops.3:70
msgid ""
"B<sigemptyset>() initializes the signal set given by I<set> to empty, with "
"all signals excluded from the set."
"が一つも 含まれていない状態にする。"
#. type: Plain text
-#: build/C/man3/sigsetops.3:73
+#: build/C/man3/sigsetops.3:75
msgid "B<sigfillset>() initializes I<set> to full, including all signals."
msgstr ""
"B<sigfillset>() は I<set> で与えられたシグナル集合が全てのシグナルを含むよう"
"にする。"
#. type: Plain text
-#: build/C/man3/sigsetops.3:81
+#: build/C/man3/sigsetops.3:83
msgid ""
"B<sigaddset>() and B<sigdelset>() add and delete respectively signal "
"I<signum> from I<set>."
"加えたり、削除したりする。"
#. type: Plain text
-#: build/C/man3/sigsetops.3:87
+#: build/C/man3/sigsetops.3:89
msgid "B<sigismember>() tests whether I<signum> is a member of I<set>."
msgstr ""
"B<sigismember>() は I<signum> が I<set> に含まれているかどうかをテストする。"
#. type: Plain text
-#: build/C/man3/sigsetops.3:105
+#: build/C/man3/sigsetops.3:107
msgid ""
"Objects of type I<sigset_t> must be initialized by a call to either "
"B<sigemptyset>() or B<sigfillset>() before being passed to the functions "
"B<sigorset>()). The results are undefined if this is not done."
msgstr ""
"I<sigset_t> 型のオブジェクトは、関数 B<sigaddset>(), B<sigdelset>(), "
-"B<sigismember>() や後述の glibc の追加関数 (B<sigisemptyset>(), B<sigandset>"
-"(), B<sigorset>()) に渡す前に、 B<sigemptyset>() か B<sigfillset>() を呼び"
-"出して初期化しなければならない。 初期化しなかった場合の結果は未定義である。"
+"B<sigismember>() や後述の glibc の追加関数 (B<sigisemptyset>(), "
+"B<sigandset>(), B<sigorset>()) に渡す前に、 B<sigemptyset>() か "
+"B<sigfillset>() を呼び出して初期化しなければならない。 初期化しなかった場合"
+"の結果は未定義である。"
#. type: Plain text
-#: build/C/man3/sigsetops.3:112
+#: build/C/man3/sigsetops.3:114
msgid ""
"B<sigemptyset>(), B<sigfillset>(), B<sigaddset>(), and B<sigdelset>() "
"return 0 on success and -1 on error."
"ば 0 を、エラーの場合は -1 を返す。"
#. type: Plain text
-#: build/C/man3/sigsetops.3:121
+#: build/C/man3/sigsetops.3:123
msgid ""
"B<sigismember>() returns 1 if I<signum> is a member of I<set>, 0 if "
"I<signum> is not a member, and -1 on error."
msgstr ""
-"B<sigismember>() は I<signum> が I<set> に含まれていれば 1 を返し、含まれて"
-"いなければ 0 を返す。 エラーの場合は -1 を返す。"
+"B<sigismember>() は I<signum> が I<set> のメンバの場合 1 を返し、メンバでな"
+"い場合 0 を返す。 エラーの場合、-1 を返す。"
+
+#. type: Plain text
+#: build/C/man3/sigsetops.3:127
+msgid ""
+"On error, these functions set I<errno> to indicate the cause of the error."
+msgstr "エラーの場合、 I<errno> にエラーの原因を示す値を設定する。"
#. type: Plain text
-#: build/C/man3/sigsetops.3:126
+#: build/C/man3/sigsetops.3:132
msgid "I<sig> is not a valid signal."
msgstr "I<sig> が有効なシグナルではない。"
+#. type: Plain text
+#: build/C/man3/sigsetops.3:145
+msgid ""
+"The B<sigemptyset>(), B<sigfillset>(), B<sigaddset>(), B<sigdelset>(), "
+"B<sigismember>(), B<sigisemptyset>(), B<sigorset>(), and B<sigandset>() "
+"functions are thread-safe."
+msgstr ""
+"関数 B<sigemptyset>(), B<sigfillset>(), B<sigaddset>(), B<sigdelset>(), "
+"B<sigismember>(), B<sigisemptyset>(), B<sigorset>(), B<sigandset>() はスレッ"
+"ドセーフである。"
+
#. type: SS
-#: build/C/man3/sigsetops.3:129
+#: build/C/man3/sigsetops.3:148
#, no-wrap
-msgid "Glibc Notes"
+msgid "Glibc notes"
msgstr "glibc での注意"
#. type: Plain text
-#: build/C/man3/sigsetops.3:135
+#: build/C/man3/sigsetops.3:154
msgid ""
"If the B<_GNU_SOURCE> feature test macro is defined, then I<E<lt>signal."
-"hE<gt>> exposes three other functions for manipulating signal sets."
+"hE<gt>> exposes three other functions for manipulating signal sets:"
msgstr ""
"B<_GNU_SOURCE> 機能検査マクロが定義されていると、 I<E<lt>signal.hE<gt>> でシ"
-"グナル集合を操作する 3つの関数が追加で公開される。"
-
-#. type: TP
-#: build/C/man3/sigsetops.3:135
-#, no-wrap
-msgid "B<int sigisemptyset(sigset_t *>I<set>B<);>"
-msgstr "B<int sigisemptyset(sigset_t *>I<set>B<);>"
-
-#. type: Plain text
-#: build/C/man3/sigsetops.3:140
-msgid "returns 1 if I<set> contains no signals, and 0 otherwise."
-msgstr ""
-"I<set> にシグナルが一つも含まれていなければ 1 を返し、 それ以外は 0 を返す。"
-
-#. type: TP
-#: build/C/man3/sigsetops.3:140
-#, no-wrap
-msgid "B<int sigorset(sigset_t *>I<dest>B<, sigset_t *>I<left>B<, sigset_t *>I<right>B<);>"
-msgstr "B<int sigorset(sigset_t *>I<dest>B<, sigset_t *>I<left>B<, sigset_t *>I<right>B<);>"
+"グナル集合を操作する 3 つの関数が追加で公開される。"
#. type: Plain text
-#: build/C/man3/sigsetops.3:149
-msgid "places the union of the sets I<left> and I<right> in I<dest>."
-msgstr "シグナル集合 I<left> と I<left> の和集合を I<dest> に書き込む。"
-
-#. type: TP
-#: build/C/man3/sigsetops.3:149
+#: build/C/man3/sigsetops.3:161
#, no-wrap
-msgid "B<int sigandset(sigset_t *>I<dest>B<, sigset_t *>I<left>B<, sigset_t *>I<right>B<);>"
-msgstr "B<int sigandset(sigset_t *>I<dest>B<, sigset_t *>I<left>B<, sigset_t *>I<right>B<);>"
+msgid ""
+"B<int sigisemptyset(const sigset_t *>I<set>B<);>\n"
+"B<int sigorset(sigset_t *>I<dest>B<, const sigset_t *>I<left>B<,>\n"
+"B< const sigset_t *>I<right>B<);>\n"
+"B<int sigandset(sigset_t *>I<dest>B<, const sigset_t *>I<left>B<,>\n"
+"B< const sigset_t *>I<right>B<);>\n"
+msgstr ""
+"B<int sigisemptyset(const sigset_t *>I<set>B<);>\n"
+"B<int sigorset(sigset_t *>I<dest>B<, const sigset_t *>I<left>B<,>\n"
+"B< const sigset_t *>I<right>B<);>\n"
+"B<int sigandset(sigset_t *>I<dest>B<, const sigset_t *>I<left>B<,>\n"
+"B< const sigset_t *>I<right>B<);>\n"
#. type: Plain text
-#: build/C/man3/sigsetops.3:158
-msgid "places the intersection of the sets I<left> and I<right> in I<dest>."
-msgstr "シグナル集合 I<left> と I<left> の積集合を I<dest> に書き込む。"
+#: build/C/man3/sigsetops.3:167
+msgid ""
+"B<sigisemptyset>() returns 1 if I<set> contains no signals, and 0 otherwise."
+msgstr ""
+"B<sigisemptyset>() は I<set> にシグナルが一つも含まれていなければ 1 を返し、 "
+"それ以外は 0 を返す。"
#. type: Plain text
-#: build/C/man3/sigsetops.3:163
+#: build/C/man3/sigsetops.3:183
msgid ""
-"B<sigorset>() and B<sigandset>() return 0 on success, and -1 on failure."
+"B<sigorset>() places the union of the sets I<left> and I<right> in "
+"I<dest>. B<sigandset>() places the intersection of the sets I<left> and "
+"I<right> in I<dest>. Both functions return 0 on success, and -1 on failure."
msgstr ""
-"B<sigorset>() と B<sigandset>() は成功すると 0 を、失敗すると -1 を返す。"
+"B<sigorset>() は集合 I<left> と I<right> の和集合を I<dest> に設定する。 "
+"B<sigandset>() は集合 I<left> と I<right> の積集合を I<dest> に設定する。 ど"
+"ちらの関数も成功すると 0 を返し、失敗時には -1 を返す。"
#. type: Plain text
-#: build/C/man3/sigsetops.3:166
+#: build/C/man3/sigsetops.3:186
msgid ""
"These functions are nonstandard (a few other systems provide similar "
"functions) and their use should be avoided in portable applications."
"かはあるが) 移植性を考慮したアプリケーションでは使用を避けるべき である。"
#. type: Plain text
-#: build/C/man3/sigsetops.3:171
+#: build/C/man3/sigsetops.3:191
msgid "B<sigaction>(2), B<sigpending>(2), B<sigprocmask>(2), B<sigsuspend>(2)"
msgstr "B<sigaction>(2), B<sigpending>(2), B<sigprocmask>(2), B<sigsuspend>(2)"
#. type: TH
-#: build/C/man2/sigsuspend.2:27
+#: build/C/man2/sigsuspend.2:29
#, no-wrap
msgid "SIGSUSPEND"
msgstr "SIGSUSPEND"
-#. type: TH
-#: build/C/man2/sigsuspend.2:27
-#, no-wrap
-msgid "2008-08-29"
-msgstr "2008-08-29"
-
#. type: Plain text
-#: build/C/man2/sigsuspend.2:30
+#: build/C/man2/sigsuspend.2:32
msgid "sigsuspend - wait for a signal"
msgstr "sigsuspend - シグナルを待つ"
#. type: Plain text
-#: build/C/man2/sigsuspend.2:34
+#: build/C/man2/sigsuspend.2:36
msgid "B<int sigsuspend(const sigset_t *>I<mask>B<);>"
msgstr "B<int sigsuspend(const sigset_t *>I<mask>B<);>"
#. type: Plain text
-#: build/C/man2/sigsuspend.2:43
+#: build/C/man2/sigsuspend.2:45
msgid ""
"B<sigsuspend>(): _POSIX_C_SOURCE\\ E<gt>=\\ 1 || _XOPEN_SOURCE || "
"_POSIX_SOURCE"
"_POSIX_SOURCE"
#. type: Plain text
-#: build/C/man2/sigsuspend.2:51
+#: build/C/man2/sigsuspend.2:53
msgid ""
"B<sigsuspend>() temporarily replaces the signal mask of the calling process "
"with the mask given by I<mask> and then suspends the process until delivery "
"process."
msgstr ""
"B<sigsuspend>() は、呼び出し元プロセスのシグナルマスクを I<mask> で指定され"
-"ã\81\9fã\83\9eã\82¹ã\82¯ã\81«ä¸\80æ\99\82ç\9a\84ã\81«ç½®ã\81\8dæ\8f\9bã\81\88ã\80\81 ã\82·ã\82°ã\83\8aã\83«ã\83\8fã\83³ã\83\89ã\83©ã\81®èµ·å\8b\95ã\82\82ã\81\97ã\81\8fã\81¯ã\83\97ã\83ã\82»ã\82¹ã\81®çµ\82äº\86ã\81\8cã\82¢"
-"クションとして 設定されたシグナルが配送されるまで、そのプロセスを停止する。"
+"ã\81\9fã\83\9eã\82¹ã\82¯ã\81«ä¸\80æ\99\82ç\9a\84ã\81«ç½®ã\81\8dæ\8f\9bã\81\88ã\80\81 ã\82·ã\82°ã\83\8aã\83«ã\83\8fã\83³ã\83\89ã\83©ã\83¼ã\81®èµ·å\8b\95ã\82\82ã\81\97ã\81\8fã\81¯ã\83\97ã\83ã\82»ã\82¹ã\81®çµ\82äº\86ã\81\8c"
+"ã\82¢ã\82¯ã\82·ã\83§ã\83³ã\81¨ã\81\97ã\81¦ è¨å®\9aã\81\95ã\82\8cã\81\9fã\82·ã\82°ã\83\8aã\83«ã\81\8cé\85\8dé\80\81ã\81\95ã\82\8cã\82\8bã\81¾ã\81§ã\80\81ã\81\9dã\81®ã\83\97ã\83ã\82»ã\82¹ã\82\92å\81\9cæ¢ã\81\99ã\82\8bã\80\82"
#. type: Plain text
-#: build/C/man2/sigsuspend.2:60
+#: build/C/man2/sigsuspend.2:62
msgid ""
"If the signal terminates the process, then B<sigsuspend>() does not "
"return. If the signal is caught, then B<sigsuspend>() returns after the "
"the call to B<sigsuspend>()."
msgstr ""
"シグナルがプロセスを終了させるものの場合、 B<sigsuspend>() は返らない。シグ"
-"ã\83\8aã\83«ã\81\8cæ\8d\95æ\8d\89ã\81\95ã\82\8cã\81\9få ´å\90\88ã\80\81 ã\82·ã\82°ã\83\8aã\83«ã\83\8fã\83³ã\83\89ã\83©ã\81®å\87¦ç\90\86ã\81\8cçµ\82ã\82\8fã\81£ã\81\9få¾\8cã\81« B<sigsuspend>() "
-"は返り、シグナルマスクは B<sigsuspend>() が呼び出される前の状態に復元され"
-"る。"
+"ã\83\8aã\83«ã\81\8cæ\8d\95æ\8d\89ã\81\95ã\82\8cã\81\9få ´å\90\88ã\80\81 ã\82·ã\82°ã\83\8aã\83«ã\83\8fã\83³ã\83\89ã\83©ã\83¼ã\81®å\87¦ç\90\86ã\81\8cçµ\82ã\82\8fã\81£ã\81\9få¾\8cã\81« "
+"B<sigsuspend>() は返り、シグナルマスクは B<sigsuspend>() が呼び出される前の"
+"状態に復元される。"
#. type: Plain text
-#: build/C/man2/sigsuspend.2:68
+#: build/C/man2/sigsuspend.2:70
msgid ""
"It is not possible to block B<SIGKILL> or B<SIGSTOP>; specifying these "
"signals in I<mask>, has no effect on the process's signal mask."
"を I<mask> に指定しても、プロセスのシグナルマスクは影響を受けない。"
#. type: Plain text
-#: build/C/man2/sigsuspend.2:72
-msgid "B<sigsuspend>() always returns -1, normally with the error B<EINTR>."
-msgstr "B<sigsuspend>() は常に -1 を返し、通常は B<EINTR> エラーが発生する。"
+#: build/C/man2/sigsuspend.2:76
+msgid ""
+"B<sigsuspend>() always returns -1, with I<errno> set to indicate the error "
+"(normally, B<EINTR>)."
+msgstr ""
+"B<sigsuspend>() は常に -1 を返し、 I<errno> にエラーの原因を示す値 (通常は "
+"B<EINTR>) を設定する。"
#. type: Plain text
-#: build/C/man2/sigsuspend.2:77
+#: build/C/man2/sigsuspend.2:81
msgid ""
"I<mask> points to memory which is not a valid part of the process address "
"space."
msgstr ""
-"I<mask> が指しているメモリが、プロセスのアドレス空間の有効な部分ではない。"
+"I<mask> ã\81\8cæ\8c\87ã\81\97ã\81¦ã\81\84ã\82\8bã\83¡ã\83¢ã\83ªã\83¼ã\81\8cã\80\81ã\83\97ã\83ã\82»ã\82¹ã\81®ã\82¢ã\83\89ã\83¬ã\82¹ç©ºé\96\93ã\81®æ\9c\89å\8a¹ã\81ªé\83¨å\88\86ã\81§ã\81¯ã\81ªã\81\84ã\80\82"
#. type: Plain text
-#: build/C/man2/sigsuspend.2:80
+#: build/C/man2/sigsuspend.2:84
msgid "The call was interrupted by a signal."
msgstr "システムコールはシグナルにより割り込まれた。"
#. type: Plain text
-#: build/C/man2/sigsuspend.2:100
+#: build/C/man2/sigsuspend.2:104
msgid ""
"Normally, B<sigsuspend>() is used in conjunction with B<sigprocmask>(2) in "
"order to prevent delivery of a signal during the execution of a critical "
"by calling B<sigsuspend>() with the signal mask that was returned by "
"B<sigprocmask>(2) (in the I<oldset> argument)."
msgstr ""
-"B<sigsuspend>() ã\81¯ã\80\81é\80\9a常ã\80\81ã\82¯ã\83ªã\83\86ã\82£ã\82«ã\83«ã\83»ã\82³ã\83¼ã\83\89ã\83»セクション (critical code "
-"section) の 実行中にシグナルが配送されるのを防止するために、 B<sigprocmask>"
-"(2) と組み合わせて使用される。 まず最初に、呼び出し元は B<sigprocmask>(2) "
-"を使ってシグナルを禁止する。 クリティカル・コードが完了すると、呼び出し元は "
-"B<sigprocmask>(2) が (I<oldset> 引き数で) 返すシグナルマスクを指定して "
-"B<sigsuspend>() を呼び出すことで、クリティカル・コード実行中に発生した シグ"
-"ナルを待つことができる。"
+"B<sigsuspend>() ã\81¯ã\80\81é\80\9a常ã\80\81ã\82¯ã\83ªã\83\86ã\82£ã\82«ã\83«ã\82³ã\83¼ã\83\89セクション (critical code "
+"section) の 実行中にシグナルが配送されるのを防止するために、 "
+"B<sigprocmask>(2) と組み合わせて使用される。 まず最初に、呼び出し元は "
+"B<sigprocmask>(2) を使ってシグナルを禁止する。 クリティカルコードが完了する"
+"と、呼び出し元は B<sigprocmask>(2) が (I<oldset> 引き数で) 返すシグナルマス"
+"クを指定して B<sigsuspend>() を呼び出すことで、クリティカルコード実行中に発"
+"生した シグナルを待つことができる。"
#. type: Plain text
-#: build/C/man2/sigsuspend.2:114
+#: build/C/man2/sigsuspend.2:118
msgid ""
"B<kill>(2), B<pause>(2), B<sigaction>(2), B<signal>(2), B<sigprocmask>(2), "
"B<sigwaitinfo>(2), B<sigsetops>(3), B<sigwait>(3), B<signal>(7)"
"B<sigwaitinfo>(2), B<sigsetops>(3), B<sigwait>(3), B<signal>(7)"
#. type: TH
-#: build/C/man3/sigvec.3:24
+#: build/C/man3/sigvec.3:26
#, no-wrap
msgid "SIGVEC"
msgstr "SIGVEC"
#. type: Plain text
-#: build/C/man3/sigvec.3:27
+#: build/C/man3/sigvec.3:29
msgid "sigvec, sigblock, sigsetmask, siggetmask, sigmask - BSD signal API"
msgstr "sigvec, sigblock, sigsetmask, siggetmask, sigmask - BSD 版シグナル API"
#. type: Plain text
-#: build/C/man3/sigvec.3:31
+#: build/C/man3/sigvec.3:33
msgid ""
-"B<int sigvec(int >I<sig>B<, struct sigvec *>I<vec>B<, struct sigvec "
+"B<int sigvec(int >I<sig>B<, const struct sigvec *>I<vec>B<, struct sigvec "
"*>I<ovec>B<);>"
msgstr ""
-"B<int sigvec(int >I<sig>B<, struct sigvec *>I<vec>B<, struct sigvec "
+"B<int sigvec(int >I<sig>B<, const struct sigvec *>I<vec>B<, struct sigvec "
"*>I<ovec>B<);>"
#. type: Plain text
-#: build/C/man3/sigvec.3:33
+#: build/C/man3/sigvec.3:35
msgid "B<int sigmask(int >I<signum>B<);>"
msgstr "B<int sigmask(int >I<signum>B<);>"
#. type: Plain text
-#: build/C/man3/sigvec.3:35
+#: build/C/man3/sigvec.3:37
msgid "B<int sigblock(int >I<mask>B<);>"
msgstr "B<int sigblock(int >I<mask>B<);>"
#. type: Plain text
-#: build/C/man3/sigvec.3:37
+#: build/C/man3/sigvec.3:39
msgid "B<int sigsetmask(int >I<mask>B<);>"
msgstr "B<int sigsetmask(int >I<mask>B<);>"
#. type: Plain text
-#: build/C/man3/sigvec.3:39
+#: build/C/man3/sigvec.3:41
msgid "B<int siggetmask(void);>"
msgstr "B<int siggetmask(void);>"
#. type: Plain text
-#: build/C/man3/sigvec.3:47
+#: build/C/man3/sigvec.3:49
msgid "All functions shown above: _BSD_SOURCE"
msgstr "上記の全ての関数: _BSD_SOURCE"
#. type: Plain text
-#: build/C/man3/sigvec.3:54
+#: build/C/man3/sigvec.3:56
msgid ""
"These functions are provided in glibc as a compatibility interface for "
"programs that make use of the historical BSD signal API. This API is "
"obsolete: new applications should use the POSIX signal API (B<sigaction>(2), "
-"B<sigprocmask>(2), etc.)"
+"B<sigprocmask>(2), etc.)."
msgstr ""
"これらの関数は、昔ながらの BSD 版シグナル API を使用しているプログラム に対し"
-"ã\81¦äº\92æ\8f\9bæ\80§ã\81®ã\81\82ã\82\8bã\82¤ã\83³ã\82¿ã\83\95ã\82§ã\83¼ã\82¹ã\82\92 glibc ã\81§æ\8f\90ä¾\9bã\81\99ã\82\8bã\82\82ã\81®ã\81§ã\81\82ã\82\8bã\80\82 ã\81\93ã\81® API ã\81¯é\81\8eå\8e»ã\81®"
-"ã\82\82ã\81®ã\81§ã\81\82ã\82\8aã\80\81æ\96°ã\81\97ã\81\84ã\82¢ã\83\97ã\83ªã\82±ã\83¼ã\82·ã\83§ã\83³ã\81§ã\81¯ POSIX ã\82·ã\82°ã\83\8aã\83« API (B<sigaction>(2), "
-"B<sigprocmask>(2) など) を使用すべきである。"
+"ã\81¦äº\92æ\8f\9bæ\80§ã\81®ã\81\82ã\82\8bã\82¤ã\83³ã\82¿ã\83¼ã\83\95ã\82§ã\83¼ã\82¹ã\82\92 glibc ã\81§æ\8f\90ä¾\9bã\81\99ã\82\8bã\82\82ã\81®ã\81§ã\81\82ã\82\8bã\80\82 ã\81\93ã\81® API ã\81¯é\81\8eå\8e»"
+"ã\81®ã\82\82ã\81®ã\81§ã\81\82ã\82\8aã\80\81æ\96°ã\81\97ã\81\84ã\82¢ã\83\97ã\83ªã\82±ã\83¼ã\82·ã\83§ã\83³ã\81§ã\81¯ POSIX ã\82·ã\82°ã\83\8aã\83« API "
+"(B<sigaction>(2), B<sigprocmask>(2) など) を使用すべきである。"
#. type: Plain text
-#: build/C/man3/sigvec.3:79
+#: build/C/man3/sigvec.3:81
msgid ""
"The B<sigvec>() function sets and/or gets the disposition of the signal "
"I<sig> (like the POSIX B<sigaction>(2)). If I<vec> is not NULL, it points "
"I<ovec> is not NULL, it points to a I<sigvec> structure that is used to "
"return the previous disposition of I<sig>. To obtain the current "
"disposition of I<sig> without changing it, specify NULL for I<vec>, and a "
-"non-NULL pointer for I<ovec>."
+"non-null pointer for I<ovec>."
msgstr ""
"関数 B<sigvec>() は、(POSIX の B<sigaction>(2) と同様に) シグナル I<sig> の"
"動作の設定・取得を行う。 I<vec> は、NULL 以外の場合、 I<sig> の新しい動作を定"
-"義した I<sigvec> 構造体へのポインタである。 I<ovec> は、NULL 以外の場合、 "
-"I<sig> ã\81®å¤\89æ\9b´å\89\8dã\81®å\8b\95ä½\9cã\82\92è¿\94ã\81\99ã\81\9fã\82\81ã\81«ä½¿ç\94¨ã\81\95ã\82\8cã\82\8b I<sigvec> æ§\8bé\80 ä½\93ã\81¸ã\81®ã\83\9dã\82¤ã\83³ã\82¿ã\81§ã\81\82"
-"ã\82\8bã\80\82 I<sig> ã\81®å\8b\95ä½\9cã\82\92å¤\89æ\9b´ã\81\9bã\81\9aã\81«ç\8f¾å\9c¨ã\81®å\8b\95ä½\9cã\82\92å\8f\96å¾\97ã\81\99ã\82\8bã\81\9fã\82\81ã\81«ã\81¯ã\80\81 I<vec> ã\81« NULL "
-"を指定し、 I<ovec> に NULL でないポインタを指定すればよい。"
+"義ã\81\97ã\81\9f I<sigvec> æ§\8bé\80 ä½\93ã\81¸ã\81®ã\83\9dã\82¤ã\83³ã\82¿ã\83¼ã\81§ã\81\82ã\82\8bã\80\82 I<ovec> ã\81¯ã\80\81NULL 以å¤\96ã\81®å ´å\90\88ã\80\81 "
+"I<sig> ã\81®å¤\89æ\9b´å\89\8dã\81®å\8b\95ä½\9cã\82\92è¿\94ã\81\99ã\81\9fã\82\81ã\81«ä½¿ç\94¨ã\81\95ã\82\8cã\82\8b I<sigvec> æ§\8bé\80 ä½\93ã\81¸ã\81®ã\83\9dã\82¤ã\83³ã\82¿ã\83¼ã\81§"
+"ã\81\82ã\82\8bã\80\82 I<sig> ã\81®å\8b\95ä½\9cã\82\92å¤\89æ\9b´ã\81\9bã\81\9aã\81«ç\8f¾å\9c¨ã\81®å\8b\95ä½\9cã\82\92å\8f\96å¾\97ã\81\99ã\82\8bã\81\9fã\82\81ã\81«ã\81¯ã\80\81 I<vec> ã\81« "
+"NULL を指定し、 I<ovec> に NULL でないポインターを指定すればよい。"
#. type: Plain text
-#: build/C/man3/sigvec.3:89
+#: build/C/man3/sigvec.3:91
msgid "The I<sigvec> structure has the following form:"
msgstr "I<sigvec> 構造体は以下の通りである:"
#. type: Plain text
-#: build/C/man3/sigvec.3:97
+#: build/C/man3/sigvec.3:99
#, no-wrap
msgid ""
"struct sigvec {\n"
-" void (*sv_handler)(); /* Signal disposition */\n"
-" int sv_mask; /* Signals to be blocked in handler */\n"
-" int sv_flags; /* Flags */\n"
+" void (*sv_handler)(int); /* Signal disposition */\n"
+" int sv_mask; /* Signals to be blocked in handler */\n"
+" int sv_flags; /* Flags */\n"
"};\n"
msgstr ""
"struct sigvec {\n"
-" void (*sv_handler)(); /* Signal disposition */\n"
-" int sv_mask; /* Signals to be blocked in handler */\n"
-" int sv_flags; /* Flags */\n"
+" void (*sv_handler)(int); /* Signal disposition */\n"
+" int sv_mask; /* Signals to be blocked in handler */\n"
+" int sv_flags; /* Flags */\n"
"};\n"
#. type: Plain text
-#: build/C/man3/sigvec.3:108
+#: build/C/man3/sigvec.3:110
msgid ""
"The I<sv_handler> field specifies the disposition of the signal, and is "
-"either: the address of a signal handler function; or B<SIG_DFL> meaning the "
-"default disposition applies for the signal; or B<SIG_IGN> meaning that the "
+"either: the address of a signal handler function; B<SIG_DFL>, meaning the "
+"default disposition applies for the signal; or B<SIG_IGN>, meaning that the "
"signal is ignored."
msgstr ""
-"I<sv_handler> フィールドはシグナルの動作を指定するもので、 シグナルハンドラ関"
-"数のアドレスか、 B<SIG_DFL> と B<SIG_IGN> のいずれかを指定できる。 "
+"I<sv_handler> フィールドはシグナルの動作を指定するもので、 シグナルハンドラー"
+"関数のアドレスか、 B<SIG_DFL> と B<SIG_IGN> のいずれかを指定できる。 "
"B<SIG_DFL> はシグナルに適用されるデフォルトの動作を意味し、 B<SIG_IGN> はシグ"
"ナルを無視することを意味する。"
#. type: Plain text
-#: build/C/man3/sigvec.3:122
+#: build/C/man3/sigvec.3:124
msgid ""
"If I<sv_handler> specifies the address of a signal handler, then I<sv_mask> "
"specifies a mask of signals that are to be blocked while the handler is "
"executing. In addition, the signal for which the handler is invoked is also "
-"blocked by default. Attempts to block B<SIGKILL> or B<SIGSTOP> are silently "
-"ignored."
+"blocked. Attempts to block B<SIGKILL> or B<SIGSTOP> are silently ignored."
msgstr ""
-"I<sv_handler> ã\81«ã\82·ã\82°ã\83\8aã\83«ã\83\8fã\83³ã\83\89ã\83©ã\81®ã\82¢ã\83\89ã\83¬ã\82¹ã\82\92æ\8c\87å®\9aã\81\97ã\81\9få ´å\90\88ã\80\81 I<sv_mask> ã\81¯ã\83\8fã\83³"
-"ã\83\89ã\83©ã\81\8cå®\9fè¡\8cä¸ã\81«ã\83\96ã\83ã\83\83ã\82¯ã\81\95ã\82\8cã\82\8bã\81¹ã\81\8dã\82·ã\82°ã\83\8aã\83«ã\81®ã\83\9eã\82¹ã\82¯ã\82\92æ\8c\87å®\9aã\81\99ã\82\8bã\80\82 ã\81¾ã\81\9fã\80\81ã\83\8fã\83³ã\83\89ã\83©ã\82\92"
-"起動したシグナル自身はデフォルトでブロックされる。 B<SIGKILL> か B<SIGSTOP> "
-"ã\82\92ã\83\96ã\83ã\83\83ã\82¯ã\81\97ã\82\88ã\81\86ã\81¨ã\81\97ã\81\9få ´å\90\88ã\81«ã\81¯ã\80\81é»\99ã\81£ã\81¦ç\84¡è¦\96ã\81\95ã\82\8cã\82\8bã\80\82"
+"I<sv_handler> ã\81«ã\82·ã\82°ã\83\8aã\83«ã\83\8fã\83³ã\83\89ã\83©ã\83¼ã\81®ã\82¢ã\83\89ã\83¬ã\82¹ã\82\92æ\8c\87å®\9aã\81\97ã\81\9få ´å\90\88ã\80\81 I<sv_mask> ã\81¯ã\83\8f"
+"ã\83³ã\83\89ã\83©ã\83¼ã\81\8cå®\9fè¡\8cä¸ã\81«ã\83\96ã\83ã\83\83ã\82¯ã\81\95ã\82\8cã\82\8bã\81¹ã\81\8dã\82·ã\82°ã\83\8aã\83«ã\81®ã\83\9eã\82¹ã\82¯ã\82\92æ\8c\87å®\9aã\81\99ã\82\8bã\80\82 ã\81¾ã\81\9fã\80\81ã\83\8fã\83³ã\83\89"
+"ラーを起動したシグナル自身はブロックされる。 B<SIGKILL> か B<SIGSTOP> をブ"
+"ロックしようとした場合には、黙って無視される。"
#. type: Plain text
-#: build/C/man3/sigvec.3:129
+#: build/C/man3/sigvec.3:131
msgid ""
"If I<sv_handler> specifies the address of a signal handler, then the "
"I<sv_flags> field specifies flags controlling what happens when the handler "
"is called. This field may contain zero or more of the following flags:"
msgstr ""
-"I<sv_handler> ã\81«ã\82·ã\82°ã\83\8aã\83«ã\83\8fã\83³ã\83\89ã\83©ã\81®ã\82¢ã\83\89ã\83¬ã\82¹ã\82\92æ\8c\87å®\9aã\81\97ã\81\9få ´å\90\88ã\80\81 I<sv_flags> ã\83\95ã\82£ã\83¼"
-"ã\83«ã\83\89ã\81¯ã\83\8fã\83³ã\83\89ã\83©ã\81\8cå\91¼ã\81°ã\82\8cã\81\9fé\9a\9bã\81®æ\8c\99å\8b\95ã\82\92å\88¶å¾¡ã\81\99ã\82\8bã\83\95ã\83©ã\82°ã\82\92æ\8c\87å®\9aã\81\99ã\82\8bã\80\82 ã\81\93ã\81®ã\83\95ã\82£ã\83¼ã\83«ã\83\89ã\81«"
-"は、0 か、以下のフラグを 1個以上指定できる:"
+"I<sv_handler> ã\81«ã\82·ã\82°ã\83\8aã\83«ã\83\8fã\83³ã\83\89ã\83©ã\83¼ã\81®ã\82¢ã\83\89ã\83¬ã\82¹ã\82\92æ\8c\87å®\9aã\81\97ã\81\9få ´å\90\88ã\80\81 I<sv_flags> "
+"ã\83\95ã\82£ã\83¼ã\83«ã\83\89ã\81¯ã\83\8fã\83³ã\83\89ã\83©ã\83¼ã\81\8cå\91¼ã\81°ã\82\8cã\81\9fé\9a\9bã\81®æ\8c\99å\8b\95ã\82\92å\88¶å¾¡ã\81\99ã\82\8bã\83\95ã\83©ã\82°ã\82\92æ\8c\87å®\9aã\81\99ã\82\8bã\80\82 ã\81\93ã\81®"
+"ã\83\95ã\82£ã\83¼ã\83«ã\83\89ã\81«ã\81¯ã\80\810 ã\81\8bã\80\81以ä¸\8bã\81®ã\83\95ã\83©ã\82°ã\82\92 1å\80\8b以ä¸\8aæ\8c\87å®\9aã\81§ã\81\8dã\82\8b:"
#. type: TP
-#: build/C/man3/sigvec.3:129
+#: build/C/man3/sigvec.3:131
#, no-wrap
msgid "B<SV_INTERRUPT>"
msgstr "B<SV_INTERRUPT>"
#. type: Plain text
-#: build/C/man3/sigvec.3:137
+#: build/C/man3/sigvec.3:139
msgid ""
"If the signal handler interrupts a blocking system call, then upon return "
"from the handler the system call will not be restarted: instead it will fail "
"with the error B<EINTR>. If this flag is not specified, then system calls "
"are restarted by default."
msgstr ""
-"ã\82·ã\82°ã\83\8aã\83«ã\83\8fã\83³ã\83\89ã\83©ã\81\8cå\81\9cæ¢ä¸ã\81®ã\82·ã\82¹ã\83\86ã\83 ã\82³ã\83¼ã\83«ã\82\92ä¸æ\96ã\81\97ã\81\9få ´å\90\88ã\80\81 ã\83\8fã\83³ã\83\89ã\83©ã\81\8bã\82\89復帰ã\81\97ã\81¦"
-"ã\82\82ã\80\81ã\82·ã\82¹ã\83\86ã\83 ã\82³ã\83¼ã\83«ã\81¯å\86\8dé\96\8bã\81\95ã\82\8cã\81\9aã\80\81 ã\82¨ã\83©ã\83¼ B<EINTR> ã\81§å¤±æ\95\97ã\81\99ã\82\8bã\80\82 ã\81\93ã\81®ã\83\95ã\83©ã\82°ã\82\92æ\8c\87"
-"定しなかった場合、システムコールは デフォルトで再開される。"
+"ã\82·ã\82°ã\83\8aã\83«ã\83\8fã\83³ã\83\89ã\83©ã\83¼ã\81\8cå\81\9cæ¢ä¸ã\81®ã\82·ã\82¹ã\83\86ã\83 ã\82³ã\83¼ã\83«ã\82\92ä¸æ\96ã\81\97ã\81\9få ´å\90\88ã\80\81 ã\83\8fã\83³ã\83\89ã\83©ã\83¼ã\81\8bã\82\89復帰"
+"ã\81\97ã\81¦ã\82\82ã\80\81ã\82·ã\82¹ã\83\86ã\83 ã\82³ã\83¼ã\83«ã\81¯å\86\8dé\96\8bã\81\95ã\82\8cã\81\9aã\80\81 ã\82¨ã\83©ã\83¼ B<EINTR> ã\81§å¤±æ\95\97ã\81\99ã\82\8bã\80\82 ã\81\93ã\81®ã\83\95ã\83©ã\82°"
+"を指定しなかった場合、システムコールは デフォルトで再開される。"
#. type: TP
-#: build/C/man3/sigvec.3:137
+#: build/C/man3/sigvec.3:139
#, no-wrap
msgid "B<SV_RESETHAND>"
msgstr "B<SV_RESETHAND>"
#. type: Plain text
-#: build/C/man3/sigvec.3:146
+#: build/C/man3/sigvec.3:148
msgid ""
"Reset the disposition of the signal to the default before calling the signal "
"handler. If this flag is not specified, then the handler remains "
"established until explicitly removed by a later call to B<sigvec>() or "
"until the process performs an B<execve>(2)."
msgstr ""
-"ã\82·ã\82°ã\83\8aã\83«ã\83\8fã\83³ã\83\89ã\83©ã\82\92å\91¼ã\81³å\87ºã\81\99å\89\8dã\81«ã\82·ã\82°ã\83\8aã\83«ã\81®å\8b\95ä½\9cã\82\92 ã\83\87ã\83\95ã\82©ã\83«ã\83\88ã\81«ã\83ªã\82»ã\83\83ã\83\88ã\81\99ã\82\8bã\80\82 ã\81\93"
-"ã\81®ã\83\95ã\83©ã\82°ã\82\92æ\8c\87å®\9aã\81\97ã\81ªã\81\8bã\81£ã\81\9få ´å\90\88ã\80\81ã\82\82ã\81\86ä¸\80度 B<sigvec>() ã\82\92å\91¼ã\81³å\87ºã\81\97ã\81¦æ\98\8e示ç\9a\84ã\81«å\89\8aé\99¤"
-"されるか、プロセスが B<execve>(2) を実行するまで、ハンドラは設定されたままと"
-"なる。"
+"ã\82·ã\82°ã\83\8aã\83«ã\83\8fã\83³ã\83\89ã\83©ã\83¼ã\82\92å\91¼ã\81³å\87ºã\81\99å\89\8dã\81«ã\82·ã\82°ã\83\8aã\83«ã\81®å\8b\95ä½\9cã\82\92 ã\83\87ã\83\95ã\82©ã\83«ã\83\88ã\81«ã\83ªã\82»ã\83\83ã\83\88ã\81\99ã\82\8bã\80\82 "
+"ã\81\93ã\81®ã\83\95ã\83©ã\82°ã\82\92æ\8c\87å®\9aã\81\97ã\81ªã\81\8bã\81£ã\81\9få ´å\90\88ã\80\81ã\82\82ã\81\86ä¸\80度 B<sigvec>() ã\82\92å\91¼ã\81³å\87ºã\81\97ã\81¦æ\98\8e示ç\9a\84ã\81«å\89\8a"
+"除されるか、プロセスが B<execve>(2) を実行するまで、ハンドラーは設定されたま"
+"ã\81¾ã\81¨ã\81ªã\82\8bã\80\82"
#. type: TP
-#: build/C/man3/sigvec.3:146
+#: build/C/man3/sigvec.3:148
#, no-wrap
msgid "B<SV_ONSTACK>"
msgstr "B<SV_ONSTACK>"
#. type: Plain text
-#: build/C/man3/sigvec.3:153
+#: build/C/man3/sigvec.3:155
msgid ""
"Handle the signal on the alternate signal stack (historically established "
"under BSD using the obsolete B<sigstack>() function; the POSIX replacement "
"is B<sigaltstack>(2))."
msgstr ""
-"代æ\9b¿ã\82·ã\82°ã\83\8aã\83«ã\82¹ã\82¿ã\83\83ã\82¯ä¸\8aã\81§ã\82·ã\82°ã\83\8aã\83«ã\83\8fã\83³ã\83\89ã\83©ã\82\92å®\9fè¡\8cã\81\99ã\82\8b (æ´å\8f²ç\9a\84ã\81«ã\80\81BSD ã\81§ã\81¯ä»£æ\9b¿ã\82·"
-"ã\82°ã\83\8aã\83«ã\82¹ã\82¿ã\83\83ã\82¯ã\81¯å»\83æ¢ã\81\95ã\82\8cã\81\9fé\96¢æ\95° B<sigstack>() ã\82\92使ã\81£ã\81¦è¨å®\9aã\81\99ã\82\8bã\80\82POSIX ã\81§ã\81¯ã\80\81"
-"代わりに B<sigaltstack>(2) を使用する)。"
+"代æ\9b¿ã\82·ã\82°ã\83\8aã\83«ã\82¹ã\82¿ã\83\83ã\82¯ä¸\8aã\81§ã\82·ã\82°ã\83\8aã\83«ã\83\8fã\83³ã\83\89ã\83©ã\83¼ã\82\92å®\9fè¡\8cã\81\99ã\82\8b (æ´å\8f²ç\9a\84ã\81«ã\80\81BSD ã\81§ã\81¯ä»£æ\9b¿"
+"ã\82·ã\82°ã\83\8aã\83«ã\82¹ã\82¿ã\83\83ã\82¯ã\81¯å»\83æ¢ã\81\95ã\82\8cã\81\9fé\96¢æ\95° B<sigstack>() ã\82\92使ã\81£ã\81¦è¨å®\9aã\81\99ã\82\8bã\80\82POSIX ã\81§"
+"は、代わりに B<sigaltstack>(2) を使用する)。"
#. type: Plain text
-#: build/C/man3/sigvec.3:163
+#: build/C/man3/sigvec.3:165
msgid ""
-"The B<sigmask>() function constructs and returns a \"signal mask\" for "
+"The B<sigmask>() macro constructs and returns a \"signal mask\" for "
"I<signum>. For example, we can initialize the I<vec.sv_mask> field given to "
"B<sigvec>() using code such as the following:"
msgstr ""
-"関数 B<sigmask>() は I<signum> に対する「シグナルマスク」を構成して返す。 例"
-"えば、以下のようなコードを使うと、 B<sigvec>() に渡す I<vec.sv_mask> を初期"
-"化できる。"
+"マクロ B<sigmask>() は I<signum> に対する「シグナルマスク」を構成して返す。 "
+"例えば、以下のようなコードを使うと、 B<sigvec>() に渡す I<vec.sv_mask> を初"
+"期化できる。"
#. type: Plain text
-#: build/C/man3/sigvec.3:168
+#: build/C/man3/sigvec.3:170
#, no-wrap
msgid ""
-" vec.sv_mask = sigmask(SIGQUIT) | sigpause(SIGABRT);\n"
+" vec.sv_mask = sigmask(SIGQUIT) | sigmask(SIGABRT);\n"
" /* Block SIGQUIT and SIGABRT during\n"
" handler execution */\n"
msgstr ""
-" vec.sv_mask = sigmask(SIGQUIT) | sigpause(SIGABRT);\n"
+" vec.sv_mask = sigmask(SIGQUIT) | sigmask(SIGABRT);\n"
" /* Block SIGQUIT and SIGABRT during\n"
" handler execution */\n"
#. type: Plain text
-#: build/C/man3/sigvec.3:183
+#: build/C/man3/sigvec.3:185
msgid ""
"The B<sigblock>() function adds the signals in I<mask> to the process's "
"signal mask (like POSIX I<sigprocmask(SIG_BLOCK)>), and returns the "
"て無視される。"
#. type: Plain text
-#: build/C/man3/sigvec.3:191
+#: build/C/man3/sigvec.3:193
msgid ""
"The B<sigsetmask>() function sets the process's signal mask to the value "
"given in I<mask> (like POSIX I<sigprocmask(SIG_SETMASK)>), and returns the "
"ルマスクを返す。"
#. type: Plain text
-#: build/C/man3/sigvec.3:197
+#: build/C/man3/sigvec.3:199
msgid ""
"The B<siggetmask>() function returns the process's current signal mask. "
"This call is equivalent to I<sigblock(0)>."
"I<sigblock(0)> と等価である。"
#. type: Plain text
-#: build/C/man3/sigvec.3:203
+#: build/C/man3/sigvec.3:205
msgid ""
"The B<sigvec>() function returns 0 on success; on error, it returns -1 and "
"sets I<errno> to indicate the error."
"エラーを示す値をセットする。"
#. type: Plain text
-#: build/C/man3/sigvec.3:209
+#: build/C/man3/sigvec.3:211
msgid ""
"The B<sigblock>() and B<sigsetmask>() functions return the previous signal "
"mask."
msgstr "B<sigblock>() と B<sigsetmask>() は変更前のシグナルマスクを返す。"
#. type: Plain text
-#: build/C/man3/sigvec.3:214
-msgid "The B<sigmask>() function returns the signal mask for I<signum>."
-msgstr "B<sigmask>() 関数は I<signum> のシグナルマスクを返す。"
+#: build/C/man3/sigvec.3:216
+msgid "The B<sigmask>() macro returns the signal mask for I<signum>."
+msgstr "B<sigmask>() マクロは I<signum> のシグナルマスクを返す。"
#. type: Plain text
-#: build/C/man3/sigvec.3:219
+#: build/C/man3/sigvec.3:221
msgid "See the ERRORS under B<sigaction>(2) and B<sigprocmask>(2)."
msgstr "B<sigaction>(2) と B<sigprocmask>(2) の「エラー」の節を参照。"
#. type: Plain text
-#: build/C/man3/sigvec.3:225
+#: build/C/man3/sigvec.3:230
+msgid ""
+"The B<sigvec>(), B<sigblock>(), B<sigsetmask>(), and B<siggetmask>() "
+"functions are thread-safe."
+msgstr ""
+"関数 B<sigvec>(), B<sigblock>(), B<sigsetmask>(), B<siggetmask>() はスレッド"
+"セーフである。"
+
+#. type: Plain text
+#: build/C/man3/sigvec.3:234
+msgid "The B<sigmask>() macro is thread-safe."
+msgstr "B<sigmask>() マクロはスレッドセーフである。"
+
+#. type: Plain text
+#: build/C/man3/sigvec.3:241
+msgid ""
+"Starting with version 2.21, the GNU C library no longer exports the "
+"B<sigvec>() function as part of the ABI. (To ensure backward "
+"compatibility, the glibc symbol versioning scheme continues to export the "
+"interface to binaries linked against older versions of the library.)"
+msgstr ""
+"バージョン 2.21 以降では、 GNU C ライブラリはもはや B<sigvec>() 関数を ABI の"
+"一部として公開しなくなった。 (後方互換性を保証するために、glibc のシンボルの"
+"バージョン付け機構により、 古いバージョンのライブラリとリンクされたバイナリに"
+"対してはこのインターフェースが引き続き公開されている。)"
+
+#. type: Plain text
+#: build/C/man3/sigvec.3:247
msgid ""
"All of these functions were in 4.3BSD, except B<siggetmask>(), whose origin "
"is unclear. These functions are obsolete: do not use them in new programs."
"いプログラムでは使用しないこと。"
#. type: Plain text
-#: build/C/man3/sigvec.3:242
+#: build/C/man3/sigvec.3:264
msgid ""
"On 4.3BSD, the B<signal>() function provided reliable semantics (as when "
-"calling B<sigvec>() with I<vec.sv_mask> equal to 0). On System V, B<signal>"
-"() provides unreliable semantics. POSIX.1-2001 leaves these aspects of "
-"B<signal>() unspecified. See B<signal>(2) for further details."
+"calling B<sigvec>() with I<vec.sv_mask> equal to 0). On System V, "
+"B<signal>() provides unreliable semantics. POSIX.1-2001 leaves these "
+"aspects of B<signal>() unspecified. See B<signal>(2) for further details."
msgstr ""
"4.3BSD では、信頼性のあるシグナル処理機構を提供する (I<vec.sv_mask> を 0 で "
"B<sigvec>() を呼び出したときと同様)。 System V が提供する処理機構は信頼性の"
"なっている。 さらなる詳細については B<signal>(2) を参照。"
#. type: Plain text
-#: build/C/man3/sigvec.3:260
+#: build/C/man3/sigvec.3:282
msgid ""
"B<kill>(2), B<pause>(2), B<sigaction>(2), B<signal>(2), B<sigprocmask>(2), "
"B<raise>(3), B<sigpause>(3), B<sigset>(3), B<signal>(7)"
"B<raise>(3), B<sigpause>(3), B<sigset>(3), B<signal>(7)"
#. type: TH
-#: build/C/man3/sigwait.3:24
+#: build/C/man3/sigwait.3:26
#, no-wrap
msgid "SIGWAIT"
msgstr "SIGWAIT"
-#. type: TH
-#: build/C/man3/sigwait.3:24
-#, no-wrap
-msgid "2010-09-10"
-msgstr "2010-09-10"
-
#. type: Plain text
-#: build/C/man3/sigwait.3:27
+#: build/C/man3/sigwait.3:29
msgid "sigwait - wait for a signal"
msgstr "sigwait - シグナルを待つ"
#. type: Plain text
-#: build/C/man3/sigwait.3:32
+#: build/C/man3/sigwait.3:34
#, no-wrap
msgid "B< int sigwait(const sigset_t *>I<set>B<, int *>I<sig>B<);>\n"
msgstr "B< int sigwait(const sigset_t *>I<set>B<, int *>I<sig>B<);>\n"
#. type: Plain text
-#: build/C/man3/sigwait.3:42
+#: build/C/man3/sigwait.3:44
msgid ""
"B<sigwait>(): _POSIX_C_SOURCE\\ E<gt>=\\ 1 || _XOPEN_SOURCE || _POSIX_SOURCE"
msgstr ""
"B<sigwait>(): _POSIX_C_SOURCE\\ E<gt>=\\ 1 || _XOPEN_SOURCE || _POSIX_SOURCE"
#. type: Plain text
-#: build/C/man3/sigwait.3:53
+#: build/C/man3/sigwait.3:56
msgid ""
"The B<sigwait>() function suspends execution of the calling thread until "
-"the delivery of one of the signals specified in the signal set I<set>. The "
+"one of the signals specified in the signal set I<set> becomes pending. The "
"function accepts the signal (removes it from the pending list of signals), "
"and returns the signal number in I<sig>."
msgstr ""
-"B<sigwait>() 関数は、シグナル集合 I<set> で指定されたシグナルの一つが配送さ"
-"ã\82\8cã\82\8bã\81¾ã\81§ã\80\81 å\91¼ã\81³å\87ºã\81\97ã\81\9fã\82¹ã\83¬ã\83\83ã\83\89ã\81®å®\9fè¡\8cã\82\92ä¸æ\96ã\81\99ã\82\8bã\80\82 ã\81\93ã\81®é\96¢æ\95°ã\81¯ã\81\9dã\81®ã\82·ã\82°ã\83\8aã\83«ã\82\92å\8f\97ã\81\91"
-"取り (つまり、処理待ちのシグナルのリスト からそのシグナルを削除し)、そのシグ"
-"ナル番号を I<sig> に格納して返す。"
+"B<sigwait>() 関数は、シグナル集合 I<set> で指定されたシグナルの一つが処理待"
+"ã\81¡ (pending) ã\81«ã\81ªã\82\8bã\81¾ã\81§ã\80\81 å\91¼ã\81³å\87ºã\81\97ã\81\9fã\82¹ã\83¬ã\83\83ã\83\89ã\81®å®\9fè¡\8cã\82\92ä¸æ\96ã\81\99ã\82\8bã\80\82 ã\81\93ã\81®é\96¢æ\95°ã\81¯ã\81\9dã\81®"
+"シグナルを受け取り (つまり、処理待ちのシグナルのリスト からそのシグナルを削除"
+"ã\81\97)ã\80\81ã\81\9dã\81®ã\82·ã\82°ã\83\8aã\83«ç\95ªå\8f·ã\82\92 I<sig> ã\81«æ ¼ç´\8dã\81\97ã\81¦è¿\94ã\81\99ã\80\82"
#. type: Plain text
-#: build/C/man3/sigwait.3:59
+#: build/C/man3/sigwait.3:62
msgid ""
"The operation of B<sigwait>() is the same as B<sigwaitinfo>(2), except that:"
msgstr ""
"B<sigwait>() の動作は B<sigwaitinfo>(2) と同じだが、以下の点が異なる。"
#. type: Plain text
-#: build/C/man3/sigwait.3:64
+#: build/C/man3/sigwait.3:67
msgid ""
-"B<sigwait>() only returns the signal number, rather than a I<siginfo_t> "
+"B<sigwait>() returns only the signal number, rather than a I<siginfo_t> "
"structure describing the signal."
msgstr ""
"B<sigwait>() は、シグナルの内容を表す I<siginfo_t> 構造体を返すのではなく、"
"単にシグナル番号を返す。"
#. type: Plain text
-#: build/C/man3/sigwait.3:66
+#: build/C/man3/sigwait.3:69
msgid "The return values of the two functions are different."
msgstr "返り値が B<sigwaitinfo>(2) とは異なる。"
#. type: Plain text
-#: build/C/man3/sigwait.3:71
+#: build/C/man3/sigwait.3:74
msgid ""
"On success, B<sigwait>() returns 0. On error, it returns a positive error "
"number (listed in ERRORS)."
#. Does not occur for glibc.
#. type: Plain text
-#: build/C/man3/sigwait.3:77
+#: build/C/man3/sigwait.3:80
msgid "I<set> contains an invalid signal number."
msgstr "I<set> に無効なシグナル番号が入っている。"
#. type: Plain text
-#: build/C/man3/sigwait.3:83
+#: build/C/man3/sigwait.3:85
+msgid "The B<sigwait>() function is thread-safe."
+msgstr "B<sigwait>() 関数はスレッドセーフである。"
+
+#. type: Plain text
+#: build/C/man3/sigwait.3:91
msgid "B<sigwait>() is implemented using B<sigtimedwait>(2)."
msgstr "B<sigwait>() は B<sigtimedwait>(2) を使って実装されている。"
-#. type: SH
-#: build/C/man3/sigwait.3:83
-#, no-wrap
-msgid "EXAMPLES"
-msgstr "例"
-
#. type: Plain text
-#: build/C/man3/sigwait.3:86
+#: build/C/man3/sigwait.3:94
msgid "See B<pthread_sigmask>(3)."
msgstr "B<pthread_sigmask>(3) を参照。"
#. type: Plain text
-#: build/C/man3/sigwait.3:94
+#: build/C/man3/sigwait.3:102
msgid ""
"B<sigaction>(2), B<signalfd>(2), B<sigpending>(2), B<sigsuspend>(2), "
"B<sigwaitinfo>(2), B<sigsetops>(3), B<signal>(7)"
"B<sigwaitinfo>(2), B<sigsetops>(3), B<signal>(7)"
#. type: TH
-#: build/C/man2/sigwaitinfo.2:23
+#: build/C/man2/sigwaitinfo.2:25
#, no-wrap
msgid "SIGWAITINFO"
msgstr "SIGWAITINFO"
-#. type: TH
-#: build/C/man2/sigwaitinfo.2:23
-#, no-wrap
-msgid "2011-10-03"
-msgstr "2011-10-03"
-
#. type: Plain text
-#: build/C/man2/sigwaitinfo.2:26
+#: build/C/man2/sigwaitinfo.2:28
msgid "sigwaitinfo, sigtimedwait - synchronously wait for queued signals"
msgstr "sigwaitinfo, sigtimedwait - キューに入れられたシグナルを同期して待つ"
#. type: Plain text
-#: build/C/man2/sigwaitinfo.2:31
+#: build/C/man2/sigwaitinfo.2:33
#, no-wrap
msgid "B<int sigwaitinfo(const sigset_t *>I<set>B<, siginfo_t *>I<info>B<);>\n"
msgstr "B<int sigwaitinfo(const sigset_t *>I<set>B<, siginfo_t *>I<info>B<);>\n"
#. type: Plain text
-#: build/C/man2/sigwaitinfo.2:34
+#: build/C/man2/sigwaitinfo.2:36
#, no-wrap
msgid ""
"B<int sigtimedwait(const sigset_t *>I<set>B<, siginfo_t *>I<info>B<, >\n"
"B< const struct timespec *>I<timeout>B<);>\n"
#. type: Plain text
-#: build/C/man2/sigwaitinfo.2:44
+#: build/C/man2/sigwaitinfo.2:46
msgid "B<sigwaitinfo>(), B<sigtimedwait>(): _POSIX_C_SOURCE\\ E<gt>=\\ 199309L"
msgstr ""
"B<sigwaitinfo>(), B<sigtimedwait>(): _POSIX_C_SOURCE\\ E<gt>=\\ 199309L"
#. type: Plain text
-#: build/C/man2/sigwaitinfo.2:54
+#: build/C/man2/sigwaitinfo.2:56
msgid ""
"B<sigwaitinfo>() suspends execution of the calling thread until one of the "
-"signals in I<set> is delivered. (If one of the signals in I<set> is already "
-"pending for the calling thread, B<sigwaitinfo>() will return immediately "
-"with information about that signal.)"
+"signals in I<set> is pending (If one of the signals in I<set> is already "
+"pending for the calling thread, B<sigwaitinfo>() will return immediately.)"
msgstr ""
-"B<sigwaitinfo>() は I<set> のうちのどれかのシグナルが配送されるまで、 呼び出"
-"ã\81\97ã\82¹ã\83¬ã\83\83ã\83\89ã\81®å®\9fè¡\8cã\82\92ä¸\80æ\99\82å\81\9cæ¢ã\81\99ã\82\8b (å\91¼ã\81³å\87ºã\81\97ã\82¹ã\83¬ã\83\83ã\83\89ã\81«å¯¾ã\81\97ã\81¦ I<set> ã\81®ã\81\86ã\81¡ã\81®ã\81©ã\82\8c"
-"ã\81\8bã\81®ã\82·ã\82°ã\83\8aã\83«ã\81\8cæ\97¢ã\81«å¾\85æ©\9fä¸ (pending) ã\81§ã\81\82ã\82\8bå ´å\90\88ã\80\81 B<sigwaitinfo>() ã\81¯ã\81\9dã\81®ã\82·ã\82°"
-"ã\83\8aã\83«ã\81®æ\83\85å ±ã\82\92è¿\94ã\81\97ã\81¦ã\81\99ã\81\90ã\81«æ\88»ã\82\8b)ã\80\82"
+"B<sigwaitinfo>() は I<set> のうちのどれかのシグナルが処理待ちになるまで、 呼"
+"ã\81³å\87ºã\81\97ã\82¹ã\83¬ã\83\83ã\83\89ã\81®å®\9fè¡\8cã\82\92ä¸\80æ\99\82å\81\9cæ¢ã\81\99ã\82\8b (å\91¼ã\81³å\87ºã\81\97ã\82¹ã\83¬ã\83\83ã\83\89ã\81«å¯¾ã\81\97ã\81¦ I<set> ã\81®ã\81\86ã\81¡ã\81®"
+"ã\81©ã\82\8cã\81\8bã\81®ã\82·ã\82°ã\83\8aã\83«ã\81\8cæ\97¢ã\81«å¾\85æ©\9fä¸ (pending) ã\81§ã\81\82ã\82\8bå ´å\90\88ã\80\81 B<sigwaitinfo>() ã\81¯ã\81\99ã\81\90"
+"に戻る)。"
#. type: Plain text
-#: build/C/man2/sigwaitinfo.2:66
+#: build/C/man2/sigwaitinfo.2:68
msgid ""
-"B<sigwaitinfo>() removes the delivered signal from the set of pending "
-"signals and returns the signal number as its function result. If the "
-"I<info> argument is not NULL, then it returns a structure of type "
-"I<siginfo_t> (see B<sigaction>(2)) containing information about the signal."
+"B<sigwaitinfo>() removes the signal from the set of pending signals and "
+"returns the signal number as its function result. If the I<info> argument "
+"is not NULL, then the buffer that it points to is used to return a structure "
+"of type I<siginfo_t> (see B<sigaction>(2)) containing information about the "
+"signal."
msgstr ""
-"B<sigwaitinfo>() は配送されたシグナルを待機中のシグナルの集合から削除し、 関"
-"æ\95°ã\81®çµ\90æ\9e\9cã\81¨ã\81\97ã\81¦ã\82·ã\82°ã\83\8aã\83«ç\95ªå\8f·ã\82\92è¿\94ã\81\99ã\80\82 I<info> å¼\95ã\81\8dæ\95°ã\81\8c NULL ã\81§ã\81ªã\81\84å ´å\90\88ã\80\81é\85\8dé\80\81ã\81\95ã\82\8c"
-"ã\81\9fã\82·ã\82°ã\83\8aã\83«ã\81®æ\83\85å ±ã\81\8cå\85¥ã\81£ã\81\9f I<siginfo_t> å\9e\8b (B<sigaction>(2) ã\82\92å\8f\82ç\85§) ã\81®æ§\8bé\80 ä½\93ã\82\92"
-"返す。"
+"B<sigwaitinfo>() はそのシグナルを待機中のシグナルの集合から削除し、関数の結"
+"æ\9e\9cã\81¨ã\81\97ã\81¦ã\82·ã\82°ã\83\8aã\83«ç\95ªå\8f·ã\82\92è¿\94ã\81\99ã\80\82 I<info> å¼\95ã\81\8dæ\95°ã\81\8c NULL ã\81§ã\81ªã\81\84å ´å\90\88ã\80\81é\85\8dé\80\81ã\81\95ã\82\8cã\81\9fã\82·ã\82°"
+"ã\83\8aã\83«ã\81®æ\83\85å ±ã\81\8cå\85¥ã\81£ã\81\9f I<siginfo_t> å\9e\8b (B<sigaction>(2) ã\82\92å\8f\82ç\85§) ã\81®æ§\8bé\80 ä½\93ã\82\92 "
+"I<info> が指すバッファーに入れて返す。"
#. type: Plain text
-#: build/C/man2/sigwaitinfo.2:72
+#: build/C/man2/sigwaitinfo.2:76
msgid ""
-"Signals returned via B<sigwaitinfo>() are delivered in the usual order; see "
-"B<signal>(7) for further details."
+"If multiple signals in I<set> are pending for the caller, the signal that is "
+"retrieved by B<sigwaitinfo>() is determined according to the usual ordering "
+"rules; see B<signal>(7) for further details."
msgstr ""
-"B<sigwaitinfo>() で返されるシグナルは、通常の順番で配送される。 詳細は "
-"B<signal>(7) を参照すること。"
+"呼び出し元に対して I<set> の複数のシグナルが処理待ちの場合、 "
+"B<sigwaitinfo>() で取得するシグナルは通常の順序決定ルールに基づいて決定され"
+"る。 詳細は B<signal>(7) を参照のこと。"
#. type: Plain text
-#: build/C/man2/sigwaitinfo.2:81
+#: build/C/man2/sigwaitinfo.2:88
msgid ""
"B<sigtimedwait>() operates in exactly the same way as B<sigwaitinfo>() "
-"except that it has an additional argument, I<timeout>, which enables an "
-"upper bound to be placed on the time for which the thread is suspended. "
+"except that it has an additional argument, I<timeout>, which specifies the "
+"interval for which the thread is suspended waiting for a signal. (This "
+"interval will be rounded up to the system clock granularity, and kernel "
+"scheduling delays mean that the interval may overrun by a small amount.) "
"This argument is of the following type:"
msgstr ""
-"B<sigtimedwait>() は、 B<sigwaitinfo>() と次の点を除いて全く同じように動作"
-"する。 この関数にはもう 1 つの引き数 I<timeout> があり、スレッドが一時停止す"
-"る時間の上限を定めることができる。 この引き数の型は以下のとおりである:"
+"B<sigtimedwait>() は、 B<sigwaitinfo>() と次の点を除いて全く同じように動作す"
+"る。この関数にはもう 1 つの引き数 I<timeout> があり、シグナル待ちでスレッドが"
+"一時停止する時間を指定することができる(この時間はシステムクロックの粒度に切り"
+"上げられ、カーネルのスケジューリング遅延により少しだけ長くなる可能性がある)。"
+"この引き数の型は以下のとおりである:"
#. type: Plain text
-#: build/C/man2/sigwaitinfo.2:88
+#: build/C/man2/sigwaitinfo.2:95
#, no-wrap
msgid ""
"struct timespec {\n"
"}\n"
#. type: Plain text
-#: build/C/man2/sigwaitinfo.2:98
+#: build/C/man2/sigwaitinfo.2:105
msgid ""
"If both fields of this structure are specified as 0, a poll is performed: "
"B<sigtimedwait>() returns immediately, either with information about a "
"して戻る。"
#. type: Plain text
-#: build/C/man2/sigwaitinfo.2:107
+#: build/C/man2/sigwaitinfo.2:114
msgid ""
"On success, both B<sigwaitinfo>() and B<sigtimedwait>() return a signal "
"number (i.e., a value greater than zero). On failure both calls return -1, "
"はエラーを表す値に設定される。"
#. type: Plain text
-#: build/C/man2/sigwaitinfo.2:116
+#: build/C/man2/sigwaitinfo.2:123
msgid ""
-"No signal in I<set> was delivered within the I<timeout> period specified to "
-"B<sigtimedwait>()."
+"No signal in I<set> was became pending within the I<timeout> period "
+"specified to B<sigtimedwait>()."
msgstr ""
"I<set> のうちのどのシグナルも B<sigtimedwait>() に指定された I<timeout> の期"
-"間内に配送されなかった。"
+"間内に処理待ちにならなかった。"
#. type: Plain text
-#: build/C/man2/sigwaitinfo.2:122
+#: build/C/man2/sigwaitinfo.2:129
msgid ""
"The wait was interrupted by a signal handler; see B<signal>(7). (This "
"handler was for a signal other than one of those in I<set>.)"
msgstr ""
-"ã\82·ã\82°ã\83\8aã\83«å¾\85ã\81¡ã\81\8cã\82·ã\82°ã\83\8aã\83«ã\83\8fã\83³ã\83\89ã\83©ã\81«ã\82\88ã\81£ã\81¦ä¸æ\96 (interrupt) ã\81\95ã\82\8cã\81\9f (ã\81\93ã\81®ã\83\8fã\83³ã\83\89ã\83©"
-"は I<set> にあるシグナル以外のものである)。 B<signal>(7) 参照。"
+"ã\82·ã\82°ã\83\8aã\83«å¾\85ã\81¡ã\81\8cã\82·ã\82°ã\83\8aã\83«ã\83\8fã\83³ã\83\89ã\83©ã\83¼ã\81«ã\82\88ã\81£ã\81¦ä¸æ\96 (interrupt) ã\81\95ã\82\8cã\81\9f (ã\81\93ã\81®ã\83\8fã\83³ã\83\89"
+"ã\83©ã\83¼ã\81¯ I<set> ã\81«ã\81\82ã\82\8bã\82·ã\82°ã\83\8aã\83«ä»¥å¤\96ã\81®ã\82\82ã\81®ã\81§ã\81\82ã\82\8b)ã\80\82 B<signal>(7) å\8f\82ç\85§ã\80\82"
#. type: Plain text
-#: build/C/man2/sigwaitinfo.2:126
+#: build/C/man2/sigwaitinfo.2:133
msgid "I<timeout> was invalid."
msgstr "I<timeout> が不正である。"
#. type: Plain text
-#: build/C/man2/sigwaitinfo.2:145
+#: build/C/man2/sigwaitinfo.2:153
msgid ""
"In normal usage, the calling program blocks the signals in I<set> via a "
"prior call to B<sigprocmask>(2) (so that the default disposition for these "
-"signals does not occur if they are delivered between successive calls to "
+"signals does not occur if they become pending between successive calls to "
"B<sigwaitinfo>() or B<sigtimedwait>()) and does not establish handlers for "
"these signals. In a multithreaded program, the signal should be blocked in "
-"all threads to prevent the signal being delivered to a thread other than the "
-"one calling B<sigwaitinfo>() or B<sigtimedwait>())."
+"all threads, in order to prevent the signal being treated according to its "
+"default disposition in a thread other than the one calling B<sigwaitinfo>() "
+"or B<sigtimedwait>())."
msgstr ""
-"通常の使用法では、呼び出し側プロセスはこれらの関数より先に B<sigprocmask>"
-"(2) の呼び出すことにより I<set> に含まれるシグナルをブロックし (そのためにこ"
-"れらのシグナルがこの後に続く B<sigwaitinfo>() や B<sigtimedwait>() の呼び出"
-"しの間に配送された場合には、 デフォルトの配置は行われず)、 これらのシグナルに"
-"対するハンドラは設定しない。 マルチスレッドプログラムでは、 B<sigwaitinfo>"
-"() や B<sigtimedwait>() を呼び出したスレッド以外のスレッドにそのシグナルが"
-"配送されないように、 全てのスレッドで該当シグナルをブロックすべきである。"
+"通常の使用法では、呼び出し側プロセスはこれらの関数より先に "
+"B<sigprocmask>(2) の呼び出すことにより I<set> に含まれるシグナルをブロック"
+"し (そのためにこれらのシグナルがこの後に続く B<sigwaitinfo>() や "
+"B<sigtimedwait>() の呼び出しの間に処理待ちになった場合には、デフォルトの動作"
+"は行われず)、 これらのシグナルに対するハンドラーは設定しない。 マルチスレッド"
+"プログラムでは、 B<sigwaitinfo>() や B<sigtimedwait>() を呼び出したスレッド"
+"以外のスレッドで、そのシグナルがデフォルトの動作に基いて処理されないように、"
+"全てのスレッドで該当シグナルをブロックすべきである。"
#. type: Plain text
-#: build/C/man2/sigwaitinfo.2:150
+#: build/C/man2/sigwaitinfo.2:158
msgid ""
"The set of signals that is pending for a given thread is the union of the "
"set of signals that is pending specifically for that thread and the set of "
"ものである (B<signal>(7) 参照)。"
#. type: Plain text
-#: build/C/man2/sigwaitinfo.2:156
+#: build/C/man2/sigwaitinfo.2:164
msgid "Attempts to wait for B<SIGKILL> and B<SIGSTOP> are silently ignored."
msgstr "B<SIGKILL> と B<SIGSTOP> を待とうとした場合、黙って無視される。"
#. type: Plain text
-#: build/C/man2/sigwaitinfo.2:165
+#: build/C/man2/sigwaitinfo.2:173
msgid ""
"If multiple threads of a process are blocked waiting for the same signal(s) "
"in B<sigwaitinfo>() or B<sigtimedwait>(), then exactly one of the threads "
-"will actually receive the signal if it is delivered to the process as a "
+"will actually receive the signal if it becomes pending for the process as a "
"whole; which of the threads receives the signal is indeterminate."
msgstr ""
"一つのプロセス内の複数のスレッドが B<sigwaitinfo>() や B<sigtimedwait>() で"
-"同じシグナルを待って停止した場合、 プロセス全体宛てのシグナルが配送されると、"
-"複数のスレッドのうち一つだけが 実際にそのシグナルを受信することになる。 どの"
-"スレッドがシグナルを受信するかは決まっていない。"
+"同じシグナルを待って停止した場合、 プロセス全体宛てのシグナルが処理待ちになる"
+"と、複数のスレッドのうち一つだけが 実際にそのシグナルを受信することになる。 "
+"ã\81©ã\81®ã\82¹ã\83¬ã\83\83ã\83\89ã\81\8cã\82·ã\82°ã\83\8aã\83«ã\82\92å\8f\97ä¿¡ã\81\99ã\82\8bã\81\8bã\81¯æ±ºã\81¾ã\81£ã\81¦ã\81\84ã\81ªã\81\84ã\80\82"
#. type: Plain text
-#: build/C/man2/sigwaitinfo.2:174
+#: build/C/man2/sigwaitinfo.2:183
msgid ""
"POSIX leaves the meaning of a NULL value for the I<timeout> argument of "
"B<sigtimedwait>() unspecified, permitting the possibility that this has the "
"ことになっており、 実際 Linux ではこのように動作する。"
#. type: Plain text
-#: build/C/man2/sigwaitinfo.2:179
+#: build/C/man2/sigwaitinfo.2:188
msgid ""
"On Linux, B<sigwaitinfo>() is a library function implemented on top of "
"B<sigtimedwait>()."
"ラリ関数である。"
#. type: Plain text
-#: build/C/man2/sigwaitinfo.2:191
+#: build/C/man2/sigwaitinfo.2:201
+msgid ""
+"The raw B<sigtimedwait>() system call has a fifth argument, I<size_t "
+"sigsetsize>, which specifies the size in bytes of the I<set> argument. The "
+"glibc B<sigtimedwait>() wrapper function specifies this argument as a fixed "
+"value (equal to I<sizeof(sigset_t)>)."
+msgstr ""
+"素の B<sigtimedwait>() システムコールは 5 番目の引き数 I<size_t sigsetsize> "
+"を取る。 この引き数は I<set> 引き数のバイト単位のサイズを指定する。 glibc の "
+"B<sigtimedwait>() のラッパー関数はこの引き数に固定値 (I<sizeof(sigset_t)> と"
+"同じ) を指定する。"
+
+#. type: Plain text
+#: build/C/man2/sigwaitinfo.2:213
msgid ""
"B<kill>(2), B<sigaction>(2), B<signal>(2), B<signalfd>(2), B<sigpending>(2), "
-"B<sigprocmask>(2), B<sigqueue>(3), B<sigsetops>(3), B<sigwait>(3), B<signal>"
-"(7), B<time>(7)"
+"B<sigprocmask>(2), B<sigqueue>(3), B<sigsetops>(3), B<sigwait>(3), "
+"B<signal>(7), B<time>(7)"
msgstr ""
"B<kill>(2), B<sigaction>(2), B<signal>(2), B<signalfd>(2), B<sigpending>(2), "
-"B<sigprocmask>(2), B<sigqueue>(3), B<sigsetops>(3), B<sigwait>(3), B<signal>"
-"(7), B<time>(7)"
+"B<sigprocmask>(2), B<sigqueue>(3), B<sigsetops>(3), B<sigwait>(3), "
+"B<signal>(7), B<time>(7)"
#. type: TH
-#: build/C/man3/sysv_signal.3:23
+#: build/C/man3/sysv_signal.3:25
#, no-wrap
msgid "SYSV_SIGNAL"
msgstr "SYSV_SIGNAL"
#. type: TH
-#: build/C/man3/sysv_signal.3:23
+#: build/C/man3/sysv_signal.3:25
#, no-wrap
-msgid "2007-05-04"
-msgstr "2007-05-04"
+msgid "2014-01-06"
+msgstr "2014-01-06"
#. type: Plain text
-#: build/C/man3/sysv_signal.3:26
+#: build/C/man3/sysv_signal.3:28
msgid "sysv_signal - signal handling with System V semantics"
msgstr "sysv_signal - System V 方式のシグナル処理"
#. type: Plain text
-#: build/C/man3/sysv_signal.3:28
+#: build/C/man3/sysv_signal.3:30
msgid "B<#define _GNU_SOURCE> /* See feature_test_macros(7) */"
msgstr "B<#define _GNU_SOURCE> /* feature_test_macros(7) 参照 */"
#. type: Plain text
-#: build/C/man3/sysv_signal.3:34
+#: build/C/man3/sysv_signal.3:36
msgid ""
"B<sighandler_t sysv_signal(int >I<signum>B<, sighandler_t >I<handler>B<);>"
msgstr ""
"B<sighandler_t sysv_signal(int >I<signum>B<, sighandler_t >I<handler>B<);>"
#. type: Plain text
-#: build/C/man3/sysv_signal.3:39
+#: build/C/man3/sysv_signal.3:41
msgid ""
"The B<sysv_signal>() function takes the same arguments, and performs the "
"same task, as B<signal>(2)."
"る。"
#. type: Plain text
-#: build/C/man3/sysv_signal.3:49
+#: build/C/man3/sysv_signal.3:51
msgid ""
"However B<sysv_signal>() provides the System V unreliable signal semantics, "
"that is: a) the disposition of the signal is reset to the default when the "
msgstr ""
"しかしながら、 B<sysv_signal>() は System V の信頼性に欠けるシグナル処理方式"
"を提供している。 信頼性に欠けるシグナル処理方式は以下の特徴を持つ。 a) ハンド"
-"ã\83©ã\81\8cèµ·å\8b\95ã\81\95ã\82\8cã\82\8bã\81¨ã\80\81ã\82·ã\82°ã\83\8aã\83«ã\81®å\87¦ç\90\86æ\96¹æ³\95 (disposition) ã\81\8c ã\83\87ã\83\95ã\82©ã\83«ã\83\88ã\81«ã\83ªã\82»ã\83\83ã\83\88ã\81\95"
-"ã\82\8cã\82\8bã\80\81 b) ã\82·ã\82°ã\83\8aã\83«ã\83\8fã\83³ã\83\89ã\83©ã\81®å®\9fè¡\8cä¸ã\81¯ã\80\81ã\81\9dã\82\8c以é\99\8dã\81«ç\99ºç\94\9fã\81\97ã\81\9få\90\8cã\81\98ã\82·ã\82°ã\83\8aã\83«ã\81®é\85\8dé\80\81ã\81\8c "
-"ブロックされない、 c) ハンドラが停止中の (blocking している) システムコールを"
-"中断した場合、 自動的に再開されないシステムコールがある。"
+"ã\83©ã\83¼ã\81\8cèµ·å\8b\95ã\81\95ã\82\8cã\82\8bã\81¨ã\80\81ã\82·ã\82°ã\83\8aã\83«ã\81®å\87¦ç\90\86æ\96¹æ³\95 (disposition) ã\81\8c ã\83\87ã\83\95ã\82©ã\83«ã\83\88ã\81«ã\83ªã\82»ã\83\83ã\83\88"
+"ã\81\95ã\82\8cã\82\8bã\80\81 b) ã\82·ã\82°ã\83\8aã\83«ã\83\8fã\83³ã\83\89ã\83©ã\83¼ã\81®å®\9fè¡\8cä¸ã\81¯ã\80\81ã\81\9dã\82\8c以é\99\8dã\81«ç\99ºç\94\9fã\81\97ã\81\9få\90\8cã\81\98ã\82·ã\82°ã\83\8aã\83«ã\81®é\85\8d"
+"送が ブロックされない、 c) ハンドラーが停止中の (blocking している) システム"
+"コールを中断した場合、 自動的に再開されないシステムコールがある。"
#. type: Plain text
-#: build/C/man3/sysv_signal.3:55
+#: build/C/man3/sysv_signal.3:57
msgid ""
"The B<sysv_signal>() function returns the previous value of the signal "
"handler, or B<SIG_ERR> on error."
msgstr ""
-"B<sysv_signal>() 関数はシグナルハンドラの直前の値を返す。 エラーの場合、 "
+"B<sysv_signal>() é\96¢æ\95°ã\81¯ã\82·ã\82°ã\83\8aã\83«ã\83\8fã\83³ã\83\89ã\83©ã\83¼ã\81®ç\9b´å\89\8dã\81®å\80¤ã\82\92è¿\94ã\81\99ã\80\82 ã\82¨ã\83©ã\83¼ã\81®å ´å\90\88ã\80\81 "
"B<SIG_ERR> を返す。"
#. type: Plain text
-#: build/C/man3/sysv_signal.3:60
+#: build/C/man3/sysv_signal.3:65
+msgid "The B<sysv_signal>() function is thread-safe."
+msgstr "B<sysv_signal>() 関数はスレッドセーフである。"
+
+#. type: Plain text
+#: build/C/man3/sysv_signal.3:67
msgid "This function is nonstandard."
msgstr "この関数は非標準である。"
#. type: Plain text
-#: build/C/man3/sysv_signal.3:66
+#: build/C/man3/sysv_signal.3:73
msgid ""
"Use of B<sysv_signal>() should be avoided; use B<sigaction>(2) instead."
msgstr ""
"こと。"
#. type: Plain text
-#: build/C/man3/sysv_signal.3:77
+#: build/C/man3/sysv_signal.3:84
msgid ""
"On older Linux systems, B<sysv_signal>() and B<signal>(2) were "
"equivalent. But on newer systems, B<signal>(2) provides reliable signal "
"式を提供している。 詳細は B<signal>(2) を参照。"
#. type: Plain text
-#: build/C/man3/sysv_signal.3:90
+#: build/C/man3/sysv_signal.3:97
msgid "B<sigaction>(2), B<signal>(2), B<bsd_signal>(3), B<signal>(7)"
msgstr "B<sigaction>(2), B<signal>(2), B<bsd_signal>(3), B<signal>(7)"
#. type: TH
-#: build/C/man2/timer_create.2:29
+#: build/C/man2/timer_create.2:33
#, no-wrap
msgid "TIMER_CREATE"
msgstr "TIMER_CREATE"
-#. type: TH
-#: build/C/man2/timer_create.2:29
-#, no-wrap
-msgid "2010-09-27"
-msgstr "2010-09-27"
-
#. type: Plain text
-#: build/C/man2/timer_create.2:32
+#: build/C/man2/timer_create.2:36
msgid "timer_create - create a POSIX per-process timer"
-msgstr "timer_create - create a POSIX per-process timer"
+msgstr ""
#. type: Plain text
-#: build/C/man2/timer_create.2:36
+#: build/C/man2/timer_create.2:40
#, no-wrap
msgid ""
"B<#include E<lt>signal.hE<gt>>\n"
"B<#include E<lt>time.hE<gt>>\n"
#. type: Plain text
-#: build/C/man2/timer_create.2:39
+#: build/C/man2/timer_create.2:43
#, no-wrap
msgid ""
"B<int timer_create(clockid_t >I<clockid>B<, struct sigevent *>I<sevp>B<,>\n"
"B< timer_t *>I<timerid>B<);>\n"
#. type: Plain text
-#: build/C/man2/timer_create.2:42 build/C/man2/timer_delete.2:34
-#: build/C/man2/timer_getoverrun.2:34 build/C/man2/timer_settime.2:38
+#: build/C/man2/timer_create.2:46 build/C/man2/timer_delete.2:37
+#: build/C/man2/timer_getoverrun.2:37 build/C/man2/timer_settime.2:41
msgid "Link with I<-lrt>."
-msgstr "Link with I<-lrt>."
+msgstr "I<-lrt> でリンクする。"
#. type: Plain text
-#: build/C/man2/timer_create.2:50
+#: build/C/man2/timer_create.2:54
msgid "B<timer_create>(): _POSIX_C_SOURCE\\ E<gt>=\\ 199309L"
msgstr "B<timer_create>(): _POSIX_C_SOURCE\\ E<gt>=\\ 199309L"
#. type: Plain text
-#: build/C/man2/timer_create.2:58
+#: build/C/man2/timer_create.2:62
msgid ""
"B<timer_create>() creates a new per-process interval timer. The ID of the "
"new timer is returned in the buffer pointed to by I<timerid>, which must be "
-"a non-NULL pointer. This ID is unique within the process, until the timer "
+"a non-null pointer. This ID is unique within the process, until the timer "
"is deleted. The new timer is initially disarmed."
msgstr ""
-"B<timer_create>() creates a new per-process interval timer. The ID of the "
-"new timer is returned in the buffer pointed to by I<timerid>, which must be "
-"a non-NULL pointer. This ID is unique within the process, until the timer "
-"is deleted. The new timer is initially disarmed."
#. type: Plain text
-#: build/C/man2/timer_create.2:63
+#: build/C/man2/timer_create.2:67
msgid ""
"The I<clockid> argument specifies the clock that the new timer uses to "
"measure time. It can be specified as one of the following values:"
msgstr ""
-"The I<clockid> argument specifies the clock that the new timer uses to "
-"measure time. It can be specified as one of the following values:"
#. type: TP
-#: build/C/man2/timer_create.2:63
+#: build/C/man2/timer_create.2:67
#, no-wrap
msgid "B<CLOCK_REALTIME>"
msgstr "B<CLOCK_REALTIME>"
#. type: Plain text
-#: build/C/man2/timer_create.2:66
+#: build/C/man2/timer_create.2:70
msgid "A settable system-wide real-time clock."
-msgstr "A settable system-wide real-time clock."
+msgstr ""
#. type: TP
-#: build/C/man2/timer_create.2:66
+#: build/C/man2/timer_create.2:70
#, no-wrap
msgid "B<CLOCK_MONOTONIC>"
msgstr "B<CLOCK_MONOTONIC>"
#. Note: the CLOCK_MONOTONIC_RAW clock added for clock_gettime()
#. in 2.6.28 is not supported for POSIX timers -- mtk, Feb 2009
#. type: Plain text
-#: build/C/man2/timer_create.2:73
+#: build/C/man2/timer_create.2:77
msgid ""
"A nonsettable monotonically increasing clock that measures time from some "
"unspecified point in the past that does not change after system startup."
msgstr ""
-"A nonsettable monotonically increasing clock that measures time from some "
-"unspecified point in the past that does not change after system startup."
#. type: TP
-#: build/C/man2/timer_create.2:73
+#: build/C/man2/timer_create.2:77
#, no-wrap
msgid "B<CLOCK_PROCESS_CPUTIME_ID> (since Linux 2.6.12)"
-msgstr "B<CLOCK_PROCESS_CPUTIME_ID> (since Linux 2.6.12)"
+msgstr ""
#. type: Plain text
-#: build/C/man2/timer_create.2:77
+#: build/C/man2/timer_create.2:81
msgid ""
"A clock that measures (user and system) CPU time consumed by (all of the "
"threads in) the calling process."
msgstr ""
-"A clock that measures (user and system) CPU time consumed by (all of the "
-"threads in) the calling process."
#. type: TP
-#: build/C/man2/timer_create.2:77
+#: build/C/man2/timer_create.2:81
#, no-wrap
msgid "B<CLOCK_THREAD_CPUTIME_ID> (since Linux 2.6.12)"
-msgstr "B<CLOCK_THREAD_CPUTIME_ID> (since Linux 2.6.12)"
+msgstr ""
#. The CLOCK_MONOTONIC_RAW that was added in 2.6.28 can't be used
#. to create a timer -- mtk, Feb 2009
#. type: Plain text
-#: build/C/man2/timer_create.2:83
+#: build/C/man2/timer_create.2:87
msgid ""
"A clock that measures (user and system) CPU time consumed by the calling "
"thread."
msgstr ""
-"A clock that measures (user and system) CPU time consumed by the calling "
-"thread."
#. type: Plain text
-#: build/C/man2/timer_create.2:92
+#: build/C/man2/timer_create.2:96
msgid ""
"As well as the above values, I<clockid> can be specified as the I<clockid> "
-"returned by a call to B<clock_getcpuclockid>(3) or B<pthread_getcpuclockid>"
-"(3)."
+"returned by a call to B<clock_getcpuclockid>(3) or "
+"B<pthread_getcpuclockid>(3)."
msgstr ""
-"As well as the above values, I<clockid> can be specified as the I<clockid> "
-"returned by a call to B<clock_getcpuclockid>(3) or B<pthread_getcpuclockid>"
-"(3)."
#. type: Plain text
-#: build/C/man2/timer_create.2:101
+#: build/C/man2/timer_create.2:105
msgid ""
"The I<sevp> argument points to a I<sigevent> structure that specifies how "
"the caller should be notified when the timer expires. For the definition "
"and general details of this structure, see B<sigevent>(7)."
msgstr ""
-"The I<sevp> argument points to a I<sigevent> structure that specifies how "
-"the caller should be notified when the timer expires. For the definition "
-"and general details of this structure, see B<sigevent>(7)."
#. type: Plain text
-#: build/C/man2/timer_create.2:105
+#: build/C/man2/timer_create.2:109
msgid "The I<sevp.sigev_notify> field can have the following values:"
-msgstr "The I<sevp.sigev_notify> field can have the following values:"
+msgstr ""
#. type: Plain text
-#: build/C/man2/timer_create.2:110
+#: build/C/man2/timer_create.2:114
msgid ""
"Don't asynchronously notify when the timer expires. Progress of the timer "
"can be monitored using B<timer_gettime>(2)."
msgstr ""
-"Don't asynchronously notify when the timer expires. Progress of the timer "
-"can be monitored using B<timer_gettime>(2)."
#. type: Plain text
-#: build/C/man2/timer_create.2:128
+#: build/C/man2/timer_create.2:132
msgid ""
"Upon timer expiration, generate the signal I<sigev_signo> for the process. "
"See B<sigevent>(7) for general details. The I<si_code> field of the "
"most one signal is queued to the process for a given timer; see "
"B<timer_getoverrun>(2) for more details."
msgstr ""
-"Upon timer expiration, generate the signal I<sigev_signo> for the process. "
-"See B<sigevent>(7) for general details. The I<si_code> field of the "
-"I<siginfo_t> structure will be set to B<SI_TIMER>. At any point in time, at "
-"most one signal is queued to the process for a given timer; see "
-"B<timer_getoverrun>(2) for more details."
#. type: Plain text
-#: build/C/man2/timer_create.2:136
+#: build/C/man2/timer_create.2:140
msgid ""
"Upon timer expiration, invoke I<sigev_notify_function> as if it were the "
"start function of a new thread. See B<sigevent>(7) for details."
msgstr ""
-"Upon timer expiration, invoke I<sigev_notify_function> as if it were the "
-"start function of a new thread. See B<sigevent>(7) for details."
#. type: Plain text
-#: build/C/man2/timer_create.2:150
+#: build/C/man2/timer_create.2:154
msgid ""
"As for B<SIGEV_SIGNAL>, but the signal is targeted at the thread whose ID is "
"given in I<sigev_notify_thread_id>, which must be a thread in the same "
"process as the caller. The I<sigev_notify_thread_id> field specifies a "
-"kernel thread ID, that is, the value returned by B<clone>(2) or B<gettid>"
-"(2). This flag is only intended for use by threading libraries."
+"kernel thread ID, that is, the value returned by B<clone>(2) or "
+"B<gettid>(2). This flag is intended only for use by threading libraries."
msgstr ""
-"As for B<SIGEV_SIGNAL>, but the signal is targeted at the thread whose ID is "
-"given in I<sigev_notify_thread_id>, which must be a thread in the same "
-"process as the caller. The I<sigev_notify_thread_id> field specifies a "
-"kernel thread ID, that is, the value returned by B<clone>(2) or B<gettid>"
-"(2). This flag is only intended for use by threading libraries."
#. type: Plain text
-#: build/C/man2/timer_create.2:165
+#: build/C/man2/timer_create.2:169
msgid ""
"Specifying I<sevp> as NULL is equivalent to specifying a pointer to a "
"I<sigevent> structure in which I<sigev_notify> is B<SIGEV_SIGNAL>, "
"I<sigev_signo> is B<SIGALRM>, and I<sigev_value.sival_int> is the timer ID."
msgstr ""
-"Specifying I<sevp> as NULL is equivalent to specifying a pointer to a "
-"I<sigevent> structure in which I<sigev_notify> is B<SIGEV_SIGNAL>, "
-"I<sigev_signo> is B<SIGALRM>, and I<sigev_value.sival_int> is the timer ID."
#. type: Plain text
-#: build/C/man2/timer_create.2:173
+#: build/C/man2/timer_create.2:177
msgid ""
"On success, B<timer_create>() returns 0, and the ID of the new timer is "
"placed in I<*timerid>. On failure, -1 is returned, and I<errno> is set to "
"indicate the error."
msgstr ""
-"On success, B<timer_create>() returns 0, and the ID of the new timer is "
-"placed in I<*timerid>. On failure, -1 is returned, and I<errno> is set to "
-"indicate the error."
#. type: Plain text
-#: build/C/man2/timer_create.2:177
+#: build/C/man2/timer_create.2:181
msgid "Temporary error during kernel allocation of timer structures."
-msgstr "Temporary error during kernel allocation of timer structures."
+msgstr ""
#. type: Plain text
-#: build/C/man2/timer_create.2:185
+#: build/C/man2/timer_create.2:189
msgid ""
"Clock ID, I<sigev_notify>, I<sigev_signo>, or I<sigev_notify_thread_id> is "
"invalid."
msgstr ""
-"Clock ID, I<sigev_notify>, I<sigev_signo>, or I<sigev_notify_thread_id> is "
-"invalid."
#. glibc layer: malloc()
#. type: Plain text
-#: build/C/man2/timer_create.2:189
+#: build/C/man2/timer_create.2:193
msgid "Could not allocate memory."
-msgstr "Could not allocate memory."
+msgstr ""
#. type: Plain text
-#: build/C/man2/timer_create.2:191 build/C/man2/timer_delete.2:64
-#: build/C/man2/timer_getoverrun.2:94
+#: build/C/man2/timer_create.2:195 build/C/man2/timer_delete.2:67
+#: build/C/man2/timer_getoverrun.2:97
msgid "This system call is available since Linux 2.6."
-msgstr "This system call is available since Linux 2.6."
+msgstr "このシステムコールは Linux 2.6 以降で利用できる。"
#. type: Plain text
-#: build/C/man2/timer_create.2:196
+#: build/C/man2/timer_create.2:200
msgid "A program may create multiple interval timers using B<timer_create>()."
-msgstr "A program may create multiple interval timers using B<timer_create>()."
+msgstr ""
#. type: Plain text
-#: build/C/man2/timer_create.2:201
+#: build/C/man2/timer_create.2:205
msgid ""
"Timers are not inherited by the child of a B<fork>(2), and are disarmed and "
"deleted during an B<execve>(2)."
msgstr ""
-"Timers are not inherited by the child of a B<fork>(2), and are disarmed and "
-"deleted during an B<execve>(2)."
#. type: Plain text
-#: build/C/man2/timer_create.2:209
+#: build/C/man2/timer_create.2:213
msgid ""
"The kernel preallocates a \"queued real-time signal\" for each timer created "
"using B<timer_create>(). Consequently, the number of timers is limited by "
"the B<RLIMIT_SIGPENDING> resource limit (see B<setrlimit>(2))."
msgstr ""
-"The kernel preallocates a \"queued real-time signal\" for each timer created "
-"using B<timer_create>(). Consequently, the number of timers is limited by "
-"the B<RLIMIT_SIGPENDING> resource limit (see B<setrlimit>(2))."
#. type: Plain text
-#: build/C/man2/timer_create.2:214
+#: build/C/man2/timer_create.2:218
msgid ""
"The timers created by B<timer_create>() are commonly known as \"POSIX "
"(interval) timers\". The POSIX timers API consists of the following "
"interfaces:"
msgstr ""
-"The timers created by B<timer_create>() are commonly known as \"POSIX "
-"(interval) timers\". The POSIX timers API consists of the following "
-"interfaces:"
#. type: Plain text
-#: build/C/man2/timer_create.2:217
+#: build/C/man2/timer_create.2:221
msgid "B<timer_create>(): Create a timer."
-msgstr "B<timer_create>(): Create a timer."
+msgstr ""
#. type: Plain text
-#: build/C/man2/timer_create.2:220
+#: build/C/man2/timer_create.2:224
msgid "B<timer_settime>(2): Arm (start) or disarm (stop) a timer."
-msgstr "B<timer_settime>(2): Arm (start) or disarm (stop) a timer."
+msgstr ""
#. type: Plain text
-#: build/C/man2/timer_create.2:224
+#: build/C/man2/timer_create.2:228
msgid ""
"B<timer_gettime>(2): Fetch the time remaining until the next expiration of a "
"timer, along with the interval setting of the timer."
msgstr ""
-"B<timer_gettime>(2): Fetch the time remaining until the next expiration of a "
-"timer, along with the interval setting of the timer."
#. type: Plain text
-#: build/C/man2/timer_create.2:227
+#: build/C/man2/timer_create.2:231
msgid ""
"B<timer_getoverrun>(2): Return the overrun count for the last timer "
"expiration."
-msgstr ""
-"B<timer_getoverrun>(2): Return the overrun count for the last timer "
-"expiration."
+msgstr ""
#. type: Plain text
-#: build/C/man2/timer_create.2:230
+#: build/C/man2/timer_create.2:234
msgid "B<timer_delete>(2): Disarm and delete a timer."
-msgstr "B<timer_delete>(2): Disarm and delete a timer."
+msgstr ""
#. type: Plain text
-#: build/C/man2/timer_create.2:233
+#: build/C/man2/timer_create.2:243
msgid ""
-"Part of the implementation of the POSIX timers API is provided by glibc. In "
-"particular:"
+"Since Linux 3.10, the I</proc/[pid]/timers> file can be used to list the "
+"POSIX timers for the process with PID I<pid>. See B<proc>(5) for further "
+"information."
msgstr ""
+
+#. type: Plain text
+#: build/C/man2/timer_create.2:246
+msgid ""
"Part of the implementation of the POSIX timers API is provided by glibc. In "
"particular:"
+msgstr ""
#. type: Plain text
-#: build/C/man2/timer_create.2:237
+#: build/C/man2/timer_create.2:250
msgid ""
"The functionality for B<SIGEV_THREAD> is implemented within glibc, rather "
"than the kernel."
msgstr ""
-"The functionality for B<SIGEV_THREAD> is implemented within glibc, rather "
-"than the kernel."
#. See the glibc source file kernel-posix-timers.h for the structure
-#. that glibc uses to map userspace timer IDs to kernel timer IDs
+#. that glibc uses to map user-space timer IDs to kernel timer IDs
#. The kernel-level timer ID is exposed via siginfo.si_tid.
#. type: Plain text
-#: build/C/man2/timer_create.2:243
+#: build/C/man2/timer_create.2:256
msgid ""
"The timer IDs presented at user level are maintained by glibc, which maps "
"these IDs to the timer IDs employed by the kernel."
msgstr ""
-"The timer IDs presented at user level are maintained by glibc, which maps "
-"these IDs to the timer IDs employed by the kernel."
#. type: Plain text
-#: build/C/man2/timer_create.2:251
+#: build/C/man2/timer_create.2:264
msgid ""
"The POSIX timers system calls first appeared in Linux 2.6. Prior to this, "
-"glibc provided an incomplete userspace implementation (B<CLOCK_REALTIME> "
+"glibc provided an incomplete user-space implementation (B<CLOCK_REALTIME> "
"timers only) using POSIX threads, and current glibc falls back to this "
"implementation on systems running pre-2.6 Linux kernels."
msgstr ""
-"The POSIX timers system calls first appeared in Linux 2.6. Prior to this, "
-"glibc provided an incomplete userspace implementation (B<CLOCK_REALTIME> "
-"timers only) using POSIX threads, and current glibc falls back to this "
-"implementation on systems running pre-2.6 Linux kernels."
#. type: Plain text
-#: build/C/man2/timer_create.2:263
+#: build/C/man2/timer_create.2:276
msgid ""
"The program below takes two arguments: a sleep period in seconds, and a "
"timer frequency in nanoseconds. The program establishes a handler for the "
"notification. The program terminates after one invocation of the signal "
"handler."
msgstr ""
-"The program below takes two arguments: a sleep period in seconds, and a "
-"timer frequency in nanoseconds. The program establishes a handler for the "
-"signal it uses for the timer, blocks that signal, creates and arms a timer "
-"that expires with the given frequency, sleeps for the specified number of "
-"seconds, and then unblocks the timer signal. Assuming that the timer "
-"expired at least once while the program slept, the signal handler will be "
-"invoked, and the handler displays some information about the timer "
-"notification. The program terminates after one invocation of the signal "
-"handler."
#. type: Plain text
-#: build/C/man2/timer_create.2:268
+#: build/C/man2/timer_create.2:281
msgid ""
"In the following example run, the program sleeps for 1 second, after "
"creating a timer that has a frequency of 100 nanoseconds. By the time the "
"signal is unblocked and delivered, there have been around ten million "
"overruns."
msgstr ""
-"In the following example run, the program sleeps for 1 second, after "
-"creating a timer that has a frequency of 100 nanoseconds. By the time the "
-"signal is unblocked and delivered, there have been around ten million "
-"overruns."
#. type: Plain text
-#: build/C/man2/timer_create.2:280
+#: build/C/man2/timer_create.2:293
#, no-wrap
msgid ""
"$ B<./a.out 1 100>\n"
" sival_ptr = 0xbfb174f4; *sival_ptr = 0x804c008\n"
" overrun count = 10004886\n"
msgstr ""
-"$ B<./a.out 1 100>\n"
-"Establishing handler for signal 34\n"
-"Blocking signal 34\n"
-"timer ID is 0x804c008\n"
-"Sleeping for 1 seconds\n"
-"Unblocking signal 34\n"
-"Caught signal 34\n"
-" sival_ptr = 0xbfb174f4; *sival_ptr = 0x804c008\n"
-" overrun count = 10004886\n"
-
-#. type: SS
-#: build/C/man2/timer_create.2:282
-#, no-wrap
-msgid "Program Source"
-msgstr "Program Source"
#. type: Plain text
-#: build/C/man2/timer_create.2:290
+#: build/C/man2/timer_create.2:303
#, no-wrap
msgid ""
"#include E<lt>stdlib.hE<gt>\n"
"#include E<lt>time.hE<gt>\n"
#. type: Plain text
-#: build/C/man2/timer_create.2:293
+#: build/C/man2/timer_create.2:306
#, no-wrap
msgid ""
"#define CLOCKID CLOCK_REALTIME\n"
"#define SIG SIGRTMIN\n"
#. type: Plain text
-#: build/C/man2/timer_create.2:296
+#: build/C/man2/timer_create.2:309
#, no-wrap
msgid ""
"#define errExit(msg) do { perror(msg); exit(EXIT_FAILURE); \\e\n"
" } while (0)\n"
#. type: Plain text
-#: build/C/man2/timer_create.2:302
+#: build/C/man2/timer_create.2:315
#, no-wrap
msgid ""
"static void\n"
" int or;\n"
#. type: Plain text
-#: build/C/man2/timer_create.2:304
+#: build/C/man2/timer_create.2:317
#, no-wrap
msgid " tidp = si-E<gt>si_value.sival_ptr;\n"
msgstr " tidp = si-E<gt>si_value.sival_ptr;\n"
#. type: Plain text
-#: build/C/man2/timer_create.2:307
+#: build/C/man2/timer_create.2:320
#, no-wrap
msgid ""
" printf(\" sival_ptr = %p; \", si-E<gt>si_value.sival_ptr);\n"
" printf(\" *sival_ptr = 0x%lx\\en\", (long) *tidp);\n"
#. type: Plain text
-#: build/C/man2/timer_create.2:314
+#: build/C/man2/timer_create.2:327
#, no-wrap
msgid ""
" or = timer_getoverrun(*tidp);\n"
"}\n"
#. type: Plain text
-#: build/C/man2/timer_create.2:321
+#: build/C/man2/timer_create.2:334
#, no-wrap
msgid ""
"static void\n"
" see signal(7) */\n"
#. type: Plain text
-#: build/C/man2/timer_create.2:326
+#: build/C/man2/timer_create.2:339
#, no-wrap
msgid ""
" printf(\"Caught signal %d\\en\", sig);\n"
"}\n"
#. type: Plain text
-#: build/C/man2/timer_create.2:336
+#: build/C/man2/timer_create.2:349
#, no-wrap
msgid ""
"int\n"
" struct sigaction sa;\n"
#. type: Plain text
-#: build/C/man2/timer_create.2:342
+#: build/C/man2/timer_create.2:355
#, no-wrap
msgid ""
" if (argc != 3) {\n"
" }\n"
#. type: Plain text
-#: build/C/man2/timer_create.2:344
+#: build/C/man2/timer_create.2:357
#, no-wrap
msgid " /* Establish handler for timer signal */\n"
msgstr " /* Establish handler for timer signal */\n"
#. type: Plain text
-#: build/C/man2/timer_create.2:351
+#: build/C/man2/timer_create.2:364
#, no-wrap
msgid ""
" printf(\"Establishing handler for signal %d\\en\", SIG);\n"
" errExit(\"sigaction\");\n"
#. type: Plain text
-#: build/C/man2/timer_create.2:353
+#: build/C/man2/timer_create.2:366
#, no-wrap
msgid " /* Block timer signal temporarily */\n"
msgstr " /* Block timer signal temporarily */\n"
#. type: Plain text
-#: build/C/man2/timer_create.2:359
+#: build/C/man2/timer_create.2:372
#, no-wrap
msgid ""
" printf(\"Blocking signal %d\\en\", SIG);\n"
" errExit(\"sigprocmask\");\n"
#. type: Plain text
-#: build/C/man2/timer_create.2:361
+#: build/C/man2/timer_create.2:374
#, no-wrap
msgid " /* Create the timer */\n"
msgstr " /* Create the timer */\n"
#. type: Plain text
-#: build/C/man2/timer_create.2:367
+#: build/C/man2/timer_create.2:380
#, no-wrap
msgid ""
" sev.sigev_notify = SIGEV_SIGNAL;\n"
" errExit(\"timer_create\");\n"
#. type: Plain text
-#: build/C/man2/timer_create.2:369
+#: build/C/man2/timer_create.2:382
#, no-wrap
msgid " printf(\"timer ID is 0x%lx\\en\", (long) timerid);\n"
msgstr " printf(\"timer ID is 0x%lx\\en\", (long) timerid);\n"
#. type: Plain text
-#: build/C/man2/timer_create.2:371
+#: build/C/man2/timer_create.2:384
#, no-wrap
msgid " /* Start the timer */\n"
msgstr " /* Start the timer */\n"
#. type: Plain text
-#: build/C/man2/timer_create.2:377
+#: build/C/man2/timer_create.2:390
#, no-wrap
msgid ""
" freq_nanosecs = atoll(argv[2]);\n"
" its.it_interval.tv_nsec = its.it_value.tv_nsec;\n"
#. type: Plain text
-#: build/C/man2/timer_create.2:380
+#: build/C/man2/timer_create.2:393
#, no-wrap
msgid ""
" if (timer_settime(timerid, 0, &its, NULL) == -1)\n"
" errExit(\"timer_settime\");\n"
#. type: Plain text
-#: build/C/man2/timer_create.2:383
+#: build/C/man2/timer_create.2:396
#, no-wrap
msgid ""
" /* Sleep for a while; meanwhile, the timer may expire\n"
" multiple times */\n"
#. type: Plain text
-#: build/C/man2/timer_create.2:386
+#: build/C/man2/timer_create.2:399
#, no-wrap
msgid ""
" printf(\"Sleeping for %d seconds\\en\", atoi(argv[1]));\n"
" sleep(atoi(argv[1]));\n"
#. type: Plain text
-#: build/C/man2/timer_create.2:389
+#: build/C/man2/timer_create.2:402
#, no-wrap
msgid ""
" /* Unlock the timer signal, so that timer notification\n"
" can be delivered */\n"
#. type: Plain text
-#: build/C/man2/timer_create.2:393
+#: build/C/man2/timer_create.2:406
#, no-wrap
msgid ""
" printf(\"Unblocking signal %d\\en\", SIG);\n"
" errExit(\"sigprocmask\");\n"
#. type: Plain text
-#: build/C/man2/timer_create.2:396 build/C/man2/timerfd_create.2:533
+#: build/C/man2/timer_create.2:409 build/C/man2/timerfd_create.2:547
#, no-wrap
msgid ""
" exit(EXIT_SUCCESS);\n"
"}\n"
#. type: Plain text
-#: build/C/man2/timer_create.2:410
+#: build/C/man2/timer_create.2:425
msgid ""
-"B<clock_gettime>(2), B<setitimer>(2), B<timer_delete>(2), B<timer_getoverrun>"
-"(2), B<timer_settime>(2), B<timerfd_create>(2), B<clock_getcpuclockid>(3), "
-"B<pthread_getcpuclockid>(3), B<pthreads>(7), B<sigevent>(7), B<signal>(7), "
-"B<time>(7)"
+"B<clock_gettime>(2), B<setitimer>(2), B<timer_delete>(2), "
+"B<timer_getoverrun>(2), B<timer_settime>(2), B<timerfd_create>(2), "
+"B<clock_getcpuclockid>(3), B<pthread_getcpuclockid>(3), B<pthreads>(7), "
+"B<sigevent>(7), B<signal>(7), B<time>(7)"
msgstr ""
-"B<clock_gettime>(2), B<setitimer>(2), B<timer_delete>(2), B<timer_getoverrun>"
-"(2), B<timer_settime>(2), B<timerfd_create>(2), B<clock_getcpuclockid>(3), "
-"B<pthread_getcpuclockid>(3), B<pthreads>(7), B<sigevent>(7), B<signal>(7), "
-"B<time>(7)"
+"B<clock_gettime>(2), B<setitimer>(2), B<timer_delete>(2), "
+"B<timer_getoverrun>(2), B<timer_settime>(2), B<timerfd_create>(2), "
+"B<clock_getcpuclockid>(3), B<pthread_getcpuclockid>(3), B<pthreads>(7), "
+"B<sigevent>(7), B<signal>(7), B<time>(7)"
#. type: TH
-#: build/C/man2/timer_delete.2:23
+#: build/C/man2/timer_delete.2:26
#, no-wrap
msgid "TIMER_DELETE"
msgstr "TIMER_DELETE"
#. type: TH
-#: build/C/man2/timer_delete.2:23 build/C/man2/timer_getoverrun.2:23
-#: build/C/man2/timer_settime.2:23
+#: build/C/man2/timer_delete.2:26 build/C/man2/timer_getoverrun.2:26
#, no-wrap
msgid "2009-02-20"
msgstr "2009-02-20"
#. type: Plain text
-#: build/C/man2/timer_delete.2:26
+#: build/C/man2/timer_delete.2:29
msgid "timer_delete - delete a POSIX per-process timer"
-msgstr "timer_delete - delete a POSIX per-process timer"
+msgstr "timer_delete - プロセス単位の POSIX タイマーを削除する"
#. type: Plain text
-#: build/C/man2/timer_delete.2:29 build/C/man2/timer_getoverrun.2:29
-#: build/C/man2/timer_settime.2:30
+#: build/C/man2/timer_delete.2:32 build/C/man2/timer_getoverrun.2:32
+#: build/C/man2/timer_settime.2:33
#, no-wrap
msgid "B<#include E<lt>time.hE<gt>>\n"
msgstr "B<#include E<lt>time.hE<gt>>\n"
#. type: Plain text
-#: build/C/man2/timer_delete.2:31
+#: build/C/man2/timer_delete.2:34
#, no-wrap
msgid "B<int timer_delete(timer_t >I<timerid>B<);>\n"
msgstr "B<int timer_delete(timer_t >I<timerid>B<);>\n"
#. type: Plain text
-#: build/C/man2/timer_delete.2:42
+#: build/C/man2/timer_delete.2:45
msgid "B<timer_delete>(): _POSIX_C_SOURCE\\ E<gt>=\\ 199309L"
msgstr "B<timer_delete>(): _POSIX_C_SOURCE\\ E<gt>=\\ 199309L"
#. type: Plain text
-#: build/C/man2/timer_delete.2:50
+#: build/C/man2/timer_delete.2:53
msgid ""
"B<timer_delete>() deletes the timer whose ID is given in I<timerid>. If "
"the timer was armed at the time of this call, it is disarmed before being "
"deleted. The treatment of any pending signal generated by the deleted timer "
"is unspecified."
msgstr ""
-"B<timer_delete>() deletes the timer whose ID is given in I<timerid>. If "
-"the timer was armed at the time of this call, it is disarmed before being "
-"deleted. The treatment of any pending signal generated by the deleted timer "
-"is unspecified."
+"B<timer_delete>() は I<timerid> で指定された ID のタイマーを削除する。 "
+"B<timer_delete>() が呼び出された時点でタイマーが開始されている場合は、 削除す"
+"る前にタイマーの解除が行われる。 削除されるタイマーにより生成された処理待ちシ"
+"グナルの扱いは不定 (unspecified) である。"
#. type: Plain text
-#: build/C/man2/timer_delete.2:57
+#: build/C/man2/timer_delete.2:60
msgid ""
"On success, B<timer_delete>() returns 0. On failure, -1 is returned, and "
"I<errno> is set to indicate the error."
msgstr ""
-"On success, B<timer_delete>() returns 0. On failure, -1 is returned, and "
-"I<errno> is set to indicate the error."
+"成功すると、 B<timer_delete>() は 0 を返す。 失敗すると、 -1 が返り、 "
+"I<errno> にエラーを示す値が設定される。"
#. type: Plain text
-#: build/C/man2/timer_delete.2:62 build/C/man2/timer_getoverrun.2:92
+#: build/C/man2/timer_delete.2:65 build/C/man2/timer_getoverrun.2:95
msgid "I<timerid> is not a valid timer ID."
-msgstr "I<timerid> is not a valid timer ID."
+msgstr "I<timerid> が有効なタイマー ID ではない。"
#. type: Plain text
-#: build/C/man2/timer_delete.2:72
+#: build/C/man2/timer_delete.2:75
msgid ""
"B<clock_gettime>(2), B<timer_create>(2), B<timer_getoverrun>(2), "
"B<timer_settime>(2), B<time>(7)"
"B<timer_settime>(2), B<time>(7)"
#. type: TH
-#: build/C/man2/timer_getoverrun.2:23
+#: build/C/man2/timer_getoverrun.2:26
#, no-wrap
msgid "TIMER_GETOVERRUN"
msgstr "TIMER_GETOVERRUN"
#. type: Plain text
-#: build/C/man2/timer_getoverrun.2:26
+#: build/C/man2/timer_getoverrun.2:29
msgid "timer_getoverrun - get overrun count for a POSIX per-process timer"
-msgstr "timer_getoverrun - get overrun count for a POSIX per-process timer"
+msgstr ""
#. type: Plain text
-#: build/C/man2/timer_getoverrun.2:31
+#: build/C/man2/timer_getoverrun.2:34
#, no-wrap
msgid "B<int timer_getoverrun(timer_t >I<timerid>B<);>\n"
msgstr "B<int timer_getoverrun(timer_t >I<timerid>B<);>\n"
#. type: Plain text
-#: build/C/man2/timer_getoverrun.2:42
+#: build/C/man2/timer_getoverrun.2:45
msgid "B<timer_getoverrun>(): _POSIX_C_SOURCE\\ E<gt>=\\ 199309L"
msgstr "B<timer_getoverrun>(): _POSIX_C_SOURCE\\ E<gt>=\\ 199309L"
#. type: Plain text
-#: build/C/man2/timer_getoverrun.2:53
+#: build/C/man2/timer_getoverrun.2:56
msgid ""
"B<timer_getoverrun>() returns the \"overrun count\" for the timer referred "
"to by I<timerid>. An application can use the overrun count to accurately "
"expiration notifications via signals (B<SIGEV_SIGNAL>), and via threads "
"(B<SIGEV_THREAD>)."
msgstr ""
-"B<timer_getoverrun>() returns the \"overrun count\" for the timer referred "
-"to by I<timerid>. An application can use the overrun count to accurately "
-"calculate the number of timer expirations that would have occurred over a "
-"given time interval. Timer overruns can occur both when receiving "
-"expiration notifications via signals (B<SIGEV_SIGNAL>), and via threads "
-"(B<SIGEV_THREAD>)."
#. type: Plain text
-#: build/C/man2/timer_getoverrun.2:73
+#: build/C/man2/timer_getoverrun.2:76
msgid ""
"When expiration notifications are delivered via a signal, overruns can occur "
"as follows. Regardless of whether or not a real-time signal is used for "
"timer expirations that occurred between the time when the signal was "
"generated and when it was delivered or accepted."
msgstr ""
-"When expiration notifications are delivered via a signal, overruns can occur "
-"as follows. Regardless of whether or not a real-time signal is used for "
-"timer notifications, the system queues at most one signal per timer. (This "
-"is the behavior specified by POSIX.1-2001. The alternative, queuing one "
-"signal for each timer expiration, could easily result in overflowing the "
-"allowed limits for queued signals on the system.) Because of system "
-"scheduling delays, or because the signal may be temporarily blocked, there "
-"can be a delay between the time when the notification signal is generated "
-"and the time when it is delivered (e.g., caught by a signal handler) or "
-"accepted (e.g., using B<sigwaitinfo>(2)). In this interval, further timer "
-"expirations may occur. The timer overrun count is the number of additional "
-"timer expirations that occurred between the time when the signal was "
-"generated and when it was delivered or accepted."
#. type: Plain text
-#: build/C/man2/timer_getoverrun.2:79
+#: build/C/man2/timer_getoverrun.2:82
msgid ""
"Timer overruns can also occur when expiration notifications are delivered "
"via invocation of a thread, since there may be an arbitrary delay between an "
"expiration of the timer and the invocation of the notification thread, and "
-"in that delay interval, additional timer expirations may occur"
+"in that delay interval, additional timer expirations may occur."
msgstr ""
-"Timer overruns can also occur when expiration notifications are delivered "
-"via invocation of a thread, since there may be an arbitrary delay between an "
-"expiration of the timer and the invocation of the notification thread, and "
-"in that delay interval, additional timer expirations may occur"
#. type: Plain text
-#: build/C/man2/timer_getoverrun.2:87
+#: build/C/man2/timer_getoverrun.2:90
msgid ""
"On success, B<timer_getoverrun>() returns the overrun count of the "
"specified timer; this count may be 0 if no overruns have occurred. On "
"failure, -1 is returned, and I<errno> is set to indicate the error."
msgstr ""
-"On success, B<timer_getoverrun>() returns the overrun count of the "
-"specified timer; this count may be 0 if no overruns have occurred. On "
-"failure, -1 is returned, and I<errno> is set to indicate the error."
#. type: Plain text
-#: build/C/man2/timer_getoverrun.2:108
+#: build/C/man2/timer_getoverrun.2:111
msgid ""
"When timer notifications are delivered via signals (B<SIGEV_SIGNAL>), on "
"Linux it is also possible to obtain the overrun count via the I<si_overrun> "
"application to avoid the overhead of making a system call to obtain the "
"overrun count, but is a nonportable extension to POSIX.1-2001."
msgstr ""
-"When timer notifications are delivered via signals (B<SIGEV_SIGNAL>), on "
-"Linux it is also possible to obtain the overrun count via the I<si_overrun> "
-"field of the I<siginfo_t> structure (see B<sigaction>(2)). This allows an "
-"application to avoid the overhead of making a system call to obtain the "
-"overrun count, but is a nonportable extension to POSIX.1-2001."
#. FIXME . Austin bug filed, 11 Feb 09
#. type: Plain text
-#: build/C/man2/timer_getoverrun.2:112
+#: build/C/man2/timer_getoverrun.2:115
msgid ""
-"POSIX.1-2001 only discusses timer overruns in the context of timer "
+"POSIX.1-2001 discusses timer overruns only in the context of timer "
"notifications using signals."
msgstr ""
-"POSIX.1-2001 only discusses timer overruns in the context of timer "
-"notifications using signals."
#. Bug filed: http://bugzilla.kernel.org/show_bug.cgi?id=12665
#. http://thread.gmane.org/gmane.linux.kernel/113276/
#. type: Plain text
-#: build/C/man2/timer_getoverrun.2:125
+#: build/C/man2/timer_getoverrun.2:128
msgid ""
"POSIX.1-2001 specifies that if the timer overrun count is equal to or "
"greater than an implementation-defined maximum, B<DELAYTIMER_MAX>, then "
"maximum representable integer, the counter cycles, starting once more from "
"low values."
msgstr ""
-"POSIX.1-2001 specifies that if the timer overrun count is equal to or "
-"greater than an implementation-defined maximum, B<DELAYTIMER_MAX>, then "
-"B<timer_getoverrun>() should return B<DELAYTIMER_MAX>. However, Linux does "
-"not implement this feature: instead, if the timer overrun value exceeds the "
-"maximum representable integer, the counter cycles, starting once more from "
-"low values."
#. type: Plain text
-#: build/C/man2/timer_getoverrun.2:128 build/C/man2/timer_settime.2:208
+#: build/C/man2/timer_getoverrun.2:131 build/C/man2/timer_settime.2:212
msgid "See B<timer_create>(2)."
-msgstr "See B<timer_create>(2)."
+msgstr ""
#. type: Plain text
-#: build/C/man2/timer_getoverrun.2:138
+#: build/C/man2/timer_getoverrun.2:141
msgid ""
"B<clock_gettime>(2), B<sigaction>(2), B<signalfd>(2), B<sigwaitinfo>(2), "
"B<timer_create>(2), B<timer_delete>(2), B<timer_settime>(2), B<signal>(7), "
"B<time>(7)"
#. type: TH
-#: build/C/man2/timer_settime.2:23
+#: build/C/man2/timer_settime.2:26
#, no-wrap
msgid "TIMER_SETTIME"
msgstr "TIMER_SETTIME"
+#. type: TH
+#: build/C/man2/timer_settime.2:26
+#, no-wrap
+msgid "2012-10-15"
+msgstr "2012-10-15"
+
#. type: Plain text
-#: build/C/man2/timer_settime.2:27
+#: build/C/man2/timer_settime.2:30
msgid ""
"timer_settime, timer_gettime - arm/disarm and fetch state of POSIX per-"
"process timer"
msgstr ""
-"timer_settime, timer_gettime - arm/disarm and fetch state of POSIX per-"
-"process timer"
#. type: Plain text
-#: build/C/man2/timer_settime.2:35
+#: build/C/man2/timer_settime.2:38
#, no-wrap
msgid ""
"B<int timer_settime(timer_t >I<timerid>B<, int >I<flags>B<,>\n"
"B< const struct itimerspec *>I<new_value>B<,>\n"
-"B< struct itimerspec * >I<old_value>B<);>\n"
+"B< struct itimerspec *>I<old_value>B<);>\n"
"B<int timer_gettime(timer_t >I<timerid>B<, struct itimerspec *>I<curr_value>B<);>\n"
msgstr ""
"B<int timer_settime(timer_t >I<timerid>B<, int >I<flags>B<,>\n"
"B< const struct itimerspec *>I<new_value>B<,>\n"
-"B< struct itimerspec * >I<old_value>B<);>\n"
+"B< struct itimerspec *>I<old_value>B<);>\n"
"B<int timer_gettime(timer_t >I<timerid>B<, struct itimerspec *>I<curr_value>B<);>\n"
#. type: Plain text
-#: build/C/man2/timer_settime.2:47
+#: build/C/man2/timer_settime.2:50
msgid ""
"B<timer_settime>(), B<timer_gettime>(): _POSIX_C_SOURCE\\ E<gt>=\\ 199309L"
msgstr ""
"B<timer_settime>(), B<timer_gettime>(): _POSIX_C_SOURCE\\ E<gt>=\\ 199309L"
#. type: Plain text
-#: build/C/man2/timer_settime.2:60
+#: build/C/man2/timer_settime.2:63
msgid ""
"B<timer_settime>() arms or disarms the timer identified by I<timerid>. The "
-"I<new_value> argument is an I<itimerspec> structure that specifies the new "
-"initial value and the new interval for the timer. The I<itimerspec> "
-"structure is defined as follows:"
+"I<new_value> argument is pointer to an I<itimerspec> structure that "
+"specifies the new initial value and the new interval for the timer. The "
+"I<itimerspec> structure is defined as follows:"
msgstr ""
-"B<timer_settime>() arms or disarms the timer identified by I<timerid>. The "
-"I<new_value> argument is an I<itimerspec> structure that specifies the new "
-"initial value and the new interval for the timer. The I<itimerspec> "
-"structure is defined as follows:"
#. type: Plain text
-#: build/C/man2/timer_settime.2:67 build/C/man2/timerfd_create.2:127
+#: build/C/man2/timer_settime.2:70 build/C/man2/timerfd_create.2:135
#, no-wrap
msgid ""
"struct timespec {\n"
"};\n"
#. type: Plain text
-#: build/C/man2/timer_settime.2:72
+#: build/C/man2/timer_settime.2:75
#, no-wrap
msgid ""
"struct itimerspec {\n"
"};\n"
#. type: Plain text
-#: build/C/man2/timer_settime.2:84
+#: build/C/man2/timer_settime.2:87
msgid ""
"Each of the substructures of the I<itimerspec> structure is a I<timespec> "
"structure that allows a time value to be specified in seconds and "
"nanoseconds. These time values are measured according to the clock that was "
-"specified when the timer was created by B<timer_create>(2)"
+"specified when the timer was created by B<timer_create>(2)."
msgstr ""
-"Each of the substructures of the I<itimerspec> structure is a I<timespec> "
-"structure that allows a time value to be specified in seconds and "
-"nanoseconds. These time values are measured according to the clock that was "
-"specified when the timer was created by B<timer_create>(2)"
#. type: Plain text
-#: build/C/man2/timer_settime.2:98
+#: build/C/man2/timer_settime.2:101
msgid ""
"If I<new_value-E<gt>it_value> specifies a nonzero value (i.e., either "
"subfield is nonzero), then B<timer_settime>() arms (starts) the timer, "
"E<gt>it_value> specifies a zero value (i.e., both subfields are zero), then "
"the timer is disarmed."
msgstr ""
-"If I<new_value-E<gt>it_value> specifies a nonzero value (i.e., either "
-"subfield is nonzero), then B<timer_settime>() arms (starts) the timer, "
-"setting it to initially expire at the given time. (If the timer was already "
-"armed, then the previous settings are overwritten.) If I<new_value-"
-"E<gt>it_value> specifies a zero value (i.e., both subfields are zero), then "
-"the timer is disarmed."
#. type: Plain text
-#: build/C/man2/timer_settime.2:110
+#: build/C/man2/timer_settime.2:113
msgid ""
"The I<new_value-E<gt>it_interval> field specifies the period of the timer, "
"in seconds and nanoseconds. If this field is nonzero, then each time that "
"an armed timer expires, the timer is reloaded from the value specified in "
"I<new_value-E<gt>it_interval>. If I<new_value-E<gt>it_interval> specifies a "
-"zero value then the timer expires just once, at the time specified by "
+"zero value, then the timer expires just once, at the time specified by "
"I<it_value>."
msgstr ""
-"The I<new_value-E<gt>it_interval> field specifies the period of the timer, "
-"in seconds and nanoseconds. If this field is nonzero, then each time that "
-"an armed timer expires, the timer is reloaded from the value specified in "
-"I<new_value-E<gt>it_interval>. If I<new_value-E<gt>it_interval> specifies a "
-"zero value then the timer expires just once, at the time specified by "
-"I<it_value>."
#. By experiment: the overrun count is set correctly, for CLOCK_REALTIME.
#. type: Plain text
-#: build/C/man2/timer_settime.2:131
+#: build/C/man2/timer_settime.2:134
msgid ""
"By default, the initial expiration time specified in I<new_value-"
"E<gt>it_value> is interpreted relative to the current time on the timer's "
"passed, then the timer expires immediately, and the overrun count (see "
"B<timer_getoverrun>(2)) will be set correctly."
msgstr ""
-"By default, the initial expiration time specified in I<new_value-"
-"E<gt>it_value> is interpreted relative to the current time on the timer's "
-"clock at the time of the call. This can be modified by specifying "
-"B<TIMER_ABSTIME> in I<flags>, in which case I<new_value-E<gt>it_value> is "
-"interpreted as an absolute value as measured on the timer's clock; that is, "
-"the timer will expire when the clock value reaches the value specified by "
-"I<new_value-E<gt>it_value>. If the specified absolute time has already "
-"passed, then the timer expires immediately, and the overrun count (see "
-"B<timer_getoverrun>(2)) will be set correctly."
#. Similar remarks might apply with respect to process and thread CPU time
#. clocks, but these clocks are not currently (2.6.28) settable on Linux.
#. type: Plain text
-#: build/C/man2/timer_settime.2:141
+#: build/C/man2/timer_settime.2:144
msgid ""
"If the value of the B<CLOCK_REALTIME> clock is adjusted while an absolute "
"timer based on that clock is armed, then the expiration of the timer will be "
"appropriately adjusted. Adjustments to the B<CLOCK_REALTIME> clock have no "
"effect on relative timers based on that clock."
msgstr ""
-"If the value of the B<CLOCK_REALTIME> clock is adjusted while an absolute "
-"timer based on that clock is armed, then the expiration of the timer will be "
-"appropriately adjusted. Adjustments to the B<CLOCK_REALTIME> clock have no "
-"effect on relative timers based on that clock."
#. type: Plain text
-#: build/C/man2/timer_settime.2:149
+#: build/C/man2/timer_settime.2:153
msgid ""
-"If I<old_value> is not NULL, then it returns the previous interval of the "
-"timer (in I<old_value-E<gt>it_interval>) and the amount of time until the "
-"timer would previously have next expired (in I<old_value-E<gt>it_value>)."
+"If I<old_value> is not NULL, then it points to a buffer that is used to "
+"return the previous interval of the timer (in I<old_value-"
+"E<gt>it_interval>) and the amount of time until the timer would previously "
+"have next expired (in I<old_value-E<gt>it_value>)."
msgstr ""
-"If I<old_value> is not NULL, then it returns the previous interval of the "
-"timer (in I<old_value-E<gt>it_interval>) and the amount of time until the "
-"timer would previously have next expired (in I<old_value-E<gt>it_value>)."
#. type: Plain text
-#: build/C/man2/timer_settime.2:169
+#: build/C/man2/timer_settime.2:173
msgid ""
"B<timer_gettime>() returns the time until next expiration, and the "
"interval, for the timer specified by I<timerid>, in the buffer pointed to by "
"I<curr_value-E<gt>it_interval>. If the value returned in I<curr_value-"
"E<gt>it_interval> is zero, then this is a \"one-shot\" timer."
msgstr ""
-"B<timer_gettime>() returns the time until next expiration, and the "
-"interval, for the timer specified by I<timerid>, in the buffer pointed to by "
-"I<curr_value>. The time remaining until the next timer expiration is "
-"returned in I<curr_value-E<gt>it_value>; this is always a relative value, "
-"regardless of whether the B<TIMER_ABSTIME> flag was used when arming the "
-"timer. If the value returned in I<curr_value-E<gt>it_value> is zero, then "
-"the timer is currently disarmed. The timer interval is returned in "
-"I<curr_value-E<gt>it_interval>. If the value returned in I<curr_value-"
-"E<gt>it_interval> is zero, then this is a \"one-shot\" timer."
#. type: Plain text
-#: build/C/man2/timer_settime.2:178
+#: build/C/man2/timer_settime.2:182
msgid ""
"On success, B<timer_settime>() and B<timer_gettime>() return 0. On error, "
"-1 is returned, and I<errno> is set to indicate the error."
msgstr ""
-"On success, B<timer_settime>() and B<timer_gettime>() return 0. On error, "
-"-1 is returned, and I<errno> is set to indicate the error."
#. type: Plain text
-#: build/C/man2/timer_settime.2:180
+#: build/C/man2/timer_settime.2:184
msgid "These functions may fail with the following errors:"
-msgstr "These functions may fail with the following errors:"
+msgstr ""
#. type: Plain text
-#: build/C/man2/timer_settime.2:187
+#: build/C/man2/timer_settime.2:191
msgid "I<new_value>, I<old_value>, or I<curr_value> is not a valid pointer."
-msgstr "I<new_value>, I<old_value>, or I<curr_value> is not a valid pointer."
+msgstr ""
#. FIXME . eventually: invalid value in flags
#. type: Plain text
-#: build/C/man2/timer_settime.2:192
+#: build/C/man2/timer_settime.2:196
msgid "I<timerid> is invalid."
-msgstr "I<timerid> is invalid."
+msgstr ""
#. type: Plain text
-#: build/C/man2/timer_settime.2:195
+#: build/C/man2/timer_settime.2:199
msgid "B<timer_settime>() may fail with the following errors:"
-msgstr "B<timer_settime>() may fail with the following errors:"
+msgstr ""
#. type: Plain text
-#: build/C/man2/timer_settime.2:201
+#: build/C/man2/timer_settime.2:205
msgid ""
"I<new_value.it_value> is negative; or I<new_value.it_value.tv_nsec> is "
"negative or greater than 999,999,999."
msgstr ""
-"I<new_value.it_value> is negative; or I<new_value.it_value.tv_nsec> is "
-"negative or greater than 999,999,999."
#. type: Plain text
-#: build/C/man2/timer_settime.2:203
+#: build/C/man2/timer_settime.2:207
msgid "These system calls are available since Linux 2.6."
-msgstr "These system calls are available since Linux 2.6."
+msgstr "これらのシステムコールは Linux 2.6 以降で利用可能である。"
#. type: Plain text
-#: build/C/man2/timer_settime.2:212
+#: build/C/man2/timer_settime.2:216
msgid "B<timer_create>(2), B<timer_getoverrun>(2), B<time>(7)"
msgstr "B<timer_create>(2), B<timer_getoverrun>(2), B<time>(7)"
#. type: TH
-#: build/C/man2/timerfd_create.2:20
+#: build/C/man2/timerfd_create.2:22
#, no-wrap
msgid "TIMERFD_CREATE"
msgstr "TIMERFD_CREATE"
#. type: TH
-#: build/C/man2/timerfd_create.2:20
-#, fuzzy, no-wrap
-#| msgid "2011-09-18"
+#: build/C/man2/timerfd_create.2:22
+#, no-wrap
msgid "2011-09-14"
-msgstr "2011-09-18"
+msgstr "2011-09-14"
#. type: Plain text
-#: build/C/man2/timerfd_create.2:24
+#: build/C/man2/timerfd_create.2:26
msgid ""
"timerfd_create, timerfd_settime, timerfd_gettime - timers that notify via "
"file descriptors"
msgstr ""
-"timerfd_create, timerfd_settime, timerfd_gettime - ファイルディスクリプタ経由"
-"で通知するタイマー"
+"timerfd_create, timerfd_settime, timerfd_gettime - ファイルディスクリプター経"
+"由で通知するタイマー"
#. type: Plain text
-#: build/C/man2/timerfd_create.2:27
+#: build/C/man2/timerfd_create.2:29
#, no-wrap
msgid "B<#include E<lt>sys/timerfd.hE<gt>>\n"
msgstr "B<#include E<lt>sys/timerfd.hE<gt>>\n"
#. type: Plain text
-#: build/C/man2/timerfd_create.2:29
+#: build/C/man2/timerfd_create.2:31
#, no-wrap
msgid "B<int timerfd_create(int >I<clockid>B<, int >I<flags>B<);>\n"
msgstr "B<int timerfd_create(int >I<clockid>B<, int >I<flags>B<);>\n"
#. type: Plain text
-#: build/C/man2/timerfd_create.2:33
+#: build/C/man2/timerfd_create.2:35
#, no-wrap
msgid ""
"B<int timerfd_settime(int >I<fd>B<, int >I<flags>B<,>\n"
"B< struct itimerspec *>I<old_value>B<);>\n"
#. type: Plain text
-#: build/C/man2/timerfd_create.2:35
+#: build/C/man2/timerfd_create.2:37
#, no-wrap
msgid "B<int timerfd_gettime(int >I<fd>B<, struct itimerspec *>I<curr_value>B<);>\n"
msgstr "B<int timerfd_gettime(int >I<fd>B<, struct itimerspec *>I<curr_value>B<);>\n"
#. type: Plain text
-#: build/C/man2/timerfd_create.2:48
+#: build/C/man2/timerfd_create.2:50
msgid ""
"These system calls create and operate on a timer that delivers timer "
"expiration notifications via a file descriptor. They provide an alternative "
"that the file descriptor may be monitored by B<select>(2), B<poll>(2), and "
"B<epoll>(7)."
msgstr ""
-"これらのシステムコールは、満了通知をファイルディスクリプタ経由で配送する タイ"
-"マーの生成と操作を行う。 これらは、 B<setitimer>(2) や B<timer_create>(2) "
-"を用いる方法の代わりとなるものであり、このファイルディスクリプタを B<select>"
-"(2), B<poll>(2), B<epoll>(7) で監視できるという利点がある。"
+"これらのシステムコールは、満了通知をファイルディスクリプター経由で配送する タ"
+"イマーの生成と操作を行う。 これらは、 B<setitimer>(2) や "
+"B<timer_create>(2) を用いる方法の代わりとなるものであり、このファイルディス"
+"クリプターを B<select>(2), B<poll>(2), B<epoll>(7) で監視できるという利点が"
+"ある。"
#. type: Plain text
-#: build/C/man2/timerfd_create.2:60
+#: build/C/man2/timerfd_create.2:62
msgid ""
"The use of these three system calls is analogous to the use of "
"B<timer_create>(2), B<timer_settime>(2), and B<timer_gettime>(2). (There is "
"は B<read>(2) により提供される)。"
#. type: SS
-#: build/C/man2/timerfd_create.2:60
+#: build/C/man2/timerfd_create.2:62
#, no-wrap
msgid "timerfd_create()"
msgstr "timerfd_create()"
+#. FIXME
+#. Additional clocks are now supported:
+#. CLOCK_REALTIME_ALARM and CLOCK_BOOTTIME_ALARM
+#. Since Linux 3.11, commit 11ffa9d6065f344a9bd769a2452f26f2f671e5f8
+#. CLOCK_BOOTTIME
+#. Since Linux 3.15, commit 4a2378a943f09907fb1ae35c15de917f60289c14
#. type: Plain text
-#: build/C/man2/timerfd_create.2:79
+#: build/C/man2/timerfd_create.2:87
msgid ""
"B<timerfd_create>() creates a new timer object, and returns a file "
"descriptor that refers to that timer. The I<clockid> argument specifies the "
"using B<clock_gettime>(2)."
msgstr ""
"B<timerfd_create>() は新規のタイマーオブジェクトを生成し、そのタイマーを参照"
-"ã\81\99ã\82\8bã\83\95ã\82¡ã\82¤ã\83« ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\82\92è¿\94ã\81\99ã\80\82 I<clockid> å¼\95ã\81\8dæ\95°ã\81¯ã\80\81ã\82¿ã\82¤ã\83\9eã\83¼ã\81®é\80²æ\8d\97ã\82\92管ç\90\86"
-"するためのクロックを指定するもので、 B<CLOCK_REALTIME> か B<CLOCK_MONOTONIC> "
-"のいずれかでなければならない。 B<CLOCK_REALTIME> はシステム全体で使用されるク"
-"ã\83ã\83\83ã\82¯ã\81§ã\80\81ã\81\93ã\81®ã\82¯ã\83ã\83\83ã\82¯ã\81¯å¤\89æ\9b´å\8f¯è\83½ã\81§ã\81\82ã\82\8bã\80\82 B<CLOCK_MONOTONIC> ã\81¯å¤\89æ\9b´ã\81\95ã\82\8cã\82\8bã\81\93ã\81¨"
-"のないクロックで、(システム時刻の手動での変更などの) システムクロックの不連"
-"続な変化の影響を受けない。 これらのクロックの現在の値は B<clock_gettime>(2) "
-"を使って取得できる。"
+"ã\81\99ã\82\8bã\83\95ã\82¡ã\82¤ã\83« ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\83¼ã\82\92è¿\94ã\81\99ã\80\82 I<clockid> å¼\95ã\81\8dæ\95°ã\81¯ã\80\81ã\82¿ã\82¤ã\83\9eã\83¼ã\81®é\80²æ\8d\97ã\82\92管"
+"理するためのクロックを指定するもので、 B<CLOCK_REALTIME> か "
+"B<CLOCK_MONOTONIC> のいずれかでなければならない。 B<CLOCK_REALTIME> はシステ"
+"ã\83 å\85¨ä½\93ã\81§ä½¿ç\94¨ã\81\95ã\82\8cã\82\8bã\82¯ã\83ã\83\83ã\82¯ã\81§ã\80\81ã\81\93ã\81®ã\82¯ã\83ã\83\83ã\82¯ã\81¯å¤\89æ\9b´å\8f¯è\83½ã\81§ã\81\82ã\82\8bã\80\82 "
+"B<CLOCK_MONOTONIC> は変更されることのないクロックで、(システム時刻の手動での"
+"変更などの) システムクロックの不連続な変化の影響を受けない。 これらのクロッ"
+"ã\82¯ã\81®ç\8f¾å\9c¨ã\81®å\80¤ã\81¯ B<clock_gettime>(2) ã\82\92使ã\81£ã\81¦å\8f\96å¾\97ã\81§ã\81\8dã\82\8bã\80\82"
#. type: Plain text
-#: build/C/man2/timerfd_create.2:84
+#: build/C/man2/timerfd_create.2:92
msgid ""
"Starting with Linux 2.6.27, the following values may be bitwise ORed in "
"I<flags> to change the behavior of B<timerfd_create>():"
"ることで、 B<timerfd_create>() の振舞いを変更することができる。"
#. type: TP
-#: build/C/man2/timerfd_create.2:84
+#: build/C/man2/timerfd_create.2:92
#, no-wrap
msgid "B<TFD_NONBLOCK>"
msgstr "B<TFD_NONBLOCK>"
#. type: TP
-#: build/C/man2/timerfd_create.2:92
+#: build/C/man2/timerfd_create.2:100
#, no-wrap
msgid "B<TFD_CLOEXEC>"
msgstr "B<TFD_CLOEXEC>"
#. type: Plain text
-#: build/C/man2/timerfd_create.2:106
+#: build/C/man2/timerfd_create.2:114
msgid ""
"In Linux versions up to and including 2.6.26, I<flags> must be specified as "
"zero."
"しなければならない。"
#. type: SS
-#: build/C/man2/timerfd_create.2:106
+#: build/C/man2/timerfd_create.2:114
#, no-wrap
msgid "timerfd_settime()"
msgstr "timerfd_settime()"
#. type: Plain text
-#: build/C/man2/timerfd_create.2:111
+#: build/C/man2/timerfd_create.2:119
msgid ""
"B<timerfd_settime>() arms (starts) or disarms (stops) the timer referred "
"to by the file descriptor I<fd>."
msgstr ""
-"B<timerfd_settime>() は、ファイルディスクリプタ I<fd> により参照されるタイ"
+"B<timerfd_settime>() は、ファイルディスクリプター I<fd> により参照されるタイ"
"マーを開始したり停止したりする。"
#. type: Plain text
-#: build/C/man2/timerfd_create.2:120
+#: build/C/man2/timerfd_create.2:128
msgid ""
"The I<new_value> argument specifies the initial expiration and interval for "
"the timer. The I<itimer> structure used for this argument contains two "
"2 つのフィールドがあり、各フィールドは I<timespec> 型の構造体である。"
#. type: Plain text
-#: build/C/man2/timerfd_create.2:132
+#: build/C/man2/timerfd_create.2:140
#, no-wrap
msgid ""
"struct itimerspec {\n"
"};\n"
#. type: Plain text
-#: build/C/man2/timerfd_create.2:144
+#: build/C/man2/timerfd_create.2:152
msgid ""
"I<new_value.it_value> specifies the initial expiration of the timer, in "
"seconds and nanoseconds. Setting either field of I<new_value.it_value> to a "
"する。"
#. type: Plain text
-#: build/C/man2/timerfd_create.2:153
+#: build/C/man2/timerfd_create.2:161
msgid ""
"Setting one or both fields of I<new_value.it_interval> to nonzero values "
"specifies the period, in seconds and nanoseconds, for repeated timer "
"時間後に、一回だけ満了して停止する。"
#. 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>)."
+#: build/C/man2/timerfd_create.2:177
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 "
"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> は絶対時刻タイ"
-"ã\83\9eã\83¼ã\82\92æ\84\8få\91³ã\81\97ã\80\81 I<new_value.it_interval> ã\81§ã\81¯ I<clockid> ã\81§æ\8c\87å®\9aã\81\95ã\82\8cã\81\9fã\82¯ã\83ã\83\83ã\82¯"
-"の絶対時刻を指定する。つまり、 クロックの値が I<new_value.it_interval> で指定"
-"ã\81\95ã\82\8cã\81\9fæ\99\82å\88»ã\81«é\81\94ã\81\97ã\81\9fã\82\89ã\80\81ã\82¿ã\82¤ã\83\9eã\83¼ã\81\8cæº\80äº\86ã\81\99ã\82\8bã\80\82"
+"マーを意味し、 I<new_value.it_value> では I<clockid> で指定されたクロックの現"
+"在の値からの相対的な時刻を指定する。 B<TFD_TIMER_ABSTIME> は絶対時刻タイマー"
+"ã\82\92æ\84\8få\91³ã\81\97ã\80\81 I<new_value.it_interval> ã\81§ã\81¯ I<clockid> ã\81§æ\8c\87å®\9aã\81\95ã\82\8cã\81\9fã\82¯ã\83ã\83\83ã\82¯ã\81®çµ¶"
+"対時刻を指定する。 つまり、クロックの値が I<new_value.it_interval> で指定され"
+"た時刻に達したら、タイマーが満了する。"
#. 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."
+#: build/C/man2/timerfd_create.2:188
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."
+"current at the time of the call; see the description of "
+"B<timerfd_gettime>() following."
msgstr ""
-"I<old_value> å¼\95ã\81\8dæ\95°ã\82\92é\80\9aã\81\98ã\81¦ã\80\81 B<timerfd_settime>() ã\82\92å\91¼ã\81³å\87ºã\81\97ã\81\9fæ\99\82ç\82¹ã\81§ã\81®ã\82¿ã\82¤"
-"マーの設定を保持した構造体が返される。 下記の B<timerfd_gettime>() の説明を"
-"参照。"
+"I<old_value> å¼\95ã\81\8dæ\95°ã\81\8c NULL ã\81§ã\81ªã\81\84å ´å\90\88ã\80\81 I<old_value> å¼\95ã\81\8dæ\95°ã\81\8cæ\8c\87ã\81\99 "
+"I<itimerspec> 構造体は、 B<timerfd_settime>() を呼び出した時点でのタイマーの"
+"設定を返すのに使用される。 下記の B<timerfd_gettime>() の説明を参照。"
#. type: SS
-#: build/C/man2/timerfd_create.2:180
+#: build/C/man2/timerfd_create.2:188
#, no-wrap
msgid "timerfd_gettime()"
msgstr "timerfd_gettime()"
#. type: Plain text
-#: build/C/man2/timerfd_create.2:189
+#: build/C/man2/timerfd_create.2:197
msgid ""
"B<timerfd_gettime>() returns, in I<curr_value>, an I<itimerspec> structure "
"that contains the current setting of the timer referred to by the file "
"descriptor I<fd>."
msgstr ""
-"B<timerfd_gettime>() は、ファイルディスクリプタ I<fd> で参照されるタイマーの"
-"現在の設定が入った I<itimerspec> 構造体を、 I<curr_value> に格納して返す。"
+"B<timerfd_gettime>() は、ファイルディスクリプター I<fd> で参照されるタイマー"
+"の現在の設定が入った I<itimerspec> 構造体を、 I<curr_value> に格納して返す。"
#. type: Plain text
-#: build/C/man2/timerfd_create.2:199
+#: build/C/man2/timerfd_create.2:207
msgid ""
"The I<it_value> field returns the amount of time until the timer will next "
"expire. If both fields of this structure are zero, then the timer is "
"常に相対値が格納される。"
#. type: Plain text
-#: build/C/man2/timerfd_create.2:206
+#: build/C/man2/timerfd_create.2:214
msgid ""
"The I<it_interval> field returns the interval of the timer. If both fields "
"of this structure are zero, then the timer is set to expire just once, at "
"だけ満了して停止するように設定されている。"
#. type: SS
-#: build/C/man2/timerfd_create.2:206
+#: build/C/man2/timerfd_create.2:214
#, no-wrap
msgid "Operating on a timer file descriptor"
-msgstr "ã\82¿ã\82¤ã\83\9eã\83¼ã\83»ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿に対する操作"
+msgstr "ã\82¿ã\82¤ã\83\9eã\83¼ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\83¼に対する操作"
#. type: Plain text
-#: build/C/man2/timerfd_create.2:210
+#: build/C/man2/timerfd_create.2:218
msgid ""
"The file descriptor returned by B<timerfd_create>() supports the following "
"operations:"
msgstr ""
-"B<timerfd_create>() ã\81\8cè¿\94ã\81\99ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\81¯ä»¥ä¸\8bã\81®æ\93\8dä½\9cã\82\92ã\82µã\83\9dã\83¼ã\83\88ã\81\97ã\81¦ã\81\84"
-"る。"
+"B<timerfd_create>() ã\81\8cè¿\94ã\81\99ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\83¼ã\81¯ä»¥ä¸\8bã\81®æ\93\8dä½\9cã\82\92ã\82µã\83\9dã\83¼ã\83\88ã\81\97ã\81¦"
+"ã\81\84ã\82\8bã\80\82"
#. type: Plain text
-#: build/C/man2/timerfd_create.2:224
+#: build/C/man2/timerfd_create.2:232
msgid ""
"If the timer has already expired one or more times since its settings were "
"last modified using B<timerfd_settime>(), or since the last successful "
"B<read>(2), then the buffer given to B<read>(2) returns an unsigned 8-byte "
"integer (I<uint64_t>) containing the number of expirations that have "
-"occurred. (The returned value is in host byte order, i.e., the native byte "
-"order for integers on the host machine.)"
+"occurred. (The returned value is in host byte order\\(emthat is, the native "
+"byte order for integers on the host machine.)"
msgstr ""
"B<timerfd_settime>() を使ってタイマーの設定が最後変更されて以降、または "
"B<read>(2) の呼び出しに最後に成功して以降に、タイマーの満了が一回以上発生し"
-"ã\81¦ã\81\84ã\82\8cã\81°ã\80\81 B<read>(2) ã\81«æ¸¡ã\81\95ã\82\8cã\81\9fã\83\90ã\83\83ã\83\95ã\82¡ã\81«ã\80\81ã\82¿ã\82¤ã\83\9eã\83¼æº\80äº\86å\9b\9eæ\95°ã\82\92示ã\81\99 8 ã\83\90ã\82¤ã\83\88"
-"ã\81® unsigned å\9e\8bã\81®æ\95´æ\95° (I<uint64_t>) ã\81\8cè¿\94ã\81\95ã\82\8cã\82\8b (è¿\94ã\81\95ã\82\8cã\82\8bå\80¤ã\81¯ã\83\9bã\82¹ã\83\88ã\83\90ã\82¤ã\83\88ã\82ªã\83¼"
-"ダ、つまりそのホストマシンにおける 整数の通常のバイトオーダである)。"
+"ã\81¦ã\81\84ã\82\8cã\81°ã\80\81 B<read>(2) ã\81«æ¸¡ã\81\95ã\82\8cã\81\9fã\83\90ã\83\83ã\83\95ã\82¡ã\83¼ã\81«ã\80\81ã\82¿ã\82¤ã\83\9eã\83¼æº\80äº\86å\9b\9eæ\95°ã\82\92示ã\81\99 8 ã\83\90ã\82¤"
+"ã\83\88ã\81® unsigned å\9e\8bã\81®æ\95´æ\95° (I<uint64_t>) ã\81\8cè¿\94ã\81\95ã\82\8cã\82\8b (è¿\94ã\81\95ã\82\8cã\82\8bå\80¤ã\81¯ã\83\9bã\82¹ã\83\88ã\83\90ã\82¤ã\83\88"
+"ã\82ªã\83¼ã\83\80ã\80\81ã\81¤ã\81¾ã\82\8aã\81\9dã\81®ã\83\9bã\82¹ã\83\88ã\83\9eã\82·ã\83³ã\81«ã\81\8aã\81\91ã\82\8b æ\95´æ\95°ã\81®é\80\9a常ã\81®ã\83\90ã\82¤ã\83\88ã\82ªã\83¼ã\83\80ã\81§ã\81\82ã\82\8b)ã\80\82"
#. type: Plain text
-#: build/C/man2/timerfd_create.2:237
+#: build/C/man2/timerfd_create.2:245
msgid ""
"If no timer expirations have occurred at the time of the B<read>(2), then "
"the call either blocks until the next timer expiration, or fails with the "
"use of the B<fcntl>(2) B<F_SETFL> operation to set the B<O_NONBLOCK> flag)."
msgstr ""
"B<read>(2) を行った時点でタイマーの満了が発生していなければ、 B<read>(2) は"
-"å\81\9cæ¢ (block) ã\81\99ã\82\8bã\80\81ã\82\82ã\81\97ã\81\8fã\81¯ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\81\8c é\9d\9eå\81\9cæ¢ (nonblocking) ã\81«è¨"
-"定されている場合はエラー B<EAGAIN> で失敗する (非停止モードにするには、 "
+"å\81\9cæ¢ (block) ã\81\99ã\82\8bã\80\81ã\82\82ã\81\97ã\81\8fã\81¯ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\83¼ã\81\8c é\9d\9eå\81\9cæ¢ (nonblocking) ã\81«"
+"設定されている場合はエラー B<EAGAIN> で失敗する (非停止モードにするには、 "
"B<fcntl>(2) の B<F_SETFL> 命令で B<O_NONBLOCK> フラグをセットする)。"
#. type: Plain text
-#: build/C/man2/timerfd_create.2:243
+#: build/C/man2/timerfd_create.2:251
msgid ""
"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) はエラー "
+"渡ã\81\95ã\82\8cã\81\9fã\83\90ã\83\83ã\83\95ã\82¡ã\83¼ã\81®å¤§ã\81\8dã\81\95ã\81\8c 8 ã\83\90ã\82¤ã\83\88æ\9cªæº\80ã\81®å ´å\90\88ã\80\81 B<read>(2) ã\81¯ã\82¨ã\83©ã\83¼ "
"B<EINVAL> で失敗する。"
#. type: Plain text
-#: build/C/man2/timerfd_create.2:254
+#: build/C/man2/timerfd_create.2:262
msgid ""
"The file descriptor is readable (the B<select>(2) I<readfds> argument; the "
"B<poll>(2) B<POLLIN> flag) if one or more timer expirations have occurred."
msgstr ""
-"ä¸\80ã\81¤ä»¥ä¸\8aã\81®ã\82¿ã\82¤ã\83\9eã\83¼æº\80äº\86ã\81\8cç\99ºç\94\9fã\81\97ã\81¦ã\81\84ã\82\8cã\81°ã\80\81 ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\81¯èªã\81¿å\87ºã\81\97å\8f¯è\83½"
-"となる (B<select>(2) の I<readfds> 引き数や B<poll>(2) の B<POLLIN> フラ"
+"ä¸\80ã\81¤ä»¥ä¸\8aã\81®ã\82¿ã\82¤ã\83\9eã\83¼æº\80äº\86ã\81\8cç\99ºç\94\9fã\81\97ã\81¦ã\81\84ã\82\8cã\81°ã\80\81 ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\83¼ã\81¯èªã\81¿å\87ºã\81\97å\8f¯"
+"能となる (B<select>(2) の I<readfds> 引き数や B<poll>(2) の B<POLLIN> フラ"
"グ)。"
#. type: Plain text
-#: build/C/man2/timerfd_create.2:261
+#: build/C/man2/timerfd_create.2:269
msgid ""
"The file descriptor also supports the other file-descriptor multiplexing "
"APIs: B<pselect>(2), B<ppoll>(2), and B<epoll>(7)."
msgstr ""
-"ã\81\93ã\81®ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\81¯ã\80\81ä»\96ã\81®ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿多重 API である "
+"ã\81\93ã\81®ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\83¼ã\81¯ã\80\81ä»\96ã\81®ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\83¼多重 API である "
"B<pselect>(2), B<ppoll>(2), B<epoll>(7) もサポートしている。"
#. type: Plain text
-#: build/C/man2/timerfd_create.2:268
+#: build/C/man2/timerfd_create.2:276
msgid ""
"When the file descriptor is no longer required it should be closed. When "
"all file descriptors associated with the same timer object have been closed, "
"the timer is disarmed and its resources are freed by the kernel."
msgstr ""
-"ファイルディスクリプタがそれ以降は必要なくなった際には、クローズすべきであ"
-"る。 同じ timer オブジェクトに関連付けられたファイルディスクリプタが全て ク"
+"ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\83¼ã\81\8cã\81\9dã\82\8c以é\99\8dã\81¯å¿\85è¦\81ã\81ªã\81\8fã\81ªã\81£ã\81\9fé\9a\9bã\81«ã\81¯ã\80\81ã\82¯ã\83ã\83¼ã\82ºã\81\99ã\81¹ã\81\8dã\81§ã\81\82"
+"ã\82\8bã\80\82 å\90\8cã\81\98 timer ã\82ªã\83\96ã\82¸ã\82§ã\82¯ã\83\88ã\81«é\96¢é\80£ä»\98ã\81\91ã\82\89ã\82\8cã\81\9fã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\83¼ã\81\8cå\85¨ã\81¦ ã\82¯"
"ローズされると、そのタイマーは解除され、 そのオブジェクト用の資源がカーネルに"
"より解放される。"
#. type: Plain text
-#: build/C/man2/timerfd_create.2:280
+#: build/C/man2/timerfd_create.2:288
msgid ""
"After a B<fork>(2), the child inherits a copy of the file descriptor created "
"by B<timerfd_create>(). The file descriptor refers to the same underlying "
-"timer object as the corresponding file descriptor in the parent, and B<read>"
-"(2)s in the child will return information about expirations of the timer."
+"timer object as the corresponding file descriptor in the parent, and "
+"B<read>(2)s in the child will return information about expirations of the "
+"timer."
msgstr ""
"B<fork>(2) が行われると、子プロセスは B<timerfd_create>() により生成された"
-"ファイルディスクリプタのコピーを 継承する。そのファイルディスクリプタは、親プ"
-"ロセスの対応する ファイルディスクリプタと同じタイマーオブジェクトを参照してお"
-"り、 子プロセスの B<read>(2) でも同じタイマーの満了に関する情報が返される。"
+"ファイルディスクリプターのコピーを 継承する。そのファイルディスクリプターは、"
+"親プロセスの対応する ファイルディスクリプターと同じタイマーオブジェクトを参照"
+"しており、 子プロセスの B<read>(2) でも同じタイマーの満了に関する情報が返さ"
+"れる。"
#. type: Plain text
-#: build/C/man2/timerfd_create.2:286
+#: build/C/man2/timerfd_create.2:294
msgid ""
"A file descriptor created by B<timerfd_create>() is preserved across "
"B<execve>(2), and continues to generate timer expirations if the timer was "
"armed."
msgstr ""
"B<execve>(2) の前後で B<timerfd_create>() により生成されたファイルディスク"
-"ã\83ªã\83\97ã\82¿ã\81¯ä¿\9dæ\8c\81ã\81\95ã\82\8cã\80\81 ã\82¿ã\82¤ã\83\9eã\83¼ã\81\8cé\96\8bå§\8bã\81\95ã\82\8cã\81¦ã\81\84ã\81\9få ´å\90\88ã\81«ã\81¯ã\82¿ã\82¤ã\83\9eã\83¼ã\81®æº\80äº\86ã\81\8cç\99ºç\94\9fã\81\97ç¶\9aã\81\91"
-"る。"
+"ã\83ªã\83\97ã\82¿ã\83¼ã\81¯ä¿\9dæ\8c\81ã\81\95ã\82\8cã\80\81 ã\82¿ã\82¤ã\83\9eã\83¼ã\81\8cé\96\8bå§\8bã\81\95ã\82\8cã\81¦ã\81\84ã\81\9få ´å\90\88ã\81«ã\81¯ã\82¿ã\82¤ã\83\9eã\83¼ã\81®æº\80äº\86ã\81\8cç\99ºç\94\9fã\81\97ç¶\9a"
+"ã\81\91ã\82\8bã\80\82"
#. type: Plain text
-#: build/C/man2/timerfd_create.2:293
+#: build/C/man2/timerfd_create.2:301
msgid ""
"On success, B<timerfd_create>() returns a new file descriptor. On error, "
"-1 is returned and I<errno> is set to indicate the error."
msgstr ""
-"成功すると、 B<timerfd_create>() は新しいファイルディスクリプタを返す。 エ"
+"æ\88\90å\8a\9fã\81\99ã\82\8bã\81¨ã\80\81 B<timerfd_create>() ã\81¯æ\96°ã\81\97ã\81\84ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\83¼ã\82\92è¿\94ã\81\99ã\80\82 ã\82¨"
"ラーの場合、-1 を返し、 I<errno> にエラーを示す値を設定する。"
#. type: Plain text
-#: build/C/man2/timerfd_create.2:301
+#: build/C/man2/timerfd_create.2:309
msgid ""
"B<timerfd_settime>() and B<timerfd_gettime>() return 0 on success; on "
"error they return -1, and set I<errno> to indicate the error."
"の場合、-1 を返し、 I<errno> にエラーを示す値を設定する。"
#. type: Plain text
-#: build/C/man2/timerfd_create.2:304
+#: build/C/man2/timerfd_create.2:312
msgid "B<timerfd_create>() can fail with the following errors:"
msgstr "B<timerfd_create>() は以下のエラーで失敗する可能性がある。"
#. type: Plain text
-#: build/C/man2/timerfd_create.2:312
+#: build/C/man2/timerfd_create.2:320
msgid ""
"The I<clockid> argument is neither B<CLOCK_MONOTONIC> nor B<CLOCK_REALTIME>;"
msgstr ""
"I<clockid> 引き数が B<CLOCK_MONOTONIC> でも B<CLOCK_REALTIME> でもない。"
#. type: Plain text
-#: build/C/man2/timerfd_create.2:332
+#: build/C/man2/timerfd_create.2:340
msgid "There was insufficient kernel memory to create the timer."
-msgstr "タイマーを作成するのに十分なカーネルメモリがなかった。"
+msgstr "ã\82¿ã\82¤ã\83\9eã\83¼ã\82\92ä½\9cæ\88\90ã\81\99ã\82\8bã\81®ã\81«å\8d\81å\88\86ã\81ªã\82«ã\83¼ã\83\8dã\83«ã\83¡ã\83¢ã\83ªã\83¼ã\81\8cã\81ªã\81\8bã\81£ã\81\9fã\80\82"
#. type: Plain text
-#: build/C/man2/timerfd_create.2:337
+#: build/C/man2/timerfd_create.2:345
msgid ""
"B<timerfd_settime>() and B<timerfd_gettime>() can fail with the following "
"errors:"
"がある。"
#. type: Plain text
-#: build/C/man2/timerfd_create.2:341
+#: build/C/man2/timerfd_create.2:349
msgid "I<fd> is not a valid file descriptor."
-msgstr "I<fd> が有効なファイルディスクリプタでない。"
+msgstr "I<fd> ã\81\8cæ\9c\89å\8a¹ã\81ªã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\83¼ã\81§ã\81ªã\81\84ã\80\82"
#. type: Plain text
-#: build/C/man2/timerfd_create.2:352
+#: build/C/man2/timerfd_create.2:360
msgid "I<fd> is not a valid timerfd file descriptor."
-msgstr "I<fd> が有効な timerfd ファイルディスクリプタでない。"
+msgstr "I<fd> ã\81\8cæ\9c\89å\8a¹ã\81ª timerfd ã\83\95ã\82¡ã\82¤ã\83«ã\83\87ã\82£ã\82¹ã\82¯ã\83ªã\83\97ã\82¿ã\83¼ã\81§ã\81ªã\81\84ã\80\82"
#. type: Plain text
-#: build/C/man2/timerfd_create.2:355
+#: build/C/man2/timerfd_create.2:363
msgid "B<timerfd_settime>() can also fail with the following errors:"
msgstr "B<timerfd_settime>() は以下のエラーで失敗することもある。"
#. type: Plain text
-#: build/C/man2/timerfd_create.2:361
+#: build/C/man2/timerfd_create.2:369
msgid ""
"I<new_value> is not properly initialized (one of the I<tv_nsec> falls "
"outside the range zero to 999,999,999)."
#. 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.
#. type: Plain text
-#: build/C/man2/timerfd_create.2:367
+#: build/C/man2/timerfd_create.2:375
msgid "I<flags> is invalid."
msgstr "I<flags> が無効である。"
#. type: Plain text
-#: build/C/man2/timerfd_create.2:370
+#: build/C/man2/timerfd_create.2:378
msgid ""
"These system calls are available on Linux since kernel 2.6.25. Library "
"support is provided by glibc since version 2.8."
"これらのシステムコールはカーネル 2.6.25 以降の Linux で利用可能である。 ライ"
"ブラリ側のサポートはバージョン 2.8 以降の glibc で提供されている。"
+#. 2.6.29
+#. type: Plain text
+#: build/C/man2/timerfd_create.2:386
+msgid ""
+"Currently, B<timerfd_create>() supports fewer types of clock IDs than "
+"B<timer_create>(2)."
+msgstr ""
+"現在のところ、 B<timerfd_create>() が対応している clockid の種類は "
+"B<timer_create>(2) よりも少ない。"
+
#. type: Plain text
-#: build/C/man2/timerfd_create.2:381
+#: build/C/man2/timerfd_create.2:395
msgid ""
"The following program creates a timer and then monitors its progress. The "
"program accepts up to three command-line arguments. The first argument "
"る。 第二引き数と第三引き数は省略可能である。"
#. type: Plain text
-#: build/C/man2/timerfd_create.2:383 build/C/man2/wait.2:541
+#: build/C/man2/timerfd_create.2:397 build/C/man2/wait.2:571
msgid "The following shell session demonstrates the use of the program:"
msgstr "以下のシェルのセッションはこのプログラムの使用例を示したものである。"
#. type: Plain text
-#: build/C/man2/timerfd_create.2:398
+#: build/C/man2/timerfd_create.2:412
#, no-wrap
msgid ""
"$B< a.out 3 1 100>\n"
#. #define TFD_TIMER_ABSTIME (1 << 0)
#. ////////////////////////////////////////////////////////////
#. type: Plain text
-#: build/C/man2/timerfd_create.2:447
+#: build/C/man2/timerfd_create.2:461
#, no-wrap
msgid ""
"#include E<lt>sys/timerfd.hE<gt>\n"
"#include E<lt>stdint.hE<gt> /* Definition of uint64_t */\n"
#. type: Plain text
-#: build/C/man2/timerfd_create.2:450
+#: build/C/man2/timerfd_create.2:464
#, no-wrap
msgid ""
"#define handle_error(msg) \\e\n"
" do { perror(msg); exit(EXIT_FAILURE); } while (0)\n"
#. type: Plain text
-#: build/C/man2/timerfd_create.2:458
+#: build/C/man2/timerfd_create.2:472
#, no-wrap
msgid ""
"static void\n"
" int secs, nsecs;\n"
#. type: Plain text
-#: build/C/man2/timerfd_create.2:464
+#: build/C/man2/timerfd_create.2:478
#, no-wrap
msgid ""
" if (first_call) {\n"
" }\n"
#. type: Plain text
-#: build/C/man2/timerfd_create.2:467
+#: build/C/man2/timerfd_create.2:481
#, no-wrap
msgid ""
" if (clock_gettime(CLOCK_MONOTONIC, &curr) == -1)\n"
" handle_error(\"clock_gettime\");\n"
#. type: Plain text
-#: build/C/man2/timerfd_create.2:476
+#: build/C/man2/timerfd_create.2:490
#, no-wrap
msgid ""
" secs = curr.tv_sec - start.tv_sec;\n"
"}\n"
#. type: Plain text
-#: build/C/man2/timerfd_create.2:485
+#: build/C/man2/timerfd_create.2:499
#, no-wrap
msgid ""
"int\n"
" ssize_t s;\n"
#. type: Plain text
-#: build/C/man2/timerfd_create.2:491
+#: build/C/man2/timerfd_create.2:505
#, no-wrap
msgid ""
" if ((argc != 2) && (argc != 4)) {\n"
" }\n"
#. type: Plain text
-#: build/C/man2/timerfd_create.2:494
+#: build/C/man2/timerfd_create.2:508
#, no-wrap
msgid ""
" if (clock_gettime(CLOCK_REALTIME, &now) == -1)\n"
" handle_error(\"clock_gettime\");\n"
#. type: Plain text
-#: build/C/man2/timerfd_create.2:497
+#: build/C/man2/timerfd_create.2:511
#, no-wrap
msgid ""
" /* Create a CLOCK_REALTIME absolute timer with initial\n"
" expiration and interval as specified in command line */\n"
#. type: Plain text
-#: build/C/man2/timerfd_create.2:508
+#: build/C/man2/timerfd_create.2:522
#, no-wrap
msgid ""
" new_value.it_value.tv_sec = now.tv_sec + atoi(argv[1]);\n"
" new_value.it_interval.tv_nsec = 0;\n"
#. type: Plain text
-#: build/C/man2/timerfd_create.2:512
+#: build/C/man2/timerfd_create.2:526
#, no-wrap
msgid ""
" fd = timerfd_create(CLOCK_REALTIME, 0);\n"
" handle_error(\"timerfd_create\");\n"
#. type: Plain text
-#: build/C/man2/timerfd_create.2:515
+#: build/C/man2/timerfd_create.2:529
#, no-wrap
msgid ""
" if (timerfd_settime(fd, TFD_TIMER_ABSTIME, &new_value, NULL) == -1)\n"
" handle_error(\"timerfd_settime\");\n"
#. type: Plain text
-#: build/C/man2/timerfd_create.2:518
+#: build/C/man2/timerfd_create.2:532
#, no-wrap
msgid ""
" print_elapsed_time();\n"
" printf(\"timer started\\en\");\n"
#. type: Plain text
-#: build/C/man2/timerfd_create.2:523
+#: build/C/man2/timerfd_create.2:537
#, no-wrap
msgid ""
" for (tot_exp = 0; tot_exp E<lt> max_exp;) {\n"
" handle_error(\"read\");\n"
#. type: Plain text
-#: build/C/man2/timerfd_create.2:530
+#: build/C/man2/timerfd_create.2:544
#, no-wrap
msgid ""
" tot_exp += exp;\n"
" (unsigned long long) tot_exp);\n"
" }\n"
-#. 2.6.29
-#. type: Plain text
-#: build/C/man2/timerfd_create.2:540
-msgid ""
-"Currently, B<timerfd_create>() supports fewer types of clock IDs than "
-"B<timer_create>(2)."
-msgstr ""
-"現在のところ、 B<timerfd_create>() が対応している clockid の種類は "
-"B<timer_create>(2) よりも少ない。"
-
#. type: Plain text
-#: build/C/man2/timerfd_create.2:552
+#: build/C/man2/timerfd_create.2:560
msgid ""
"B<eventfd>(2), B<poll>(2), B<read>(2), B<select>(2), B<setitimer>(2), "
-"B<signalfd>(2), B<timer_create>(2), B<timer_gettime>(2), B<timer_settime>"
-"(2), B<epoll>(7), B<time>(7)"
+"B<signalfd>(2), B<timer_create>(2), B<timer_gettime>(2), "
+"B<timer_settime>(2), B<epoll>(7), B<time>(7)"
msgstr ""
"B<eventfd>(2), B<poll>(2), B<read>(2), B<select>(2), B<setitimer>(2), "
-"B<signalfd>(2), B<timer_create>(2), B<timer_gettime>(2), B<timer_settime>"
-"(2), B<epoll>(7), B<time>(7)"
+"B<signalfd>(2), B<timer_create>(2), B<timer_gettime>(2), "
+"B<timer_settime>(2), B<epoll>(7), B<time>(7)"
#. type: TH
#: build/C/man2/tkill.2:29
msgstr "B<int tgkill(int >I<tgid>B<, int >I<tid>B<, int >I<sig>B<);>\n"
#. type: Plain text
-#: build/C/man2/tkill.2:51
+#: build/C/man2/tkill.2:54
msgid ""
"B<tgkill>() sends the signal I<sig> to the thread with the thread ID I<tid> "
-"in the thread group I<tgid>. (By contrast, B<kill>(2) can only be used to "
-"send a signal to a process (i.e., thread group) as a whole, and the signal "
+"in the thread group I<tgid>. (By contrast, B<kill>(2) can be used to send "
+"a signal only to a process (i.e., thread group) as a whole, and the signal "
"will be delivered to an arbitrary thread within that process.)"
msgstr ""
-"B<tgkill>() ã\81¯ã\82¹ã\83¬ã\83\83ã\83\89ã\83»ã\82°ã\83«ã\83¼ã\83\97 I<tgid> ã\81«å±\9eã\81\99ã\82\8bã\82¹ã\83¬ã\83\83ã\83\89 ID ã\81\8c I<tid> ã\81®ã\82¹"
+"B<tgkill>() はスレッドグループ I<tgid> に属するスレッド ID が I<tid> のス"
"レッドにシグナル I<sig> を送る。 (これに対し、 B<kill>(2) は一つのプロセス "
-"(ã\81\99ã\81ªã\82\8fã\81¡ã\80\81ã\82¹ã\83¬ã\83\83ã\83\89ã\83»ã\82°ã\83«ã\83¼ã\83\97) ã\81«ã\81¾ã\81¨ã\82\81ã\81¦ã\82·ã\82°ã\83\8aã\83«ã\82\92 é\80\81ã\82\8bã\81®ã\81«ã\81 ã\81\91å\88©ç\94¨ã\81§ã\81\8dã\82\8bã\80\82 "
+"(すなわち、スレッドグループ) にまとめてシグナルを 送るのにだけ利用できる。 "
"B<kill>(2) で送信されたシグナルはプロセス内の任意のスレッドに配送される。)"
+#. FIXME Maybe say something about the following:
+#. http://sourceware.org/bugzilla/show_bug.cgi?id=12889
+#. Rich Felker <bugdal@aerifal.cx>
+#. There is a race condition in pthread_kill: it is possible that,
+#. between the time pthread_kill reads the pid/tid from the target
+#. thread descriptor and the time it makes the tgkill syscall,
+#. the target thread terminates and the same tid gets assigned
+#. to a new thread in the same process.
+#. (The tgkill syscall was designed to eliminate a similar race
+#. condition in tkill, but it only succeeded in eliminating races
+#. where the tid gets reused in a different process, and does not
+#. help if the same tid gets assigned to a new thread in the
+#. same process.)
+#. The only solution I can see is to introduce a mutex that ensures
+#. that a thread cannot exit while pthread_kill is being called on it.
+#. Note that in most real-world situations, like almost all race
+#. conditions, this one will be extremely rare. To make it
+#. measurable, one could exhaust all but 1-2 available pid values,
+#. possibly by lowering the max pid parameter in /proc, forcing
+#. the same tid to be reused rapidly.
#. type: Plain text
-#: build/C/man2/tkill.2:59
+#: build/C/man2/tkill.2:85
msgid ""
-"B<tkill>() is an obsolete predecessor to B<tgkill>(). It only allows the "
+"B<tkill>() is an obsolete predecessor to B<tgkill>(). It allows only the "
"target thread ID to be specified, which may result in the wrong thread being "
"signaled if a thread terminates and its thread ID is recycled. Avoid using "
"this system call."
"れる可能性がある。 このシステムコールの使用は避けること。"
#. type: Plain text
-#: build/C/man2/tkill.2:66
-msgid ""
-"If I<tgid> is specified as -1, B<tgkill>() is equivalent to B<tkill>()."
-msgstr ""
-"I<tgid> に -1 が指定された場合、 B<tgkill>() は B<tkill>() と等価である。"
-
-#. type: Plain text
-#: build/C/man2/tkill.2:69
+#: build/C/man2/tkill.2:88
msgid ""
"These are the raw system call interfaces, meant for internal thread library "
"use."
msgstr ""
-"ã\81\93ã\82\8cã\82\89ã\81¯ã\82·ã\82¹ã\83\86ã\83 ã\82³ã\83¼ã\83«ã\81¸ã\81®ç\9b´æ\8e¥ã\81®ã\82¤ã\83³ã\82¿ã\83¼ã\83\95ã\82§ã\83¼ã\82¹ã\81§ã\81\82ã\82\8aã\80\81 ã\82¹ã\83¬ã\83\83ã\83\89ã\83»ã\83©ã\82¤ã\83\96ã\83©ã\83ª"
-"内部での使用を意図したものである。"
+"ã\81\93ã\82\8cã\82\89ã\81¯ã\82·ã\82¹ã\83\86ã\83 ã\82³ã\83¼ã\83«ã\81¸ã\81®ç\9b´æ\8e¥ã\81®ã\82¤ã\83³ã\82¿ã\83¼ã\83\95ã\82§ã\83¼ã\82¹ã\81§ã\81\82ã\82\8aã\80\81 ã\82¹ã\83¬ã\83\83ã\83\89ã\83©ã\82¤ã\83\96ã\83©ã\83ªå\86\85"
+"部での使用を意図したものである。"
#. type: Plain text
-#: build/C/man2/tkill.2:77
+#: build/C/man2/tkill.2:96
msgid "An invalid thread ID, thread group ID, or signal was specified."
msgstr "指定されたスレッド ID、スレッドグループ ID、シグナルが不正であった。"
#. type: Plain text
-#: build/C/man2/tkill.2:82
+#: build/C/man2/tkill.2:101
msgid "Permission denied. For the required permissions, see B<kill>(2)."
msgstr ""
"許可がなかった。どのような許可が必要かについては、 B<kill>(2) を参照のこと。"
#. type: Plain text
-#: build/C/man2/tkill.2:85
+#: build/C/man2/tkill.2:104
msgid "No process with the specified thread ID (and thread group ID) exists."
msgstr ""
-"æ\8c\87å®\9aã\81\95ã\82\8cã\81\9fã\82¹ã\83¬ã\83\83ã\83\89ID (ã\81¨ã\82¹ã\83¬ã\83\83ã\83\89ã\83»ã\82°ã\83«ã\83¼ã\83\97ID) ã\82\92æ\8c\81ã\81¤ã\83\97ã\83ã\82»ã\82¹ã\81\8cå\98å\9c¨ã\81\97ã\81ªã\81\84ã\80\82"
+"指定されたスレッドID (とスレッドグループID) を持つプロセスが存在しない。"
#. type: Plain text
-#: build/C/man2/tkill.2:90
+#: build/C/man2/tkill.2:109
msgid ""
"B<tkill>() is supported since Linux 2.4.19 / 2.5.4. B<tgkill>() was added "
"in Linux 2.5.75."
"Linux 2.5.75 で追加された。"
#. type: Plain text
-#: build/C/man2/tkill.2:96
+#: build/C/man2/tkill.2:115
msgid ""
"B<tkill>() and B<tgkill>() are Linux-specific and should not be used in "
"programs that are intended to be portable."
"は使用すべきではない。"
#. type: Plain text
-#: build/C/man2/tkill.2:102
+#: build/C/man2/tkill.2:121
msgid ""
"See the description of B<CLONE_THREAD> in B<clone>(2) for an explanation of "
"thread groups."
msgstr ""
-"ã\82¹ã\83¬ã\83\83ã\83\89ã\83»ã\82°ã\83«ã\83¼ã\83\97ã\81®èª¬æ\98\8eã\81«ã\81¤ã\81\84ã\81¦ã\81¯ B<clone>(2) ã\81® B<CLONE_THREAD> ã\81®èª¬æ\98\8eã\82\92å\8f\82"
-"照のこと。"
+"ã\82¹ã\83¬ã\83\83ã\83\89ã\82°ã\83«ã\83¼ã\83\97ã\81®èª¬æ\98\8eã\81«ã\81¤ã\81\84ã\81¦ã\81¯ B<clone>(2) ã\81® B<CLONE_THREAD> ã\81®èª¬æ\98\8eã\82\92å\8f\82ç\85§"
+"のこと。"
#. type: Plain text
-#: build/C/man2/tkill.2:105
+#: build/C/man2/tkill.2:124
msgid ""
"Glibc does not provide wrappers for these system calls; call them using "
"B<syscall>(2)."
"B<syscall>(2) を使って呼び出すこと。"
#. type: Plain text
-#: build/C/man2/tkill.2:110
+#: build/C/man2/tkill.2:129
msgid "B<clone>(2), B<gettid>(2), B<kill>(2), B<rt_sigqueueinfo>(2)"
msgstr "B<clone>(2), B<gettid>(2), B<kill>(2), B<rt_sigqueueinfo>(2)"
#. type: TH
-#: build/C/man2/wait.2:50
+#: build/C/man2/wait.2:49
#, no-wrap
msgid "WAIT"
msgstr "WAIT"
#. type: Plain text
-#: build/C/man2/wait.2:53
+#: build/C/man2/wait.2:52
msgid "wait, waitpid, waitid - wait for process to change state"
msgstr "wait, waitpid, waitid - プロセスの状態変化を待つ"
#. type: Plain text
-#: build/C/man2/wait.2:55
+#: build/C/man2/wait.2:54
msgid "B<#include E<lt>sys/types.hE<gt>>"
msgstr "B<#include E<lt>sys/types.hE<gt>>"
#. type: Plain text
-#: build/C/man2/wait.2:57
+#: build/C/man2/wait.2:56
msgid "B<#include E<lt>sys/wait.hE<gt>>"
msgstr "B<#include E<lt>sys/wait.hE<gt>>"
#. type: Plain text
-#: build/C/man2/wait.2:59
+#: build/C/man2/wait.2:58
msgid "B<pid_t wait(int *>I<status>B<);>"
msgstr "B<pid_t wait(int *>I<status>B<);>"
#. type: Plain text
-#: build/C/man2/wait.2:61
+#: build/C/man2/wait.2:60
msgid ""
"B<pid_t waitpid(pid_t >I<pid>B<, int *>I<status>B<, int >I<options>B<);>"
msgstr ""
"B<pid_t waitpid(pid_t >I<pid>B<, int *>I<status>B<, int >I<options>B<);>"
#. type: Plain text
-#: build/C/man2/wait.2:64
+#: build/C/man2/wait.2:65
+#, no-wrap
msgid ""
-"B<int waitid(idtype_t >I<idtype>B<, id_t >I<id>B<, siginfo_t *>I<infop>B<, "
-"int >I<options>B<);>"
+"B<int waitid(idtype_t >I<idtype>B<, id_t >I<id>B<, siginfo_t *>I<infop>B<, int >I<options>B<);>\n"
+" /* This is the glibc and POSIX interface; see\n"
+" NOTES for information on the raw system call. */\n"
msgstr ""
-"B<int waitid(idtype_t >I<idtype>B<, id_t >I<id>B<, siginfo_t *>I<infop>B<, "
-"int >I<options>B<);>"
+"B<int waitid(idtype_t >I<idtype>B<, id_t >I<id>B<, siginfo_t *>I<infop>B<, int >I<options>B<);>\n"
+" /* これは glibc と POSIX のインターフェイスである。\n"
+" 生のシステムコールについての情報は「注意」の節を参照。 */\n"
#. type: Plain text
-#: build/C/man2/wait.2:73
+#: build/C/man2/wait.2:74
msgid "B<waitid>():"
msgstr "B<waitid>():"
#. type: Plain text
-#: build/C/man2/wait.2:77
+#: build/C/man2/wait.2:78
msgid ""
"_SVID_SOURCE || _XOPEN_SOURCE\\ E<gt>=\\ 500 || _XOPEN_SOURCE\\ &&\\ "
"_XOPEN_SOURCE_EXTENDED"
"_XOPEN_SOURCE_EXTENDED"
#. type: Plain text
-#: build/C/man2/wait.2:92
+#: build/C/man2/wait.2:93
msgid ""
"All of these system calls are used to wait for state changes in a child of "
"the calling process, and obtain information about the child whose state has "
"ける (下記の注意の章を参照のこと)。"
#. type: Plain text
-#: build/C/man2/wait.2:104
+#: build/C/man2/wait.2:105
msgid ""
"If a child has already changed state, then these calls return immediately. "
-"Otherwise they block until either a child changes state or a signal handler "
+"Otherwise, they block until either a child changes state or a signal handler "
"interrupts the call (assuming that system calls are not automatically "
"restarted using the B<SA_RESTART> flag of B<sigaction>(2)). In the "
"remainder of this page, a child whose state has changed and which has not "
"yet been waited upon by one of these system calls is termed I<waitable>."
msgstr ""
"子プロセスの状態変化がすでに発生していた場合、これらのコールは すぐに復帰す"
-"ã\82\8bã\80\82ã\81\9dã\82\8c以å¤\96ã\81®å ´å\90\88ã\81¯ã\80\81å\90ã\83\97ã\83ã\82»ã\82¹ã\81®ç\8a¶æ\85\8bå¤\89å\8c\96ã\81\8cèµ·ã\81\93ã\82\8bã\81\8bã\80\81 ã\82·ã\82°ã\83\8aã\83«ã\83\8fã\83³ã\83\89ã\83©ã\81«ã\82\88ã\82\8a"
-"ã\82·ã\82¹ã\83\86ã\83 ã\82³ã\83¼ã\83«ã\81\8cä¸æ\96ã\81\95ã\82\8cã\82\8bã\81¾ã\81§ã\80\81 å\81\9cæ¢ (block) ã\81\99ã\82\8b (å¾\8cè\80\85ã\81¯ã\80\81 B<sigaction>"
-"(2) の B<SA_RESTART> フラグによりシステムコールが自動的に再スタートするよう"
-"ã\81«ã\81ªã\81£ã\81¦ã\81\84ã\81ªã\81\84 å ´å\90\88ã\81®å\8b\95ä½\9cã\81§ã\81\82ã\82\8b)ã\80\82 以ä¸\8bã\81®èª¬æ\98\8eã\81§ã\81¯ã\80\81ç\8a¶æ\85\8bå¤\89å\8c\96ã\81\8cèµ·ã\81\93ã\81£ã\81\9fã\81\8cã\81\93ã\82\8cã\82\89"
-"ã\81®ã\82·ã\82¹ã\83\86ã\83 ã\82³ã\83¼ã\83«ã\81®ã\81\84ã\81\9aã\82\8cã\81\8bã\81« ã\82\88ã\81£ã\81¦å¾\85ã\81\9fã\82\8cã\81¦ã\81\84ã\81ªã\81\84å\90ã\83\97ã\83ã\82»ã\82¹ã\82\92 I<waitable> (å¾\85"
-"ち可能) と呼ぶ。"
+"ã\82\8bã\80\82ã\81\9dã\82\8c以å¤\96ã\81®å ´å\90\88ã\81¯ã\80\81å\90ã\83\97ã\83ã\82»ã\82¹ã\81®ç\8a¶æ\85\8bå¤\89å\8c\96ã\81\8cèµ·ã\81\93ã\82\8bã\81\8bã\80\81 ã\82·ã\82°ã\83\8aã\83«ã\83\8fã\83³ã\83\89ã\83©ã\83¼ã\81«ã\82\88"
+"ã\82\8aã\82·ã\82¹ã\83\86ã\83 ã\82³ã\83¼ã\83«ã\81\8cä¸æ\96ã\81\95ã\82\8cã\82\8bã\81¾ã\81§ã\80\81 å\81\9cæ¢ (block) ã\81\99ã\82\8b (å¾\8cè\80\85ã\81¯ã\80\81 "
+"B<sigaction>(2) の B<SA_RESTART> フラグによりシステムコールが自動的に再ス"
+"ã\82¿ã\83¼ã\83\88ã\81\99ã\82\8bã\82\88ã\81\86ã\81«ã\81ªã\81£ã\81¦ã\81\84ã\81ªã\81\84 å ´å\90\88ã\81®å\8b\95ä½\9cã\81§ã\81\82ã\82\8b)ã\80\82 以ä¸\8bã\81®èª¬æ\98\8eã\81§ã\81¯ã\80\81ç\8a¶æ\85\8bå¤\89å\8c\96ã\81\8cèµ·"
+"ã\81\93ã\81£ã\81\9fã\81\8cã\81\93ã\82\8cã\82\89ã\81®ã\82·ã\82¹ã\83\86ã\83 ã\82³ã\83¼ã\83«ã\81®ã\81\84ã\81\9aã\82\8cã\81\8bã\81« ã\82\88ã\81£ã\81¦å¾\85ã\81\9fã\82\8cã\81¦ã\81\84ã\81ªã\81\84å\90ã\83\97ã\83ã\82»ã\82¹ã\82\92 "
+"I<waitable> (待ち可能) と呼ぶ。"
#. type: SS
-#: build/C/man2/wait.2:104
+#: build/C/man2/wait.2:105
#, no-wrap
msgid "wait() and waitpid()"
msgstr "wait() と waitpid()"
#. type: Plain text
-#: build/C/man2/wait.2:112
+#: build/C/man2/wait.2:113
msgid ""
"The B<wait>() system call suspends execution of the calling process until "
"one of its children terminates. The call I<wait(&status)> is equivalent to:"
"プロセスの実行を一時停止する。 呼び出し I<wait(&status)> は以下と等価である:"
#. type: Plain text
-#: build/C/man2/wait.2:115
+#: build/C/man2/wait.2:116
#, no-wrap
msgid " waitpid(-1, &status, 0);\n"
msgstr " waitpid(-1, &status, 0);\n"
#. type: Plain text
-#: build/C/man2/wait.2:129
+#: build/C/man2/wait.2:130
msgid ""
"The B<waitpid>() system call suspends execution of the calling process "
"until a child specified by I<pid> argument has changed state. By default, "
"より変更可能である。"
#. type: Plain text
-#: build/C/man2/wait.2:133
+#: build/C/man2/wait.2:134
msgid "The value of I<pid> can be:"
msgstr "I<pid> に指定できる値は以下の通り:"
#. type: IP
-#: build/C/man2/wait.2:133
+#: build/C/man2/wait.2:134
#, no-wrap
msgid "E<lt> -1"
msgstr "E<lt> -1"
#. type: Plain text
-#: build/C/man2/wait.2:137
+#: build/C/man2/wait.2:138
msgid ""
"meaning wait for any child process whose process group ID is equal to the "
"absolute value of I<pid>."
"でを待つ。"
#. type: IP
-#: build/C/man2/wait.2:137
+#: build/C/man2/wait.2:138
#, no-wrap
msgid "-1"
msgstr "-1"
#. type: Plain text
-#: build/C/man2/wait.2:139
+#: build/C/man2/wait.2:140
msgid "meaning wait for any child process."
msgstr "子プロセスのどれかが終了するまで待つ。"
#. type: IP
-#: build/C/man2/wait.2:139
+#: build/C/man2/wait.2:140
#, no-wrap
msgid "0"
msgstr "0"
#. type: Plain text
-#: build/C/man2/wait.2:142
+#: build/C/man2/wait.2:143
msgid ""
"meaning wait for any child process whose process group ID is equal to that "
"of the calling process."
"プロセスグループID が呼び出したプロセスのものと等しい 子プロセスを待つ。"
#. type: IP
-#: build/C/man2/wait.2:142
+#: build/C/man2/wait.2:143
#, no-wrap
msgid "E<gt> 0"
msgstr "E<gt> 0"
#. type: Plain text
-#: build/C/man2/wait.2:146
+#: build/C/man2/wait.2:147
msgid ""
"meaning wait for the child whose process ID is equal to the value of I<pid>."
msgstr "プロセスID が I<pid> に等しい子プロセスを待つ。"
#. type: Plain text
-#: build/C/man2/wait.2:150
+#: build/C/man2/wait.2:151
msgid ""
"The value of I<options> is an OR of zero or more of the following constants:"
msgstr "I<options> の値は次の定数の 0 個以上の論理和である:"
#. type: TP
-#: build/C/man2/wait.2:150 build/C/man2/wait.2:279
+#: build/C/man2/wait.2:151 build/C/man2/wait.2:280
#, no-wrap
msgid "B<WNOHANG>"
msgstr "B<WNOHANG>"
#. type: Plain text
-#: build/C/man2/wait.2:153
+#: build/C/man2/wait.2:154
msgid "return immediately if no child has exited."
msgstr "状態変化が起こった子プロセスがない場合にすぐに復帰する。"
#. type: TP
-#: build/C/man2/wait.2:153
+#: build/C/man2/wait.2:154
#, no-wrap
msgid "B<WUNTRACED>"
msgstr "B<WUNTRACED>"
#. type: Plain text
-#: build/C/man2/wait.2:162
+#: build/C/man2/wait.2:163
msgid ""
"also return if a child has stopped (but not traced via B<ptrace>(2)). "
"Status for I<traced> children which have stopped is provided even if this "
"セスが 「トレース (traced)」されていれば、子プロセスの状態が報告される。"
#. type: TP
-#: build/C/man2/wait.2:162
+#: build/C/man2/wait.2:163
#, no-wrap
msgid "B<WCONTINUED> (since Linux 2.6.10)"
msgstr "B<WCONTINUED> (Linux 2.6.10 以降)"
#. type: Plain text
-#: build/C/man2/wait.2:166
+#: build/C/man2/wait.2:167
msgid ""
"also return if a stopped child has been resumed by delivery of B<SIGCONT>."
msgstr "停止した子プロセスが B<SIGCONT> の配送により再開した場合にも復帰する。"
#. type: Plain text
-#: build/C/man2/wait.2:168
+#: build/C/man2/wait.2:169
msgid "(For Linux-only options, see below.)"
msgstr "(Linux 専用オプションについては後述する)"
#. type: Plain text
-#: build/C/man2/wait.2:182
+#: build/C/man2/wait.2:183
msgid ""
"If I<status> is not NULL, B<wait>() and B<waitpid>() store status "
"information in the I<int> to which it points. This integer can be inspected "
"I<status> が NULL でなければ、 B<wait>() や B<waitpid>() は I<status> で指"
"す I<int> に状態情報を格納する。 この整数は以下のマクロを使って検査できる。 "
"(これらのマクロの引き数には、 B<wait>() や B<waitpid>() が書き込んだ整数そ"
-"のものを指定する。ポインタではない!)"
+"ã\81®ã\82\82ã\81®ã\82\92æ\8c\87å®\9aã\81\99ã\82\8bã\80\82ã\83\9dã\82¤ã\83³ã\82¿ã\83¼ã\81§ã\81¯ã\81ªã\81\84!)"
#. type: TP
-#: build/C/man2/wait.2:182
+#: build/C/man2/wait.2:183
#, no-wrap
msgid "B<WIFEXITED(>I<status>B<)>"
msgstr "B<WIFEXITED(>I<status>B<)>"
#. type: Plain text
-#: build/C/man2/wait.2:190
+#: build/C/man2/wait.2:191
msgid ""
-"returns true if the child terminated normally, that is, by calling B<exit>"
-"(3) or B<_exit>(2), or by returning from main()."
+"returns true if the child terminated normally, that is, by calling "
+"B<exit>(3) or B<_exit>(2), or by returning from main()."
msgstr ""
"子プロセスが正常に終了した場合に真を返す。 「正常に」とは、 B<exit>(3) か "
"B<_exit>(2) が呼び出された場合、もしくは main() から復帰した場合である。"
#. type: TP
-#: build/C/man2/wait.2:190
+#: build/C/man2/wait.2:191
#, no-wrap
msgid "B<WEXITSTATUS(>I<status>B<)>"
msgstr "B<WEXITSTATUS(>I<status>B<)>"
#. type: Plain text
-#: build/C/man2/wait.2:203
+#: build/C/man2/wait.2:204
msgid ""
"returns the exit status of the child. This consists of the least "
"significant 8 bits of the I<status> argument that the child specified in a "
"call to B<exit>(3) or B<_exit>(2) or as the argument for a return "
-"statement in main(). This macro should only be employed if B<WIFEXITED> "
+"statement in main(). This macro should be employed only if B<WIFEXITED> "
"returned true."
msgstr ""
"子プロセスの終了ステータスを返す。 終了ステータスは I<status> 引き数の下位 8"
"ロを使用するのは B<WIFEXITED> が真を返した場合だけにすべきである。"
#. type: TP
-#: build/C/man2/wait.2:203
+#: build/C/man2/wait.2:204
#, no-wrap
msgid "B<WIFSIGNALED(>I<status>B<)>"
msgstr "B<WIFSIGNALED(>I<status>B<)>"
#. type: Plain text
-#: build/C/man2/wait.2:206
+#: build/C/man2/wait.2:207
msgid "returns true if the child process was terminated by a signal."
msgstr "子プロセスがシグナルにより終了した場合に真を返す。"
#. type: TP
-#: build/C/man2/wait.2:206
+#: build/C/man2/wait.2:207
#, no-wrap
msgid "B<WTERMSIG(>I<status>B<)>"
msgstr "B<WTERMSIG(>I<status>B<)>"
#. type: Plain text
-#: build/C/man2/wait.2:213
+#: build/C/man2/wait.2:214
msgid ""
"returns the number of the signal that caused the child process to "
-"terminate. This macro should only be employed if B<WIFSIGNALED> returned "
+"terminate. This macro should be employed only if B<WIFSIGNALED> returned "
"true."
msgstr ""
"子プロセス終了の原因となったシグナルの番号を返す。 このマクロを使用するのは "
"B<WIFSIGNALED> が真を返した場合だけにすべきである。"
#. type: TP
-#: build/C/man2/wait.2:213
+#: build/C/man2/wait.2:214
#, no-wrap
msgid "B<WCOREDUMP(>I<status>B<)>"
msgstr "B<WCOREDUMP(>I<status>B<)>"
#. type: Plain text
-#: build/C/man2/wait.2:222
+#: build/C/man2/wait.2:223
msgid ""
-"returns true if the child produced a core dump. This macro should only be "
-"employed if B<WIFSIGNALED> returned true. This macro is not specified in "
-"POSIX.1-2001 and is not available on some UNIX implementations (e.g., AIX, "
-"SunOS). Only use this enclosed in #ifdef WCOREDUMP ... #endif."
+"returns true if the child produced a core dump. This macro should be "
+"employed only if B<WIFSIGNALED> returned true. This macro is not specified "
+"in POSIX.1-2001 and is not available on some UNIX implementations (e.g., "
+"AIX, SunOS). Only use this enclosed in #ifdef WCOREDUMP ... #endif."
msgstr ""
"子プロセスがコアダンプを生成した場合に真を返す。 このマクロを使用するのは "
"B<WIFSIGNALED> が真を返した場合だけにすべきである。 このマクロは "
"装では利用できない。 必ず #ifdef WCOREDUMP ... #endif で括って使用すること。"
#. type: TP
-#: build/C/man2/wait.2:222
+#: build/C/man2/wait.2:223
#, no-wrap
msgid "B<WIFSTOPPED(>I<status>B<)>"
msgstr "B<WIFSTOPPED(>I<status>B<)>"
#. type: Plain text
-#: build/C/man2/wait.2:229
+#: build/C/man2/wait.2:230
msgid ""
"returns true if the child process was stopped by delivery of a signal; this "
-"is only possible if the call was done using B<WUNTRACED> or when the child "
+"is possible only if the call was done using B<WUNTRACED> or when the child "
"is being traced (see B<ptrace>(2))."
msgstr ""
"子プロセスがシグナルの配送により停止した場合に真を返す。 これが真になるのは、"
"レースされている場合 (B<ptrace>(2) 参照) だけである。"
#. type: TP
-#: build/C/man2/wait.2:229
+#: build/C/man2/wait.2:230
#, no-wrap
msgid "B<WSTOPSIG(>I<status>B<)>"
msgstr "B<WSTOPSIG(>I<status>B<)>"
#. type: Plain text
-#: build/C/man2/wait.2:235
+#: build/C/man2/wait.2:236
msgid ""
"returns the number of the signal which caused the child to stop. This macro "
-"should only be employed if B<WIFSTOPPED> returned true."
+"should be employed only if B<WIFSTOPPED> returned true."
msgstr ""
"子プロセスを停止させたシグナルの番号を返す。 このマクロを使用するのは "
"B<WIFSTOPPED> が 0 以外を返した場合だけにすべきである。"
#. type: TP
-#: build/C/man2/wait.2:235
+#: build/C/man2/wait.2:236
#, no-wrap
msgid "B<WIFCONTINUED(>I<status>B<)>"
msgstr "B<WIFCONTINUED(>I<status>B<)>"
#. type: Plain text
-#: build/C/man2/wait.2:240
+#: build/C/man2/wait.2:241
msgid ""
"(since Linux 2.6.10) returns true if the child process was resumed by "
"delivery of B<SIGCONT>."
"す。"
#. type: SS
-#: build/C/man2/wait.2:240
+#: build/C/man2/wait.2:241
#, no-wrap
msgid "waitid()"
msgstr "waitid()"
#. type: Plain text
-#: build/C/man2/wait.2:245
+#: build/C/man2/wait.2:246
msgid ""
"The B<waitid>() system call (available since Linux 2.6.9) provides more "
"precise control over which child state changes to wait for."
"スのどの状態変化を待つかについてより細かな制御ができる。"
#. type: Plain text
-#: build/C/man2/wait.2:251
+#: build/C/man2/wait.2:252
msgid ""
"The I<idtype> and I<id> arguments select the child(ren) to wait for, as "
"follows:"
msgstr "引き数 I<idtype> と I<id> でどの子プロセスを待つかを選択する:"
#. type: IP
-#: build/C/man2/wait.2:251
+#: build/C/man2/wait.2:252
#, no-wrap
msgid "I<idtype> == B<P_PID>"
msgstr "I<idtype> == B<P_PID>"
#. type: Plain text
-#: build/C/man2/wait.2:254
+#: build/C/man2/wait.2:255
msgid "Wait for the child whose process ID matches I<id>."
msgstr "プロセスID が I<id> と一致する子プロセスを待つ。"
#. type: IP
-#: build/C/man2/wait.2:254
+#: build/C/man2/wait.2:255
#, no-wrap
msgid "I<idtype> == B<P_PGID>"
msgstr "I<idtype> == B<P_PGID>"
#. type: Plain text
-#: build/C/man2/wait.2:257
+#: build/C/man2/wait.2:258
msgid "Wait for any child whose process group ID matches I<id>."
msgstr "プロセスグループID が I<id> と一致する子プロセスを待つ。"
#. type: IP
-#: build/C/man2/wait.2:257
+#: build/C/man2/wait.2:258
#, no-wrap
msgid "I<idtype> == B<P_ALL>"
msgstr "I<idtype> == B<P_ALL>"
#. type: Plain text
-#: build/C/man2/wait.2:261
+#: build/C/man2/wait.2:262
msgid "Wait for any child; I<id> is ignored."
msgstr "子プロセス全部を対象に待つ。 I<id> は無視される。"
#. type: Plain text
-#: build/C/man2/wait.2:265
+#: build/C/man2/wait.2:266
msgid ""
"The child state changes to wait for are specified by ORing one or more of "
"the following flags in I<options>:"
"以上のフラグの論理和をとって指定する):"
#. type: TP
-#: build/C/man2/wait.2:265
+#: build/C/man2/wait.2:266
#, no-wrap
msgid "B<WEXITED>"
msgstr "B<WEXITED>"
#. type: Plain text
-#: build/C/man2/wait.2:268
+#: build/C/man2/wait.2:269
msgid "Wait for children that have terminated."
msgstr "子プロセスの終了を待つ。"
#. type: TP
-#: build/C/man2/wait.2:268
+#: build/C/man2/wait.2:269
#, no-wrap
msgid "B<WSTOPPED>"
msgstr "B<WSTOPPED>"
#. type: Plain text
-#: build/C/man2/wait.2:271
+#: build/C/man2/wait.2:272
msgid "Wait for children that have been stopped by delivery of a signal."
msgstr "子プロセスがシグナルの配送により停止するのを待つ。"
#. type: TP
-#: build/C/man2/wait.2:271
+#: build/C/man2/wait.2:272
#, no-wrap
msgid "B<WCONTINUED>"
msgstr "B<WCONTINUED>"
#. type: Plain text
-#: build/C/man2/wait.2:276
+#: build/C/man2/wait.2:277
msgid ""
"Wait for (previously stopped) children that have been resumed by delivery of "
"B<SIGCONT>."
msgstr "(停止していた) 子プロセスが B<SIGCONT> が配送されて再開するのを待つ。"
#. type: Plain text
-#: build/C/man2/wait.2:279
+#: build/C/man2/wait.2:280
msgid "The following flags may additionally be ORed in I<options>:"
msgstr "さらに以下のフラグを論理和の形で I<options> に指定できる:"
#. type: Plain text
-#: build/C/man2/wait.2:283
+#: build/C/man2/wait.2:284
msgid "As for B<waitpid>()."
msgstr "B<waitpid>() と同様。"
#. type: TP
-#: build/C/man2/wait.2:283
+#: build/C/man2/wait.2:284
#, no-wrap
msgid "B<WNOWAIT>"
msgstr "B<WNOWAIT>"
#. type: Plain text
-#: build/C/man2/wait.2:287
+#: build/C/man2/wait.2:288
msgid ""
"Leave the child in a waitable state; a later wait call can be used to again "
"retrieve the child status information."
"子プロセスの状態情報をもう一度取得することができる。"
#. type: Plain text
-#: build/C/man2/wait.2:294
+#: build/C/man2/wait.2:295
msgid ""
"Upon successful return, B<waitid>() fills in the following fields of the "
"I<siginfo_t> structure pointed to by I<infop>:"
"のフィールドを設定する:"
#. type: Plain text
-#: build/C/man2/wait.2:297
+#: build/C/man2/wait.2:298
msgid "The process ID of the child."
msgstr "子プロセスのプロセスID。"
#. type: Plain text
-#: build/C/man2/wait.2:301
+#: build/C/man2/wait.2:302
msgid ""
"The real user ID of the child. (This field is not set on most other "
"implementations.)"
msgstr ""
-"子プロセスの実ユーザID (このフィールドは他のほとんどの実装では設定されない)。"
+"子プロセスの実ユーザーID (このフィールドは他のほとんどの実装では設定されな"
+"い)。"
#. type: Plain text
-#: build/C/man2/wait.2:305
+#: build/C/man2/wait.2:306
msgid "Always set to B<SIGCHLD>."
msgstr "常に B<SIGCHLD> が設定される。"
#. type: TP
-#: build/C/man2/wait.2:305
+#: build/C/man2/wait.2:306
#, no-wrap
msgid "I<si_status>"
msgstr "I<si_status>"
#. type: Plain text
-#: build/C/man2/wait.2:315
+#: build/C/man2/wait.2:316
msgid ""
-"Either the exit status of the child, as given to B<_exit>(2) (or B<exit>"
-"(3)), or the signal that caused the child to terminate, stop, or continue. "
-"The I<si_code> field can be used to determine how to interpret this field."
+"Either the exit status of the child, as given to B<_exit>(2) (or "
+"B<exit>(3)), or the signal that caused the child to terminate, stop, or "
+"continue. The I<si_code> field can be used to determine how to interpret "
+"this field."
msgstr ""
"B<_exit>(2) (か B<exit>(3)) に指定された子プロセスの終了ステータス、もしく"
"は 子プロセスの終了、停止、再開の原因となったシグナルが設定される。 この"
"きる。"
#. type: Plain text
-#: build/C/man2/wait.2:332
+#: build/C/man2/wait.2:333
msgid ""
"Set to one of: B<CLD_EXITED> (child called B<_exit>(2)); B<CLD_KILLED> "
"(child killed by signal); B<CLD_DUMPED> (child killed by signal, and dumped "
msgstr ""
"以下のいずれかが設定される: B<CLD_EXITED> (子プロセスが B<_exit>(2) を呼び出"
"した); B<CLD_KILLED> (シグナルにより子プロセスが kill された); B<CLD_DUMPED> "
-"(ã\82·ã\82°ã\83\8aã\83«ã\81«ã\82\88ã\82\8aå\90ã\83\97ã\83ã\82»ã\82¹ã\81\8c kill ã\81\95ã\82\8cã\80\81ã\82³ã\82¢ã\83»ã\83\80ã\83³ã\83\97ã\81\8cè¡\8cã\82\8fã\82\8cã\81\9f); "
-"B<CLD_STOPPED> (シグナルにより子プロセスが停止した); B<CLD_TRAPPED> (トレース"
-"ã\81\95ã\82\8cã\81¦ã\81\84ã\81\9få\90ã\83\97ã\83ã\82»ã\82¹ã\81\8cã\83\88ã\83©ã\83\83ã\83\97ã\82\92å\8f\97ä¿¡ã\81\97ã\81\9f); B<CLD_CONTINUED> (B<SIGCONT> ã\81«ã\82\88"
-"り子プロセスが再開された)。"
+"(ã\82·ã\82°ã\83\8aã\83«ã\81«ã\82\88ã\82\8aå\90ã\83\97ã\83ã\82»ã\82¹ã\81\8c kill ã\81\95ã\82\8cã\80\81ã\82³ã\82¢ã\83\80ã\83³ã\83\97ã\81\8cè¡\8cã\82\8fã\82\8cã\81\9f); B<CLD_STOPPED> "
+"(シグナルにより子プロセスが停止した); B<CLD_TRAPPED> (トレースされていた子プ"
+"ã\83ã\82»ã\82¹ã\81\8cã\83\88ã\83©ã\83\83ã\83\97ã\82\92å\8f\97ä¿¡ã\81\97ã\81\9f); B<CLD_CONTINUED> (B<SIGCONT> ã\81«ã\82\88ã\82\8aå\90ã\83\97ã\83ã\82»ã\82¹ã\81\8c"
+"再開された)。"
#. POSIX.1-2001 leaves this possibility unspecified; most
#. implementations (including Linux) zero out the structure
-#. in this case, but at at least one implementation (AIX 5.1)
+#. in this case, but at least one implementation (AIX 5.1)
#. does not -- MTK Nov 04
#. type: Plain text
-#: build/C/man2/wait.2:354
+#: build/C/man2/wait.2:355
msgid ""
"If B<WNOHANG> was specified in I<options> and there were no children in a "
"waitable state, then B<waitid>() returns 0 immediately and the state of the "
"ればよい。"
#. type: Plain text
-#: build/C/man2/wait.2:358
+#: build/C/man2/wait.2:359
msgid ""
"B<wait>(): on success, returns the process ID of the terminated child; on "
"error, -1 is returned."
"-1 を返す。"
#. type: Plain text
-#: build/C/man2/wait.2:367
+#: build/C/man2/wait.2:368
msgid ""
"B<waitpid>(): on success, returns the process ID of the child whose state "
"has changed; if B<WNOHANG> was specified and one or more child(ren) "
"が、どの子プロセスでも 状態変化が起こっていなかった場合は、 0 を返す。 エラー"
"の場合 -1 を返す。"
-#. FIXME: As reported by Vegard Nossum, if infop is NULL, then waitid()
+#. FIXME As reported by Vegard Nossum, if infop is NULL, then waitid()
#. returns the PID of the child. Either this is a bug, or it is intended
#. behavior that needs to be documented. See my Jan 2009 LKML mail
#. "waitid() return value strangeness when infop is NULL".
#. type: Plain text
-#: build/C/man2/wait.2:383
+#: build/C/man2/wait.2:381
+msgid ""
+"B<waitid>(): returns 0 on success or if B<WNOHANG> was specified and no "
+"child(ren) specified by I<id> has yet changed state; on error, -1 is "
+"returned."
+msgstr ""
+"B<waitid>(): 成功すると 0 を返す。 B<WNOHANG> が指定されていて、 I<pid> で指"
+"示された子プロセスで状態変化が起こっていなかった場合にも 0 を返す。"
+
+#. type: Plain text
+#: build/C/man2/wait.2:385
msgid ""
-"B<waitid>(): returns 0 on success or if B<WNOHANG> was specified and no child"
-"(ren) specified by I<id> has yet changed state; on error, -1 is returned. "
"Each of these calls sets I<errno> to an appropriate value in the case of an "
"error."
msgstr ""
-"B<waitid>(): 成功すると 0 を返す。 B<WNOHANG> が指定されていて、 I<pid> で指"
-"示された子プロセスで状態変化が起こっていなかった場合にも 0 を返す。 エラーの"
-"場合 -1 を返す。 エラーの場合、これらのシステムコールはいずれも I<errno> に適"
-"切な値を設定する。"
+"エラーの場合 -1 を返す。 エラーの場合、これらのシステムコールはいずれも "
+"I<errno> に適切な値を設定する。"
#. type: TP
-#: build/C/man2/wait.2:384 build/C/man2/wait.2:389
+#: build/C/man2/wait.2:386 build/C/man2/wait.2:391
#, no-wrap
msgid "B<ECHILD>"
msgstr "B<ECHILD>"
#. type: Plain text
-#: build/C/man2/wait.2:389
+#: build/C/man2/wait.2:391
msgid ""
"(for B<wait>()) The calling process does not have any unwaited-for children."
msgstr ""
"ない。"
#. type: Plain text
-#: build/C/man2/wait.2:409
+#: build/C/man2/wait.2:411
msgid ""
"(for B<waitpid>() or B<waitid>()) The process specified by I<pid> "
"(B<waitpid>()) or I<idtype> and I<id> (B<waitid>()) does not exist or is "
"すること)。"
#. type: Plain text
-#: build/C/man2/wait.2:416
+#: build/C/man2/wait.2:418
msgid ""
"B<WNOHANG> was not set and an unblocked signal or a B<SIGCHLD> was caught; "
"see B<signal>(7)."
"B<SIGCHLD> を受信した。 B<signal>(7) 参照。"
#. type: Plain text
-#: build/C/man2/wait.2:421
+#: build/C/man2/wait.2:423
msgid "The I<options> argument was invalid."
msgstr "I<options> 引き数が不正である。"
#. type: Plain text
-#: build/C/man2/wait.2:436
+#: build/C/man2/wait.2:438
msgid ""
"A child that terminates, but has not been waited for becomes a \"zombie\". "
"The kernel maintains a minimal set of information about the zombie process "
"long as a zombie is not removed from the system via a wait, it will consume "
"a slot in the kernel process table, and if this table fills, it will not be "
"possible to create further processes. If a parent process terminates, then "
-"its \"zombie\" children (if any) are adopted by B<init>(8), which "
+"its \"zombie\" children (if any) are adopted by B<init>(1), which "
"automatically performs a wait to remove the zombies."
msgstr ""
"終了したが、wait されていない子プロセスは「ゾンビ」になる。 後で親プロセスが "
"wait を実行して子プロセスについての情報を取得できるように、 カーネルはゾンビ"
"プロセスについて最小限の情報 (PID、終了ステータス、 リソース使用状況) を保持"
"する。 ゾンビプロセスは、 wait によってシステムから削除されない限り、 カーネ"
-"ã\83«ã\81®ã\83\97ã\83ã\82»ã\82¹ã\83\86ã\83¼ã\83\96ã\83«ã\81® 1 ã\82¨ã\83³ã\83\88ã\83ªã\82\92æ¶\88è²»ã\81\99ã\82\8bã\80\82ã\81\93ã\81®ã\83\97ã\83ã\82»ã\82¹ã\83\86ã\83¼ã\83\96ã\83«ã\81\8c ä¸\80æ\9d¯ã\81«ã\81ª"
-"ã\82\8bã\81¨ã\80\81æ\96°ã\81\9fã\81«ã\83\97ã\83ã\82»ã\82¹ã\82\92ä½\9cã\82\8bã\81\93ã\81¨ã\81\8cã\81§ã\81\8dã\81ªã\81\8fã\81ªã\82\8bã\80\82 親ã\83\97ã\83ã\82»ã\82¹ã\81\8cçµ\82äº\86ã\81\99ã\82\8bã\81¨ã\80\81ã\81\9dã\81®è¦ª"
-"プロセスの「ゾンビ」の 子プロセスは (もしあれば) B<init>(8) の養子となる。 "
-"B<init>(8) は wait を自動的に実行し、ゾンビを削除する。"
+"ã\83«ã\81®ã\83\97ã\83ã\82»ã\82¹ã\83\86ã\83¼ã\83\96ã\83«ã\81® 1 ã\82¨ã\83³ã\83\88ã\83ªã\83¼ã\82\92æ¶\88è²»ã\81\99ã\82\8bã\80\82ã\81\93ã\81®ã\83\97ã\83ã\82»ã\82¹ã\83\86ã\83¼ã\83\96ã\83«ã\81\8c ä¸\80æ\9d¯ã\81«"
+"ã\81ªã\82\8bã\81¨ã\80\81æ\96°ã\81\9fã\81«ã\83\97ã\83ã\82»ã\82¹ã\82\92ä½\9cã\82\8bã\81\93ã\81¨ã\81\8cã\81§ã\81\8dã\81ªã\81\8fã\81ªã\82\8bã\80\82 親ã\83\97ã\83ã\82»ã\82¹ã\81\8cçµ\82äº\86ã\81\99ã\82\8bã\81¨ã\80\81ã\81\9dã\81®"
+"親プロセスの「ゾンビ」の 子プロセスは (もしあれば) B<init>(1) の養子とな"
+"る。 B<init>(1) は wait を自動的に実行し、ゾンビを削除する。"
#. type: Plain text
-#: build/C/man2/wait.2:477
+#: build/C/man2/wait.2:467
msgid ""
"POSIX.1-2001 specifies that if the disposition of B<SIGCHLD> is set to "
"B<SIG_IGN> or the B<SA_NOCLDWAIT> flag is set for B<SIGCHLD> (see "
"POSIX standard left the behavior of setting B<SIGCHLD> to B<SIG_IGN> "
"unspecified. Note that even though the default disposition of B<SIGCHLD> is "
"\"ignore\", explicitly setting the disposition to B<SIG_IGN> results in "
-"different treatment of zombie process children.) Linux 2.6 conforms to this "
-"specification. However, Linux 2.4 (and earlier) does not: if a B<wait>() "
-"or B<waitpid>() call is made while B<SIGCHLD> is being ignored, the call "
-"behaves just as though B<SIGCHLD> were not being ignored, that is, the call "
-"blocks until the next child terminates and then returns the process ID and "
-"status of that child."
+"different treatment of zombie process children.)"
msgstr ""
"POSIX.1-2001 では以下のように規定されている。 B<SIGCHLD> の動作が B<SIG_IGN> "
"に設定されたか、 B<SIGCHLD> に対して B<SA_NOCLDWAIT> フラグが設定された場合 "
"POSIX 標準は B<SIGCHLD> に B<SIG_IGN> を設定した場合の振る舞いを未規定のまま"
"にしている。 B<SIGCHLD> のデフォルトの動作が「無視」であるにもかかわらず、 "
"B<SIGCHLD> の動作として B<SIG_IGN> を明示的に設定した場合にはゾンビプロセスの"
-"子プロセスの扱いが 異なる点に注意すること。) Linux 2.6 はこの仕様に準拠して"
-"いる。 しかし、Linux 2.4 (とそれ以前のバージョン) はそうではない: B<SIGCHLD> "
-"が無視される状態で B<wait>() または B<waitpid>() が呼び出された場合、 "
-"B<SIGCHLD> が無視されていないかのように振る舞う。 つまり、呼び出しによって次"
-"の子プロセスの終了までブロックされ、 終了した子プロセスの PID と状態が返され"
-"る。"
+"子プロセスの扱いが 異なる点に注意すること。)"
#. type: Plain text
-#: build/C/man2/wait.2:493
+#: build/C/man2/wait.2:480
+msgid ""
+"Linux 2.6 conforms to the POSIX requirements. However, Linux 2.4 (and "
+"earlier) does not: if a B<wait>() or B<waitpid>() call is made while "
+"B<SIGCHLD> is being ignored, the call behaves just as though B<SIGCHLD> were "
+"not being ignored, that is, the call blocks until the next child terminates "
+"and then returns the process ID and status of that child."
+msgstr ""
+"Linux 2.6 はこの仕様に準拠している。 しかし、Linux 2.4 (とそれ以前のバージョ"
+"ン) はそうではない: B<SIGCHLD> が無視される状態で B<wait>() または "
+"B<waitpid>() が呼び出された場合、 B<SIGCHLD> が無視されていないかのように振"
+"る舞う。 つまり、呼び出しによって次の子プロセスの終了までブロックされ、 終了"
+"した子プロセスの PID と状態が返される。"
+
+#. type: Plain text
+#: build/C/man2/wait.2:496
msgid ""
"In the Linux kernel, a kernel-scheduled thread is not a distinct construct "
"from a process. Instead, a thread is simply a process that is created using "
msgstr ""
"Linux カーネルでは、カーネルによってスケジュールされるスレッドは プロセスと明"
"確に区別できる構成要素ではない。スレッドは Linux 固有の B<clone>(2) システム"
-"コールを使用して生成されるプロセスに過ぎない。 移植性のある B<pthread_create>"
-"(3) コールのような他のルーチンは B<clone>(2) を使用して実装されている; これ"
-"らでは B<waitid>() を使うことはできない。 Linux 2.4 より前では、スレッドは単"
-"に特殊なプロセスであったので、 例え同じスレッドグループであっても、 あるス"
-"レッドが別のスレッドの子プロセスが終了するのを待つことは出来なかった。 しか"
-"し、POSIX ではこのような機能を規定しており、 Linux 2.4 以降では、あるスレッド"
-"が同じスレッドグループの他のスレッドの 子プロセスが終了するのを待つことができ"
-"るようになった。 そして将来はこれがデフォルトの動作になるであろう。"
+"コールを使用して生成されるプロセスに過ぎない。 移植性のある "
+"B<pthread_create>(3) コールのような他のルーチンは B<clone>(2) を使用して実"
+"装されている; これらでは B<waitid>() を使うことはできない。 Linux 2.4 より前"
+"では、スレッドは単に特殊なプロセスであったので、 例え同じスレッドグループで"
+"あっても、 あるスレッドが別のスレッドの子プロセスが終了するのを待つことは出来"
+"なかった。 しかし、POSIX ではこのような機能を規定しており、 Linux 2.4 以降で"
+"は、あるスレッドが同じスレッドグループの他のスレッドの 子プロセスが終了するの"
+"を待つことができるようになった。 そして将来はこれがデフォルトの動作になるであ"
+"ろう。"
#. type: Plain text
-#: build/C/man2/wait.2:500
+#: build/C/man2/wait.2:503
msgid ""
"The following Linux-specific I<options> are for use with children created "
"using B<clone>(2); they cannot be used with B<waitid>():"
"が使用できる。"
#. type: TP
-#: build/C/man2/wait.2:500
+#: build/C/man2/wait.2:503
#, no-wrap
msgid "B<__WCLONE>"
msgstr "B<__WCLONE>"
#. since 0.99pl10
#. type: Plain text
-#: build/C/man2/wait.2:511
+#: build/C/man2/wait.2:514
msgid ""
-"Wait for \"clone\" children only. If omitted then wait for \"non-clone\" "
+"Wait for \"clone\" children only. If omitted, then wait for \"non-clone\" "
"children only. (A \"clone\" child is one which delivers no signal, or a "
"signal other than B<SIGCHLD> to its parent upon termination.) This option "
"is ignored if B<__WALL> is also specified."
"も指定された場合は無視される。"
#. type: TP
-#: build/C/man2/wait.2:511
+#: build/C/man2/wait.2:514
#, no-wrap
msgid "B<__WALL> (since Linux 2.4)"
msgstr "B<__WALL> (Linux 2.4 以降)"
#. since patch-2.3.48
#. type: Plain text
-#: build/C/man2/wait.2:516
+#: build/C/man2/wait.2:519
msgid "Wait for all children, regardless of type (\"clone\" or \"non-clone\")."
msgstr "\"clone\" であるかないかに関わらず、 全ての子プロセスを待つ。"
#. type: TP
-#: build/C/man2/wait.2:516
+#: build/C/man2/wait.2:519
#, no-wrap
msgid "B<__WNOTHREAD> (since Linux 2.4)"
msgstr "B<__WNOTHREAD> (Linux 2.4 以降)"
#. since patch-2.4.0-test8
#. type: Plain text
-#: build/C/man2/wait.2:522
+#: build/C/man2/wait.2:525
msgid ""
"Do not wait for children of other threads in the same thread group. This "
"was the default before Linux 2.4."
"同じスレッドグループの他のスレッドの子プロセスは待たない。 Linux 2.4 より前で"
"はデフォルトであった。"
+#. type: Plain text
+#: build/C/man2/wait.2:537
+msgid ""
+"The raw B<waitid>() system call takes a fifth argument, of type I<struct "
+"rusage\\ *>. If this argument is non-NULL, then it is used to return "
+"resource usage information about the child, in the same manner as "
+"B<wait4>(2). See B<getrusage>(2) for details."
+msgstr ""
+"生の B<waitid>() システムコールは I<struct rusage\\ *> 型の第 5 引数を取る。 "
+"この引数が NULL 以外の場合、 この引数が子プロセスのリソース使用状況を返すのに"
+"使用される。 これは B<wait4>(2) と同じ方法である。 詳細は B<getrusage>(2) を"
+"参照。"
+
+#. type: Plain text
+#: build/C/man2/wait.2:552
+msgid ""
+"According to POSIX.1-2008, an application calling B<waitid>() must ensure "
+"that I<infop> points to a I<siginfo_t> structure (i.e., that it is a non-"
+"null pointer). On Linux, if I<infop> is NULL, B<waitid>() succeeds, and "
+"returns the process ID of the waited-for child. Applications should avoid "
+"relying on this inconsistent, nonstandard, and unnecessary feature."
+msgstr ""
+"POSIX.1-2008 によると、 B<waitid>() を呼び出すアプリケーションは、 I<infop> "
+"が I<siginfo_t> 構造体を指していること (つまり I<infop> が NULL でないポイン"
+"ターであること) を保証しなければならない。 Linux では、 I<infop> が NULL の場"
+"合、 B<waitid>() は成功し、wait している子プロセスのプロセス ID を返す。 アプ"
+"リケーションは、この食い違った、非標準で、不必要な機能に依存しないようにすべ"
+"きである。"
+
#. fork.2 refers to this example program.
#. type: Plain text
-#: build/C/man2/wait.2:539
+#: build/C/man2/wait.2:569
msgid ""
"The following program demonstrates the use of B<fork>(2) and B<waitpid>(). "
"The program creates a child process. If no command-line argument is "
-"supplied to the program, then the child suspends its execution using B<pause>"
-"(2), to allow the user to send signals to the child. Otherwise, if a "
-"command-line argument is supplied, then the child exits immediately, using "
+"supplied to the program, then the child suspends its execution using "
+"B<pause>(2), to allow the user to send signals to the child. Otherwise, if "
+"a command-line argument is supplied, then the child exits immediately, using "
"the integer supplied on the command line as the exit status. The parent "
"process executes a loop that monitors the child using B<waitpid>(), and uses "
"the W*() macros described above to analyze the wait status value."
"以下のプログラムは、 B<fork>(2) と B<waitpid>() の使用方法の例を示してい"
"る。 このプログラムでは子プロセスを生成する。 コマンドライン引き数が指定され"
"なかったときは、 子プロセスは B<pause>(2) を使ってその実行を一時停止し、ユー"
-"ã\82¶ã\81\8cã\81\9dã\81®å\90ã\83\97ã\83ã\82»ã\82¹ã\81« ã\82·ã\82°ã\83\8aã\83«ã\82\92é\80\81ä¿¡ã\81§ã\81\8dã\82\8bã\82\88ã\81\86ã\81«ã\81\99ã\82\8bã\80\82 ã\82³ã\83\9eã\83³ã\83\89ã\83©ã\82¤ã\83³å¼\95ã\81\8dæ\95°ã\81\8c"
-"指定された場合は、 子プロセスは直ちに終了し、 コマンドラインで指定された整数"
-"を終了ステータスとして使用する。 親プロセスは、 B<waitpid>() を使って子プロ"
-"ã\82»ã\82¹ã\82\92ç\9b£è¦\96ã\81\97ã\80\81 wait ã\81®ã\82¹ã\83\86ã\83¼ã\82¿ã\82¹å\80¤ã\82\92ä¸\8aè¨\98ã\81® W*() ã\83\9eã\82¯ã\83ã\82\92使ã\81£ã\81¦è§£æ\9e\90ã\81\99ã\82\8bã\81¨ã\81\84ã\81\86 "
-"ループを実行する。"
+"ã\82¶ã\83¼ã\81\8cã\81\9dã\81®å\90ã\83\97ã\83ã\82»ã\82¹ã\81« ã\82·ã\82°ã\83\8aã\83«ã\82\92é\80\81ä¿¡ã\81§ã\81\8dã\82\8bã\82\88ã\81\86ã\81«ã\81\99ã\82\8bã\80\82 ã\82³ã\83\9eã\83³ã\83\89ã\83©ã\82¤ã\83³å¼\95ã\81\8dæ\95°"
+"が指定された場合は、 子プロセスは直ちに終了し、 コマンドラインで指定された整"
+"数を終了ステータスとして使用する。 親プロセスは、 B<waitpid>() を使って子プ"
+"ã\83ã\82»ã\82¹ã\82\92ç\9b£è¦\96ã\81\97ã\80\81 wait ã\81®ã\82¹ã\83\86ã\83¼ã\82¿ã\82¹å\80¤ã\82\92ä¸\8aè¨\98ã\81® W*() ã\83\9eã\82¯ã\83ã\82\92使ã\81£ã\81¦è§£æ\9e\90ã\81\99ã\82\8bã\81¨ã\81\84"
+"ã\81\86 ã\83«ã\83¼ã\83\97ã\82\92å®\9fè¡\8cã\81\99ã\82\8bã\80\82"
#. type: Plain text
-#: build/C/man2/wait.2:555
+#: build/C/man2/wait.2:585
#, no-wrap
msgid ""
"$B< ./a.out &>\n"
"$\n"
#. type: Plain text
-#: build/C/man2/wait.2:564
+#: build/C/man2/wait.2:594
#, no-wrap
msgid ""
"#include E<lt>sys/wait.hE<gt>\n"
"#include E<lt>stdio.hE<gt>\n"
#. type: Plain text
-#: build/C/man2/wait.2:570
+#: build/C/man2/wait.2:600
#, no-wrap
msgid ""
"int\n"
" int status;\n"
#. type: Plain text
-#: build/C/man2/wait.2:576
+#: build/C/man2/wait.2:606
#, no-wrap
msgid ""
" cpid = fork();\n"
" }\n"
#. type: Plain text
-#: build/C/man2/wait.2:582
+#: build/C/man2/wait.2:612
#, no-wrap
msgid ""
" if (cpid == 0) { /* Code executed by child */\n"
" _exit(atoi(argv[1]));\n"
#. type: Plain text
-#: build/C/man2/wait.2:590
+#: build/C/man2/wait.2:620
#, no-wrap
msgid ""
" } else { /* Code executed by parent */\n"
" }\n"
#. type: Plain text
-#: build/C/man2/wait.2:604
+#: build/C/man2/wait.2:634
#, no-wrap
msgid ""
" if (WIFEXITED(status)) {\n"
"}\n"
#. type: Plain text
-#: build/C/man2/wait.2:617
+#: build/C/man2/wait.2:647
msgid ""
-"B<_exit>(2), B<clone>(2), B<fork>(2), B<kill>(2), B<ptrace>(2), B<sigaction>"
-"(2), B<signal>(2), B<wait4>(2), B<pthread_create>(3), B<credentials>(7), "
-"B<signal>(7)"
+"B<_exit>(2), B<clone>(2), B<fork>(2), B<kill>(2), B<ptrace>(2), "
+"B<sigaction>(2), B<signal>(2), B<wait4>(2), B<pthread_create>(3), "
+"B<credentials>(7), B<signal>(7)"
msgstr ""
-"B<_exit>(2), B<clone>(2), B<fork>(2), B<kill>(2), B<ptrace>(2), B<sigaction>"
-"(2), B<signal>(2), B<wait4>(2), B<pthread_create>(3), B<credentials>(7), "
-"B<signal>(7)"
+"B<_exit>(2), B<clone>(2), B<fork>(2), B<kill>(2), B<ptrace>(2), "
+"B<sigaction>(2), B<signal>(2), B<wait4>(2), B<pthread_create>(3), "
+"B<credentials>(7), B<signal>(7)"
#. type: TH
-#: build/C/man2/wait4.2:34
+#: build/C/man2/wait4.2:33
#, no-wrap
msgid "WAIT4"
msgstr "WAIT4"
+#. type: TH
+#: build/C/man2/wait4.2:33
+#, no-wrap
+msgid "2012-09-23"
+msgstr "2012-09-23"
+
#. type: Plain text
-#: build/C/man2/wait4.2:37
+#: build/C/man2/wait4.2:36
msgid "wait3, wait4 - wait for process to change state, BSD style"
msgstr "wait3, wait4 - BSD スタイルでプロセスの状態変化を待つ"
#. type: Plain text
-#: build/C/man2/wait4.2:43
+#: build/C/man2/wait4.2:42
#, no-wrap
msgid ""
"B<#include E<lt>sys/types.hE<gt>>\n"
"B<#include E<lt>sys/wait.hE<gt>>\n"
#. type: Plain text
-#: build/C/man2/wait4.2:46
+#: build/C/man2/wait4.2:45
#, no-wrap
msgid ""
"B<pid_t wait3(int *>I<status>B<, int >I<options>B<,>\n"
"B< struct rusage *>I<rusage>B<);>\n"
#. type: Plain text
-#: build/C/man2/wait4.2:49
+#: build/C/man2/wait4.2:48
#, no-wrap
msgid ""
"B<pid_t wait4(pid_t >I<pid>B<, int *>I<status>B<, int >I<options>B<,>\n"
"B< struct rusage *>I<rusage>B<);>\n"
#. type: Plain text
-#: build/C/man2/wait4.2:58
+#: build/C/man2/wait4.2:57
msgid "B<wait3>():"
msgstr "B<wait3>():"
#. type: Plain text
-#: build/C/man2/wait4.2:64
+#: build/C/man2/wait4.2:63
msgid "B<wait4>():"
msgstr "B<wait4>():"
#. type: Plain text
-#: build/C/man2/wait4.2:66
+#: build/C/man2/wait4.2:65
msgid "_BSD_SOURCE"
msgstr "_BSD_SOURCE"
#. type: Plain text
-#: build/C/man2/wait4.2:78
+#: build/C/man2/wait4.2:73
+msgid ""
+"These functions are obsolete; use B<waitpid>(2) or B<waitid>(2) in new "
+"programs."
+msgstr ""
+"これらの関数は廃止予定である。 新しいプログラムでは B<waitpid>(2) や "
+"B<waitid>(2) を使用すること。"
+
+#. type: Plain text
+#: build/C/man2/wait4.2:83
msgid ""
"The B<wait3>() and B<wait4>() system calls are similar to B<waitpid>(2), "
"but additionally return resource usage information about the child in the "
"入れて返す。"
#. type: Plain text
-#: build/C/man2/wait4.2:84
+#: build/C/man2/wait4.2:89
msgid ""
"Other than the use of the I<rusage> argument, the following B<wait3>() call:"
msgstr "I<rusage> を使用する点を除けば、次の B<wait3>() の呼び出し"
#. type: Plain text
-#: build/C/man2/wait4.2:87
+#: build/C/man2/wait4.2:92
#, no-wrap
msgid " wait3(status, options, rusage);\n"
msgstr " wait3(status, options, rusage);\n"
#. type: Plain text
-#: build/C/man2/wait4.2:90 build/C/man2/wait4.2:104
+#: build/C/man2/wait4.2:95 build/C/man2/wait4.2:109
msgid "is equivalent to:"
msgstr "は以下と等価である。"
#. type: Plain text
-#: build/C/man2/wait4.2:93
+#: build/C/man2/wait4.2:98
#, no-wrap
msgid " waitpid(-1, status, options);\n"
msgstr " waitpid(-1, status, options);\n"
#. type: Plain text
-#: build/C/man2/wait4.2:98
+#: build/C/man2/wait4.2:103
msgid "Similarly, the following B<wait4>() call:"
msgstr "同様に、次の B<wait4>() の呼び出し"
#. type: Plain text
-#: build/C/man2/wait4.2:101
+#: build/C/man2/wait4.2:106
#, no-wrap
msgid " wait4(pid, status, options, rusage);\n"
msgstr " wait4(pid, status, options, rusage);\n"
#. type: Plain text
-#: build/C/man2/wait4.2:107
+#: build/C/man2/wait4.2:112
#, no-wrap
msgid " waitpid(pid, status, options);\n"
msgstr " waitpid(pid, status, options);\n"
#. type: Plain text
-#: build/C/man2/wait4.2:117
+#: build/C/man2/wait4.2:122
msgid ""
"In other words, B<wait3>() waits of any child, while B<wait4>() can be "
-"used to select a specific child, or children, on which to wait. See B<wait>"
-"(2) for further details."
+"used to select a specific child, or children, on which to wait. See "
+"B<wait>(2) for further details."
msgstr ""
"言い換えると、 B<wait3>() は全ての子プロセスを対象に待つが、 B<wait4>() で"
"は特定の子プロセス (複数可) を選んで待つことができる。"
#. type: Plain text
-#: build/C/man2/wait4.2:127
+#: build/C/man2/wait4.2:132
msgid ""
"If I<rusage> is not NULL, the I<struct rusage> to which it points will be "
"filled with accounting information about the child. See B<getrusage>(2) "
"スのアカウント情報が格納される。 詳しくは B<getrusage>(2) を参照のこと。"
#. type: Plain text
-#: build/C/man2/wait4.2:130 build/C/man2/wait4.2:133
+#: build/C/man2/wait4.2:135 build/C/man2/wait4.2:138
msgid "As for B<waitpid>(2)."
msgstr "B<waitpid>(2) と同様。"
#. type: Plain text
-#: build/C/man2/wait4.2:135
+#: build/C/man2/wait4.2:140
msgid "4.3BSD."
msgstr "4.3BSD."
#. type: Plain text
#: build/C/man2/wait4.2:147
msgid ""
+"SUSv1 included a specification of B<wait3>(); SUSv2 included B<wait3>(), but "
+"marked it LEGACY; SUSv3 removed it."
+msgstr ""
+"SUSv1 には B<wait3>() の規定があった。 SUSv2 には B<wait3>() が含まれていた"
+"が、「過去の名残 (LEGACY)」となっていた。 SUSv3 では B<wait3>() は削除され"
+"た。"
+
+#. type: Plain text
+#: build/C/man2/wait4.2:159
+msgid ""
"Including I<E<lt>sys/time.hE<gt>> is not required these days, but increases "
"portability. (Indeed, I<E<lt>sys/resource.hE<gt>> defines the I<rusage> "
"structure with fields of type I<struct timeval> defined in I<E<lt>sys/time."
"I<struct timeval> 型は I<E<lt>sys/time.hE<gt>> で定義されている)。"
#. type: Plain text
-#: build/C/man2/wait4.2:153
+#: build/C/man2/wait4.2:165
msgid ""
"On Linux, B<wait3>() is a library function implemented on top of the "
"B<wait4>() system call."
"を使って実装されている。"
#. type: Plain text
-#: build/C/man2/wait4.2:160
+#: build/C/man2/wait4.2:172
msgid ""
"B<fork>(2), B<getrusage>(2), B<sigaction>(2), B<signal>(2), B<wait>(2), "
"B<signal>(7)"
msgstr ""
"B<fork>(2), B<getrusage>(2), B<sigaction>(2), B<signal>(2), B<wait>(2), "
"B<signal>(7)"
-
-#~ 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> を設定する。"
-
-#~ msgid ""
-#~ "I<si_int> and I<si_ptr> are specified by the sender of the POSIX.1b "
-#~ "signal. See B<sigqueue>(2) for more details."
-#~ msgstr ""
-#~ "I<si_int> と I<si_ptr> は POSIX.1b シグナルの送信者によって指定される。 詳"
-#~ "細は B<sigqueue>(2) を参照のこと。"
-
-#~ msgid ""
-#~ "B<SIGILL>, B<SIGFPE>, B<SIGSEGV>, and B<SIGBUS> fill in I<si_addr> with "
-#~ "the address of the fault. B<SIGPOLL> fills in I<si_band> and I<si_fd>."
-#~ 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"