OSDN Git Service

(split) LDP: Translation snapshots of ja.po.
[linuxjm/LDP_man-pages.git] / po4a / pthread / po / ja.po
index 65bd594..02b16b3 100644 (file)
@@ -6,8 +6,8 @@
 msgid ""
 msgstr ""
 "Project-Id-Version: PACKAGE VERSION\n"
-"POT-Creation-Date: 2012-03-19 23:50+0900\n"
-"PO-Revision-Date: 2012-03-22 03:49+0900\n"
+"POT-Creation-Date: 2012-05-28 07:16+0900\n"
+"PO-Revision-Date: 2012-06-04 23:34+0900\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: LANGUAGE <LL@li.org>\n"
 "Language: \n"
@@ -179,31 +179,31 @@ msgstr "B<int setcontext(const ucontext_t *>I<ucp>B<);>"
 
 #. type: SH
 #: build/C/man2/getcontext.2:32 build/C/man3/makecontext.3:35
-#: build/C/man3/pthread_attr_init.3:36
-#: build/C/man3/pthread_attr_setaffinity_np.3:39
-#: build/C/man3/pthread_attr_setdetachstate.3:38
-#: build/C/man3/pthread_attr_setguardsize.3:38
-#: build/C/man3/pthread_attr_setinheritsched.3:38
-#: build/C/man3/pthread_attr_setschedparam.3:38
-#: build/C/man3/pthread_attr_setschedpolicy.3:38
-#: build/C/man3/pthread_attr_setscope.3:38
+#: build/C/man3/pthread_attr_init.3:37
+#: build/C/man3/pthread_attr_setaffinity_np.3:40
+#: build/C/man3/pthread_attr_setdetachstate.3:39
+#: build/C/man3/pthread_attr_setguardsize.3:39
+#: build/C/man3/pthread_attr_setinheritsched.3:39
+#: build/C/man3/pthread_attr_setschedparam.3:39
+#: build/C/man3/pthread_attr_setschedpolicy.3:39
+#: build/C/man3/pthread_attr_setscope.3:39
 #: build/C/man3/pthread_attr_setstack.3:52
-#: build/C/man3/pthread_attr_setstackaddr.3:38
-#: build/C/man3/pthread_attr_setstacksize.3:38
-#: build/C/man3/pthread_cancel.3:34 build/C/man3/pthread_cleanup_push.3:37
-#: build/C/man3/pthread_cleanup_push_defer_np.3:37
+#: build/C/man3/pthread_attr_setstackaddr.3:39
+#: build/C/man3/pthread_attr_setstacksize.3:39
+#: build/C/man3/pthread_cancel.3:35 build/C/man3/pthread_cleanup_push.3:38
+#: build/C/man3/pthread_cleanup_push_defer_np.3:38
 #: build/C/man3/pthread_create.3:36 build/C/man3/pthread_detach.3:35
-#: build/C/man3/pthread_equal.3:34 build/C/man3/pthread_exit.3:34
-#: build/C/man3/pthread_getattr_np.3:35
-#: build/C/man3/pthread_getcpuclockid.3:35 build/C/man3/pthread_join.3:35
+#: build/C/man3/pthread_equal.3:35 build/C/man3/pthread_exit.3:35
+#: build/C/man3/pthread_getattr_np.3:36
+#: build/C/man3/pthread_getcpuclockid.3:36 build/C/man3/pthread_join.3:35
 #: build/C/man3/pthread_kill.3:35
 #: build/C/man3/pthread_kill_other_threads_np.3:33
-#: build/C/man3/pthread_self.3:34 build/C/man3/pthread_setaffinity_np.3:39
-#: build/C/man3/pthread_setcancelstate.3:36
-#: build/C/man3/pthread_setconcurrency.3:35
-#: build/C/man3/pthread_setschedparam.3:38
-#: build/C/man3/pthread_setschedprio.3:34 build/C/man3/pthread_sigmask.3:36
-#: build/C/man3/pthread_sigqueue.3:43 build/C/man3/pthread_testcancel.3:34
+#: build/C/man3/pthread_self.3:35 build/C/man3/pthread_setaffinity_np.3:40
+#: build/C/man3/pthread_setcancelstate.3:37
+#: build/C/man3/pthread_setconcurrency.3:36
+#: build/C/man3/pthread_setschedparam.3:39
+#: build/C/man3/pthread_setschedprio.3:35 build/C/man3/pthread_sigmask.3:36
+#: build/C/man3/pthread_sigqueue.3:43 build/C/man3/pthread_testcancel.3:35
 #: build/C/man3/pthread_tryjoin_np.3:40 build/C/man3/pthread_yield.3:34
 #: build/C/man7/pthreads.7:27
 #, no-wrap
@@ -338,29 +338,29 @@ msgstr ""
 
 #. type: SH
 #: build/C/man2/getcontext.2:114 build/C/man3/makecontext.3:81
-#: build/C/man3/pthread_attr_init.3:65
-#: build/C/man3/pthread_attr_setaffinity_np.3:73
-#: build/C/man3/pthread_attr_setdetachstate.3:74
-#: build/C/man3/pthread_attr_setguardsize.3:87
-#: build/C/man3/pthread_attr_setinheritsched.3:81
-#: build/C/man3/pthread_attr_setschedparam.3:71
-#: build/C/man3/pthread_attr_setschedpolicy.3:69
-#: build/C/man3/pthread_attr_setscope.3:88
+#: build/C/man3/pthread_attr_init.3:66
+#: build/C/man3/pthread_attr_setaffinity_np.3:74
+#: build/C/man3/pthread_attr_setdetachstate.3:75
+#: build/C/man3/pthread_attr_setguardsize.3:88
+#: build/C/man3/pthread_attr_setinheritsched.3:82
+#: build/C/man3/pthread_attr_setschedparam.3:72
+#: build/C/man3/pthread_attr_setschedpolicy.3:70
+#: build/C/man3/pthread_attr_setscope.3:89
 #: build/C/man3/pthread_attr_setstack.3:83
-#: build/C/man3/pthread_attr_setstackaddr.3:71
-#: build/C/man3/pthread_attr_setstacksize.3:58
-#: build/C/man3/pthread_cancel.3:106 build/C/man3/pthread_cleanup_push.3:116
+#: build/C/man3/pthread_attr_setstackaddr.3:72
+#: build/C/man3/pthread_attr_setstacksize.3:59
+#: build/C/man3/pthread_cancel.3:107 build/C/man3/pthread_cleanup_push.3:117
 #: build/C/man3/pthread_create.3:113 build/C/man3/pthread_detach.3:47
-#: build/C/man3/pthread_equal.3:38 build/C/man3/pthread_exit.3:68
-#: build/C/man3/pthread_getattr_np.3:70
-#: build/C/man3/pthread_getcpuclockid.3:43 build/C/man3/pthread_join.3:68
-#: build/C/man3/pthread_kill.3:50 build/C/man3/pthread_self.3:43
-#: build/C/man3/pthread_setaffinity_np.3:74
-#: build/C/man3/pthread_setcancelstate.3:89
-#: build/C/man3/pthread_setconcurrency.3:53
-#: build/C/man3/pthread_setschedparam.3:101
-#: build/C/man3/pthread_setschedprio.3:50 build/C/man3/pthread_sigmask.3:47
-#: build/C/man3/pthread_sigqueue.3:63 build/C/man3/pthread_testcancel.3:47
+#: build/C/man3/pthread_equal.3:39 build/C/man3/pthread_exit.3:69
+#: build/C/man3/pthread_getattr_np.3:71
+#: build/C/man3/pthread_getcpuclockid.3:44 build/C/man3/pthread_join.3:68
+#: build/C/man3/pthread_kill.3:50 build/C/man3/pthread_self.3:44
+#: build/C/man3/pthread_setaffinity_np.3:75
+#: build/C/man3/pthread_setcancelstate.3:90
+#: build/C/man3/pthread_setconcurrency.3:54
+#: build/C/man3/pthread_setschedparam.3:102
+#: build/C/man3/pthread_setschedprio.3:51 build/C/man3/pthread_sigmask.3:47
+#: build/C/man3/pthread_sigqueue.3:63 build/C/man3/pthread_testcancel.3:48
 #: build/C/man3/pthread_tryjoin_np.3:83 build/C/man3/pthread_yield.3:41
 #, no-wrap
 msgid "RETURN VALUE"
@@ -377,29 +377,29 @@ msgstr ""
 
 #. type: SH
 #: build/C/man2/getcontext.2:122 build/C/man3/makecontext.3:93
-#: build/C/man3/pthread_attr_init.3:68
-#: build/C/man3/pthread_attr_setaffinity_np.3:76
-#: build/C/man3/pthread_attr_setdetachstate.3:77
-#: build/C/man3/pthread_attr_setguardsize.3:90
-#: build/C/man3/pthread_attr_setinheritsched.3:84
-#: build/C/man3/pthread_attr_setschedparam.3:74
-#: build/C/man3/pthread_attr_setschedpolicy.3:72
-#: build/C/man3/pthread_attr_setscope.3:91
+#: build/C/man3/pthread_attr_init.3:69
+#: build/C/man3/pthread_attr_setaffinity_np.3:77
+#: build/C/man3/pthread_attr_setdetachstate.3:78
+#: build/C/man3/pthread_attr_setguardsize.3:91
+#: build/C/man3/pthread_attr_setinheritsched.3:85
+#: build/C/man3/pthread_attr_setschedparam.3:75
+#: build/C/man3/pthread_attr_setschedpolicy.3:73
+#: build/C/man3/pthread_attr_setscope.3:92
 #: build/C/man3/pthread_attr_setstack.3:86
-#: build/C/man3/pthread_attr_setstackaddr.3:74
-#: build/C/man3/pthread_attr_setstacksize.3:61
-#: build/C/man3/pthread_cancel.3:111 build/C/man3/pthread_cleanup_push.3:118
+#: build/C/man3/pthread_attr_setstackaddr.3:75
+#: build/C/man3/pthread_attr_setstacksize.3:62
+#: build/C/man3/pthread_cancel.3:112 build/C/man3/pthread_cleanup_push.3:119
 #: build/C/man3/pthread_create.3:120 build/C/man3/pthread_detach.3:52
-#: build/C/man3/pthread_equal.3:42 build/C/man3/pthread_exit.3:70
-#: build/C/man3/pthread_getattr_np.3:73
-#: build/C/man3/pthread_getcpuclockid.3:46 build/C/man3/pthread_join.3:73
-#: build/C/man3/pthread_kill.3:55 build/C/man3/pthread_self.3:45
-#: build/C/man3/pthread_setaffinity_np.3:77
-#: build/C/man3/pthread_setcancelstate.3:92
-#: build/C/man3/pthread_setconcurrency.3:65
-#: build/C/man3/pthread_setschedparam.3:109
-#: build/C/man3/pthread_setschedprio.3:58 build/C/man3/pthread_sigmask.3:52
-#: build/C/man3/pthread_sigqueue.3:68 build/C/man3/pthread_testcancel.3:51
+#: build/C/man3/pthread_equal.3:43 build/C/man3/pthread_exit.3:71
+#: build/C/man3/pthread_getattr_np.3:74
+#: build/C/man3/pthread_getcpuclockid.3:47 build/C/man3/pthread_join.3:73
+#: build/C/man3/pthread_kill.3:55 build/C/man3/pthread_self.3:46
+#: build/C/man3/pthread_setaffinity_np.3:78
+#: build/C/man3/pthread_setcancelstate.3:93
+#: build/C/man3/pthread_setconcurrency.3:66
+#: build/C/man3/pthread_setschedparam.3:110
+#: build/C/man3/pthread_setschedprio.3:59 build/C/man3/pthread_sigmask.3:52
+#: build/C/man3/pthread_sigqueue.3:68 build/C/man3/pthread_testcancel.3:52
 #: build/C/man3/pthread_tryjoin_np.3:87 build/C/man3/pthread_yield.3:46
 #, no-wrap
 msgid "ERRORS"
@@ -412,31 +412,31 @@ msgstr "定義されていない。"
 
 #. type: SH
 #: build/C/man2/getcontext.2:124 build/C/man3/makecontext.3:102
-#: build/C/man3/pthread_attr_init.3:76
-#: build/C/man3/pthread_attr_setaffinity_np.3:105
-#: build/C/man3/pthread_attr_setdetachstate.3:84
-#: build/C/man3/pthread_attr_setguardsize.3:103
-#: build/C/man3/pthread_attr_setinheritsched.3:98
-#: build/C/man3/pthread_attr_setschedparam.3:86
-#: build/C/man3/pthread_attr_setschedpolicy.3:86
-#: build/C/man3/pthread_attr_setscope.3:104
+#: build/C/man3/pthread_attr_init.3:77
+#: build/C/man3/pthread_attr_setaffinity_np.3:106
+#: build/C/man3/pthread_attr_setdetachstate.3:85
+#: build/C/man3/pthread_attr_setguardsize.3:104
+#: build/C/man3/pthread_attr_setinheritsched.3:99
+#: build/C/man3/pthread_attr_setschedparam.3:87
+#: build/C/man3/pthread_attr_setschedpolicy.3:87
+#: build/C/man3/pthread_attr_setscope.3:105
 #: build/C/man3/pthread_attr_setstack.3:110
-#: build/C/man3/pthread_attr_setstackaddr.3:80
-#: build/C/man3/pthread_attr_setstacksize.3:80
-#: build/C/man3/pthread_cancel.3:119 build/C/man3/pthread_cleanup_push.3:122
-#: build/C/man3/pthread_cleanup_push_defer_np.3:98
+#: build/C/man3/pthread_attr_setstackaddr.3:81
+#: build/C/man3/pthread_attr_setstacksize.3:81
+#: build/C/man3/pthread_cancel.3:120 build/C/man3/pthread_cleanup_push.3:123
+#: build/C/man3/pthread_cleanup_push_defer_np.3:99
 #: build/C/man3/pthread_create.3:144 build/C/man3/pthread_detach.3:62
-#: build/C/man3/pthread_equal.3:44 build/C/man3/pthread_exit.3:72
-#: build/C/man3/pthread_getattr_np.3:95
-#: build/C/man3/pthread_getcpuclockid.3:62 build/C/man3/pthread_join.3:96
+#: build/C/man3/pthread_equal.3:45 build/C/man3/pthread_exit.3:73
+#: build/C/man3/pthread_getattr_np.3:96
+#: build/C/man3/pthread_getcpuclockid.3:63 build/C/man3/pthread_join.3:96
 #: build/C/man3/pthread_kill.3:64
 #: build/C/man3/pthread_kill_other_threads_np.3:45
-#: build/C/man3/pthread_self.3:47 build/C/man3/pthread_setaffinity_np.3:118
-#: build/C/man3/pthread_setcancelstate.3:110
-#: build/C/man3/pthread_setconcurrency.3:80
-#: build/C/man3/pthread_setschedparam.3:138
-#: build/C/man3/pthread_setschedprio.3:80 build/C/man3/pthread_sigmask.3:55
-#: build/C/man3/pthread_sigqueue.3:91 build/C/man3/pthread_testcancel.3:55
+#: build/C/man3/pthread_self.3:48 build/C/man3/pthread_setaffinity_np.3:119
+#: build/C/man3/pthread_setcancelstate.3:111
+#: build/C/man3/pthread_setconcurrency.3:81
+#: build/C/man3/pthread_setschedparam.3:139
+#: build/C/man3/pthread_setschedprio.3:81 build/C/man3/pthread_sigmask.3:55
+#: build/C/man3/pthread_sigqueue.3:91 build/C/man3/pthread_testcancel.3:56
 #: build/C/man3/pthread_tryjoin_np.3:110 build/C/man3/pthread_yield.3:50
 #, no-wrap
 msgid "CONFORMING TO"
@@ -455,26 +455,26 @@ msgstr ""
 
 #. type: SH
 #: build/C/man2/getcontext.2:130 build/C/man3/makecontext.3:110
-#: build/C/man3/pthread_attr_init.3:78
-#: build/C/man3/pthread_attr_setaffinity_np.3:108
-#: build/C/man3/pthread_attr_setdetachstate.3:86
-#: build/C/man3/pthread_attr_setguardsize.3:105
-#: build/C/man3/pthread_attr_setschedparam.3:91
-#: build/C/man3/pthread_attr_setscope.3:106
+#: build/C/man3/pthread_attr_init.3:79
+#: build/C/man3/pthread_attr_setaffinity_np.3:109
+#: build/C/man3/pthread_attr_setdetachstate.3:87
+#: build/C/man3/pthread_attr_setguardsize.3:106
+#: build/C/man3/pthread_attr_setschedparam.3:89
+#: build/C/man3/pthread_attr_setscope.3:107
 #: build/C/man3/pthread_attr_setstack.3:112
-#: build/C/man3/pthread_attr_setstackaddr.3:83
-#: build/C/man3/pthread_attr_setstacksize.3:85
-#: build/C/man3/pthread_cancel.3:121 build/C/man3/pthread_cleanup_push.3:124
+#: build/C/man3/pthread_attr_setstackaddr.3:84
+#: build/C/man3/pthread_attr_setstacksize.3:83
+#: build/C/man3/pthread_cancel.3:122 build/C/man3/pthread_cleanup_push.3:125
 #: build/C/man3/pthread_create.3:146 build/C/man3/pthread_detach.3:64
-#: build/C/man3/pthread_equal.3:46 build/C/man3/pthread_exit.3:74
-#: build/C/man3/pthread_getcpuclockid.3:64 build/C/man3/pthread_join.3:98
+#: build/C/man3/pthread_equal.3:47 build/C/man3/pthread_exit.3:75
+#: build/C/man3/pthread_getcpuclockid.3:65 build/C/man3/pthread_join.3:98
 #: build/C/man3/pthread_kill.3:66
 #: build/C/man3/pthread_kill_other_threads_np.3:48
-#: build/C/man3/pthread_self.3:49 build/C/man3/pthread_setaffinity_np.3:121
-#: build/C/man3/pthread_setcancelstate.3:112
-#: build/C/man3/pthread_setconcurrency.3:82
-#: build/C/man3/pthread_setschedparam.3:140
-#: build/C/man3/pthread_setschedprio.3:82 build/C/man3/pthread_sigmask.3:57
+#: build/C/man3/pthread_self.3:50 build/C/man3/pthread_setaffinity_np.3:122
+#: build/C/man3/pthread_setcancelstate.3:113
+#: build/C/man3/pthread_setconcurrency.3:83
+#: build/C/man3/pthread_setschedparam.3:141
+#: build/C/man3/pthread_setschedprio.3:83 build/C/man3/pthread_sigmask.3:57
 #: build/C/man3/pthread_yield.3:56
 #, no-wrap
 msgid "NOTES"
@@ -516,31 +516,31 @@ msgstr ""
 
 #. type: SH
 #: build/C/man2/getcontext.2:158 build/C/man3/makecontext.3:217
-#: build/C/man3/pthread_attr_init.3:294
-#: build/C/man3/pthread_attr_setaffinity_np.3:115
-#: build/C/man3/pthread_attr_setdetachstate.3:108
-#: build/C/man3/pthread_attr_setguardsize.3:155
-#: build/C/man3/pthread_attr_setinheritsched.3:119
-#: build/C/man3/pthread_attr_setschedparam.3:95
-#: build/C/man3/pthread_attr_setschedpolicy.3:91
-#: build/C/man3/pthread_attr_setscope.3:117
+#: build/C/man3/pthread_attr_init.3:295
+#: build/C/man3/pthread_attr_setaffinity_np.3:116
+#: build/C/man3/pthread_attr_setdetachstate.3:109
+#: build/C/man3/pthread_attr_setguardsize.3:156
+#: build/C/man3/pthread_attr_setinheritsched.3:120
+#: build/C/man3/pthread_attr_setschedparam.3:96
+#: build/C/man3/pthread_attr_setschedpolicy.3:92
+#: build/C/man3/pthread_attr_setscope.3:118
 #: build/C/man3/pthread_attr_setstack.3:154
-#: build/C/man3/pthread_attr_setstackaddr.3:107
-#: build/C/man3/pthread_attr_setstacksize.3:108
-#: build/C/man3/pthread_cancel.3:220 build/C/man3/pthread_cleanup_push.3:308
-#: build/C/man3/pthread_cleanup_push_defer_np.3:101
+#: build/C/man3/pthread_attr_setstackaddr.3:108
+#: build/C/man3/pthread_attr_setstacksize.3:109
+#: build/C/man3/pthread_cancel.3:221 build/C/man3/pthread_cleanup_push.3:309
+#: build/C/man3/pthread_cleanup_push_defer_np.3:102
 #: build/C/man3/pthread_create.3:367 build/C/man3/pthread_detach.3:95
-#: build/C/man3/pthread_equal.3:53 build/C/man3/pthread_exit.3:102
-#: build/C/man3/pthread_getattr_np.3:342
-#: build/C/man3/pthread_getcpuclockid.3:166 build/C/man3/pthread_join.3:125
+#: build/C/man3/pthread_equal.3:54 build/C/man3/pthread_exit.3:103
+#: build/C/man3/pthread_getattr_np.3:343
+#: build/C/man3/pthread_getcpuclockid.3:167 build/C/man3/pthread_join.3:125
 #: build/C/man3/pthread_kill.3:73
 #: build/C/man3/pthread_kill_other_threads_np.3:64
-#: build/C/man3/pthread_self.3:73 build/C/man3/pthread_setaffinity_np.3:203
-#: build/C/man3/pthread_setcancelstate.3:174
-#: build/C/man3/pthread_setconcurrency.3:97
-#: build/C/man3/pthread_setschedparam.3:428
-#: build/C/man3/pthread_setschedprio.3:88 build/C/man3/pthread_sigmask.3:133
-#: build/C/man3/pthread_sigqueue.3:93 build/C/man3/pthread_testcancel.3:60
+#: build/C/man3/pthread_self.3:74 build/C/man3/pthread_setaffinity_np.3:204
+#: build/C/man3/pthread_setcancelstate.3:175
+#: build/C/man3/pthread_setconcurrency.3:98
+#: build/C/man3/pthread_setschedparam.3:429
+#: build/C/man3/pthread_setschedprio.3:89 build/C/man3/pthread_sigmask.3:133
+#: build/C/man3/pthread_sigqueue.3:93 build/C/man3/pthread_testcancel.3:61
 #: build/C/man3/pthread_tryjoin_np.3:133 build/C/man3/pthread_yield.3:59
 #: build/C/man7/pthreads.7:893
 #, no-wrap
@@ -558,71 +558,74 @@ msgstr ""
 
 #. type: SH
 #: build/C/man2/getcontext.2:165 build/C/man3/makecontext.3:223
-#: build/C/man3/pthread_attr_init.3:308
-#: build/C/man3/pthread_attr_setaffinity_np.3:121
-#: build/C/man3/pthread_attr_setdetachstate.3:114
-#: build/C/man3/pthread_attr_setguardsize.3:163
-#: build/C/man3/pthread_attr_setinheritsched.3:128
-#: build/C/man3/pthread_attr_setschedparam.3:105
-#: build/C/man3/pthread_attr_setschedpolicy.3:100
-#: build/C/man3/pthread_attr_setscope.3:125
+#: build/C/man3/pthread_attr_init.3:309
+#: build/C/man3/pthread_attr_setaffinity_np.3:122
+#: build/C/man3/pthread_attr_setdetachstate.3:115
+#: build/C/man3/pthread_attr_setguardsize.3:164
+#: build/C/man3/pthread_attr_setinheritsched.3:129
+#: build/C/man3/pthread_attr_setschedparam.3:106
+#: build/C/man3/pthread_attr_setschedpolicy.3:101
+#: build/C/man3/pthread_attr_setscope.3:126
 #: build/C/man3/pthread_attr_setstack.3:164
-#: build/C/man3/pthread_attr_setstackaddr.3:113
-#: build/C/man3/pthread_attr_setstacksize.3:115
-#: build/C/man3/pthread_cancel.3:230 build/C/man3/pthread_cleanup_push.3:314
-#: build/C/man3/pthread_cleanup_push_defer_np.3:107
+#: build/C/man3/pthread_attr_setstackaddr.3:114
+#: build/C/man3/pthread_attr_setstacksize.3:116
+#: build/C/man3/pthread_cancel.3:231 build/C/man3/pthread_cleanup_push.3:315
+#: build/C/man3/pthread_cleanup_push_defer_np.3:108
 #: build/C/man3/pthread_create.3:378 build/C/man3/pthread_detach.3:102
-#: build/C/man3/pthread_equal.3:57 build/C/man3/pthread_exit.3:106
-#: build/C/man3/pthread_getattr_np.3:356
-#: build/C/man3/pthread_getcpuclockid.3:174 build/C/man3/pthread_join.3:132
+#: build/C/man3/pthread_equal.3:58 build/C/man3/pthread_exit.3:107
+#: build/C/man3/pthread_getattr_np.3:357
+#: build/C/man3/pthread_getcpuclockid.3:175 build/C/man3/pthread_join.3:132
 #: build/C/man3/pthread_kill.3:82
 #: build/C/man3/pthread_kill_other_threads_np.3:70
-#: build/C/man3/pthread_self.3:77 build/C/man3/pthread_setaffinity_np.3:211
-#: build/C/man3/pthread_setcancelstate.3:179
-#: build/C/man3/pthread_setconcurrency.3:100
-#: build/C/man3/pthread_setschedparam.3:440
-#: build/C/man3/pthread_setschedprio.3:100 build/C/man3/pthread_sigmask.3:142
-#: build/C/man3/pthread_sigqueue.3:101 build/C/man3/pthread_testcancel.3:65
+#: build/C/man3/pthread_self.3:78 build/C/man3/pthread_setaffinity_np.3:212
+#: build/C/man3/pthread_setcancelstate.3:180
+#: build/C/man3/pthread_setconcurrency.3:101
+#: build/C/man3/pthread_setschedparam.3:441
+#: build/C/man3/pthread_setschedprio.3:101 build/C/man3/pthread_sigmask.3:142
+#: build/C/man3/pthread_sigqueue.3:101 build/C/man3/pthread_testcancel.3:66
 #: build/C/man3/pthread_tryjoin_np.3:138 build/C/man3/pthread_yield.3:63
 #: build/C/man7/pthreads.7:927
 #, no-wrap
 msgid "COLOPHON"
-msgstr ""
+msgstr "この文書について"
 
 #. type: Plain text
 #: build/C/man2/getcontext.2:172 build/C/man3/makecontext.3:230
-#: build/C/man3/pthread_attr_init.3:315
-#: build/C/man3/pthread_attr_setaffinity_np.3:128
-#: build/C/man3/pthread_attr_setdetachstate.3:121
-#: build/C/man3/pthread_attr_setguardsize.3:170
-#: build/C/man3/pthread_attr_setinheritsched.3:135
-#: build/C/man3/pthread_attr_setschedparam.3:112
-#: build/C/man3/pthread_attr_setschedpolicy.3:107
-#: build/C/man3/pthread_attr_setscope.3:132
+#: build/C/man3/pthread_attr_init.3:316
+#: build/C/man3/pthread_attr_setaffinity_np.3:129
+#: build/C/man3/pthread_attr_setdetachstate.3:122
+#: build/C/man3/pthread_attr_setguardsize.3:171
+#: build/C/man3/pthread_attr_setinheritsched.3:136
+#: build/C/man3/pthread_attr_setschedparam.3:113
+#: build/C/man3/pthread_attr_setschedpolicy.3:108
+#: build/C/man3/pthread_attr_setscope.3:133
 #: build/C/man3/pthread_attr_setstack.3:171
-#: build/C/man3/pthread_attr_setstackaddr.3:120
-#: build/C/man3/pthread_attr_setstacksize.3:122
-#: build/C/man3/pthread_cancel.3:237 build/C/man3/pthread_cleanup_push.3:321
-#: build/C/man3/pthread_cleanup_push_defer_np.3:114
+#: build/C/man3/pthread_attr_setstackaddr.3:121
+#: build/C/man3/pthread_attr_setstacksize.3:123
+#: build/C/man3/pthread_cancel.3:238 build/C/man3/pthread_cleanup_push.3:322
+#: build/C/man3/pthread_cleanup_push_defer_np.3:115
 #: build/C/man3/pthread_create.3:385 build/C/man3/pthread_detach.3:109
-#: build/C/man3/pthread_equal.3:64 build/C/man3/pthread_exit.3:113
-#: build/C/man3/pthread_getattr_np.3:363
-#: build/C/man3/pthread_getcpuclockid.3:181 build/C/man3/pthread_join.3:139
+#: build/C/man3/pthread_equal.3:65 build/C/man3/pthread_exit.3:114
+#: build/C/man3/pthread_getattr_np.3:364
+#: build/C/man3/pthread_getcpuclockid.3:182 build/C/man3/pthread_join.3:139
 #: build/C/man3/pthread_kill.3:89
 #: build/C/man3/pthread_kill_other_threads_np.3:77
-#: build/C/man3/pthread_self.3:84 build/C/man3/pthread_setaffinity_np.3:218
-#: build/C/man3/pthread_setcancelstate.3:186
-#: build/C/man3/pthread_setconcurrency.3:107
-#: build/C/man3/pthread_setschedparam.3:447
-#: build/C/man3/pthread_setschedprio.3:107 build/C/man3/pthread_sigmask.3:149
-#: build/C/man3/pthread_sigqueue.3:108 build/C/man3/pthread_testcancel.3:72
+#: build/C/man3/pthread_self.3:85 build/C/man3/pthread_setaffinity_np.3:219
+#: build/C/man3/pthread_setcancelstate.3:187
+#: build/C/man3/pthread_setconcurrency.3:108
+#: build/C/man3/pthread_setschedparam.3:448
+#: build/C/man3/pthread_setschedprio.3:108 build/C/man3/pthread_sigmask.3:149
+#: build/C/man3/pthread_sigqueue.3:108 build/C/man3/pthread_testcancel.3:73
 #: build/C/man3/pthread_tryjoin_np.3:145 build/C/man3/pthread_yield.3:70
 #: build/C/man7/pthreads.7:934
 msgid ""
-"This page is part of release 3.35 of the Linux I<man-pages> project.  A "
+"This page is part of release 3.41 of the Linux I<man-pages> project.  A "
 "description of the project, and information about reporting bugs, can be "
-"found at http://man7.org/linux/man-pages/."
+"found at http://www.kernel.org/doc/man-pages/."
 msgstr ""
+"この man ページは Linux I<man-pages> プロジェクトのリリース 3.41 の一部\n"
+"である。プロジェクトの説明とバグ報告に関する情報は\n"
+"http://www.kernel.org/doc/man-pages/ に書かれている。"
 
 #. type: TH
 #: build/C/man3/makecontext.3:25
@@ -736,8 +739,9 @@ msgstr ""
 "て設定する。"
 
 #. type: TP
-#: build/C/man3/makecontext.3:94 build/C/man3/pthread_attr_setaffinity_np.3:99
-#: build/C/man3/pthread_getattr_np.3:74
+#: build/C/man3/makecontext.3:94
+#: build/C/man3/pthread_attr_setaffinity_np.3:100
+#: build/C/man3/pthread_getattr_np.3:75
 #, no-wrap
 msgid "B<ENOMEM>"
 msgstr "B<ENOMEM>"
@@ -749,16 +753,16 @@ msgstr "スタックに割り当てる空間が残っていない。"
 
 #. type: SH
 #: build/C/man3/makecontext.3:97
-#: build/C/man3/pthread_attr_setaffinity_np.3:103
-#: build/C/man3/pthread_attr_setguardsize.3:101
+#: build/C/man3/pthread_attr_setaffinity_np.3:104
+#: build/C/man3/pthread_attr_setguardsize.3:102
 #: build/C/man3/pthread_attr_setstack.3:108
-#: build/C/man3/pthread_attr_setstackaddr.3:78
-#: build/C/man3/pthread_attr_setstacksize.3:78
-#: build/C/man3/pthread_getattr_np.3:93
-#: build/C/man3/pthread_getcpuclockid.3:60
-#: build/C/man3/pthread_setaffinity_np.3:116
-#: build/C/man3/pthread_setconcurrency.3:78
-#: build/C/man3/pthread_setschedprio.3:78 build/C/man3/pthread_sigqueue.3:87
+#: build/C/man3/pthread_attr_setstackaddr.3:79
+#: build/C/man3/pthread_attr_setstacksize.3:79
+#: build/C/man3/pthread_getattr_np.3:94
+#: build/C/man3/pthread_getcpuclockid.3:61
+#: build/C/man3/pthread_setaffinity_np.3:117
+#: build/C/man3/pthread_setconcurrency.3:79
+#: build/C/man3/pthread_setschedprio.3:79 build/C/man3/pthread_sigqueue.3:87
 #: build/C/man3/pthread_tryjoin_np.3:108
 #, no-wrap
 msgid "VERSIONS"
@@ -819,22 +823,22 @@ msgstr ""
 "できるようになっている。"
 
 #. type: SH
-#: build/C/man3/makecontext.3:134 build/C/man3/pthread_attr_init.3:84
-#: build/C/man3/pthread_attr_setdetachstate.3:105
-#: build/C/man3/pthread_attr_setguardsize.3:152
-#: build/C/man3/pthread_attr_setinheritsched.3:100
-#: build/C/man3/pthread_attr_setschedparam.3:88
-#: build/C/man3/pthread_attr_setschedpolicy.3:88
+#: build/C/man3/makecontext.3:134 build/C/man3/pthread_attr_init.3:85
+#: build/C/man3/pthread_attr_setdetachstate.3:106
+#: build/C/man3/pthread_attr_setguardsize.3:153
+#: build/C/man3/pthread_attr_setinheritsched.3:117
+#: build/C/man3/pthread_attr_setschedparam.3:93
+#: build/C/man3/pthread_attr_setschedpolicy.3:89
 #: build/C/man3/pthread_attr_setstack.3:151
-#: build/C/man3/pthread_attr_setstacksize.3:82
-#: build/C/man3/pthread_cancel.3:129 build/C/man3/pthread_cleanup_push.3:148
-#: build/C/man3/pthread_create.3:194 build/C/man3/pthread_detach.3:91
-#: build/C/man3/pthread_getattr_np.3:98
-#: build/C/man3/pthread_getcpuclockid.3:75 build/C/man3/pthread_join.3:122
-#: build/C/man3/pthread_setaffinity_np.3:151
-#: build/C/man3/pthread_setcancelstate.3:171
-#: build/C/man3/pthread_setschedparam.3:146 build/C/man3/pthread_sigmask.3:59
-#: build/C/man3/pthread_testcancel.3:57 build/C/man3/pthread_tryjoin_np.3:113
+#: build/C/man3/pthread_attr_setstacksize.3:106
+#: build/C/man3/pthread_cancel.3:130 build/C/man3/pthread_cleanup_push.3:149
+#: build/C/man3/pthread_create.3:200 build/C/man3/pthread_detach.3:91
+#: build/C/man3/pthread_getattr_np.3:99
+#: build/C/man3/pthread_getcpuclockid.3:76 build/C/man3/pthread_join.3:122
+#: build/C/man3/pthread_setaffinity_np.3:152
+#: build/C/man3/pthread_setcancelstate.3:172
+#: build/C/man3/pthread_setschedparam.3:147 build/C/man3/pthread_sigmask.3:59
+#: build/C/man3/pthread_testcancel.3:58 build/C/man3/pthread_tryjoin_np.3:113
 #, no-wrap
 msgid "EXAMPLE"
 msgstr "例"
@@ -875,11 +879,11 @@ msgstr ""
 "main: exiting\n"
 
 #. type: SS
-#: build/C/man3/makecontext.3:156 build/C/man3/pthread_attr_init.3:145
-#: build/C/man3/pthread_cancel.3:145 build/C/man3/pthread_cleanup_push.3:224
-#: build/C/man3/pthread_create.3:233 build/C/man3/pthread_getattr_np.3:176
-#: build/C/man3/pthread_getcpuclockid.3:92
-#: build/C/man3/pthread_setschedparam.3:221 build/C/man3/pthread_sigmask.3:77
+#: build/C/man3/makecontext.3:156 build/C/man3/pthread_attr_init.3:146
+#: build/C/man3/pthread_cancel.3:146 build/C/man3/pthread_cleanup_push.3:225
+#: build/C/man3/pthread_create.3:239 build/C/man3/pthread_getattr_np.3:177
+#: build/C/man3/pthread_getcpuclockid.3:93
+#: build/C/man3/pthread_setschedparam.3:222 build/C/man3/pthread_sigmask.3:77
 #, no-wrap
 msgid "Program source"
 msgstr "プログラムのソース"
@@ -1054,7 +1058,7 @@ msgid "PTHREAD_ATTR_INIT"
 msgstr "PTHREAD_ATTR_INIT"
 
 #. type: TH
-#: build/C/man3/pthread_attr_init.3:24 build/C/man3/pthread_create.3:24
+#: build/C/man3/pthread_attr_init.3:24
 #, no-wrap
 msgid "2008-11-11"
 msgstr "2008-11-11"
@@ -1065,6 +1069,8 @@ msgid ""
 "pthread_attr_init, pthread_attr_destroy - initialize and destroy thread "
 "attributes object"
 msgstr ""
+"pthread_attr_init, pthread_attr_destroy - \n"
+"スレッド属性オブジェクトの初期化と破棄を行う"
 
 #. type: Plain text
 #: build/C/man3/pthread_attr_init.3:31
@@ -1115,7 +1121,6 @@ msgstr ""
 #: build/C/man3/pthread_attr_setstackaddr.3:38
 #: build/C/man3/pthread_attr_setstacksize.3:38
 #: build/C/man3/pthread_cancel.3:34 build/C/man3/pthread_cleanup_push.3:37
-#: build/C/man3/pthread_cleanup_push_defer_np.3:37
 #: build/C/man3/pthread_equal.3:34 build/C/man3/pthread_exit.3:34
 #: build/C/man3/pthread_getattr_np.3:35
 #: build/C/man3/pthread_getcpuclockid.3:35 build/C/man3/pthread_self.3:34
@@ -1126,10 +1131,10 @@ msgstr ""
 #: build/C/man3/pthread_setschedprio.3:34 build/C/man3/pthread_testcancel.3:34
 #, no-wrap
 msgid "Compile and link with I<-pthread>.\n"
-msgstr ""
+msgstr "I<-pthread> でコンパイルしてリンクする。\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_init.3:47
+#: build/C/man3/pthread_attr_init.3:48
 msgid ""
 "The B<pthread_attr_init>()  function initializes the thread attributes "
 "object pointed to by I<attr> with default attribute values.  After this "
@@ -1137,91 +1142,118 @@ msgid ""
 "functions (listed under SEE ALSO), and then the object can be used in one or "
 "more B<pthread_create>(3)  calls that create threads."
 msgstr ""
+"B<pthread_attr_init>() 関数は I<attr> が指すスレッド属性オブジェクト\n"
+"(thread attributes object) をデフォルトの属性値で初期化する。\n"
+"この呼び出しの後、オブジェクトの各属性は (関連項目に載っている) 種々の\n"
+"関数を使って設定することができ、このオブジェクトはスレッドの作成を行う\n"
+"B<pthread_create>(3) の呼び出しにおいて使用することができる (一つの\n"
+"オブジェクトを複数の B<pthread_create>(3) に渡してもよい)。"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_init.3:52
+#: build/C/man3/pthread_attr_init.3:53
 msgid ""
 "Calling B<pthread_attr_init>()  on a thread attributes object that has "
 "already been initialized results in undefined behavior."
 msgstr ""
+"すでに初期化されているスレッド属性オブジェクトに対して\n"
+"B<pthread_attr_init>() を呼び出した場合、\n"
+"どのような動作になるかは不定である。"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_init.3:59
+#: build/C/man3/pthread_attr_init.3:60
 msgid ""
 "When a thread attributes object is no longer required, it should be "
 "destroyed using the B<pthread_attr_destroy>()  function.  Destroying a "
 "thread attributes object has no effect on threads that were created using "
 "that object."
 msgstr ""
+"スレッド属性オブジェクトがもはや必要なくなった際には、\n"
+"そのオブジェクトは B<pthread_attr_destroy>() 関数を使って破棄すべきである。\n"
+"スレッド属性オブジェクトを破棄しても、\n"
+"そのオブジェクトを使って作成されたスレッドには影響はない。"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_init.3:65
+#: build/C/man3/pthread_attr_init.3:66
 msgid ""
 "Once a thread attributes object has been destroyed, it can be reinitialized "
 "using B<pthread_attr_init>().  Any other use of a destroyed thread "
 "attributes object has undefined results."
 msgstr ""
+"いったん破棄したスレッド属性オブジェクトは、\n"
+"B<pthread_attr_init>() を使って再初期化することができる。\n"
+"破棄したスレッド属性オブジェクトをこれ以外の用途で\n"
+"使った場合の結果は不定である。"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_init.3:68
-#: build/C/man3/pthread_attr_setaffinity_np.3:76
-#: build/C/man3/pthread_attr_setdetachstate.3:77
-#: build/C/man3/pthread_attr_setguardsize.3:90
-#: build/C/man3/pthread_attr_setinheritsched.3:84
-#: build/C/man3/pthread_attr_setschedparam.3:74
-#: build/C/man3/pthread_attr_setschedpolicy.3:72
-#: build/C/man3/pthread_attr_setscope.3:91
+#: build/C/man3/pthread_attr_init.3:69
+#: build/C/man3/pthread_attr_setaffinity_np.3:77
+#: build/C/man3/pthread_attr_setdetachstate.3:78
+#: build/C/man3/pthread_attr_setguardsize.3:91
+#: build/C/man3/pthread_attr_setinheritsched.3:85
+#: build/C/man3/pthread_attr_setschedparam.3:75
+#: build/C/man3/pthread_attr_setschedpolicy.3:73
+#: build/C/man3/pthread_attr_setscope.3:92
 #: build/C/man3/pthread_attr_setstack.3:86
-#: build/C/man3/pthread_attr_setstackaddr.3:74
-#: build/C/man3/pthread_attr_setstacksize.3:61
-#: build/C/man3/pthread_setaffinity_np.3:77
-#: build/C/man3/pthread_setcancelstate.3:92
+#: build/C/man3/pthread_attr_setstackaddr.3:75
+#: build/C/man3/pthread_attr_setstacksize.3:62
+#: build/C/man3/pthread_setaffinity_np.3:78
+#: build/C/man3/pthread_setcancelstate.3:93
 msgid ""
 "On success, these functions return 0; on error, they return a nonzero error "
 "number."
 msgstr ""
+"成功すると、これらの関数は 0 を返す。\n"
+"エラーの場合、0 以外のエラー番号を返す。"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_init.3:76
+#: build/C/man3/pthread_attr_init.3:77
 msgid ""
 "POSIX.1-2001 documents an B<ENOMEM> error for B<pthread_attr_init>(); on "
 "Linux these functions always succeed (but portable and future-proof "
 "applications should nevertheless handle a possible error return)."
 msgstr ""
+"POSIX.1-2001 では B<pthread_attr_init>() にはエラー B<ENOMEM> が\n"
+"記載されている。\n"
+"Linux では、これらの関数は常に成功する\n"
+"(ただし、移植性や将来も動作することを保証したいアプリケーションでは\n"
+"正のエラーの返り値を処理するようにすべきである)。"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_init.3:78
-#: build/C/man3/pthread_attr_setdetachstate.3:86
-#: build/C/man3/pthread_attr_setguardsize.3:105
-#: build/C/man3/pthread_attr_setinheritsched.3:100
-#: build/C/man3/pthread_attr_setschedparam.3:88
-#: build/C/man3/pthread_attr_setschedpolicy.3:88
-#: build/C/man3/pthread_attr_setscope.3:106
+#: build/C/man3/pthread_attr_init.3:79
+#: build/C/man3/pthread_attr_setdetachstate.3:87
+#: build/C/man3/pthread_attr_setguardsize.3:106
+#: build/C/man3/pthread_attr_setinheritsched.3:101
+#: build/C/man3/pthread_attr_setschedparam.3:89
+#: build/C/man3/pthread_attr_setschedpolicy.3:89
+#: build/C/man3/pthread_attr_setscope.3:107
 #: build/C/man3/pthread_attr_setstack.3:112
-#: build/C/man3/pthread_attr_setstacksize.3:82
-#: build/C/man3/pthread_cancel.3:121 build/C/man3/pthread_cleanup_push.3:124
+#: build/C/man3/pthread_attr_setstacksize.3:83
+#: build/C/man3/pthread_cancel.3:122 build/C/man3/pthread_cleanup_push.3:125
 #: build/C/man3/pthread_create.3:146 build/C/man3/pthread_detach.3:64
-#: build/C/man3/pthread_equal.3:46 build/C/man3/pthread_exit.3:74
-#: build/C/man3/pthread_getcpuclockid.3:64 build/C/man3/pthread_join.3:98
-#: build/C/man3/pthread_kill.3:66 build/C/man3/pthread_self.3:49
-#: build/C/man3/pthread_setcancelstate.3:112
-#: build/C/man3/pthread_setconcurrency.3:82
-#: build/C/man3/pthread_setschedparam.3:140
-#: build/C/man3/pthread_setschedprio.3:82 build/C/man3/pthread_sigmask.3:57
-#: build/C/man3/pthread_testcancel.3:57
+#: build/C/man3/pthread_equal.3:47 build/C/man3/pthread_exit.3:75
+#: build/C/man3/pthread_getcpuclockid.3:65 build/C/man3/pthread_join.3:98
+#: build/C/man3/pthread_kill.3:66 build/C/man3/pthread_self.3:50
+#: build/C/man3/pthread_setcancelstate.3:113
+#: build/C/man3/pthread_setconcurrency.3:83
+#: build/C/man3/pthread_setschedparam.3:141
+#: build/C/man3/pthread_setschedprio.3:83 build/C/man3/pthread_sigmask.3:57
+#: build/C/man3/pthread_testcancel.3:58
 msgid "POSIX.1-2001."
-msgstr ""
+msgstr "POSIX.1-2001."
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_init.3:84
+#: build/C/man3/pthread_attr_init.3:85
 msgid ""
 "The I<pthread_attr_t> type should be treated as opaque: any access to the "
 "object other than via pthreads functions is nonportable and produces "
 "undefined results."
 msgstr ""
+"I<pthread_attr_t> 型の内部構造は意識すべきではない。\n"
+"pthreads 関数経由以外でのオブジェクトへのアクセスは移植性がなく、\n"
+"どのような結果が得られるかも分からない。"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_init.3:93
+#: build/C/man3/pthread_attr_init.3:94
 msgid ""
 "The program below optionally makes use of B<pthread_attr_init>()  and "
 "various related functions to initialize a thread attributes object that is "
@@ -1229,19 +1261,30 @@ msgid ""
 "B<pthread_getattr_np>(3)  function (a nonstandard GNU extension) to retrieve "
 "the thread's attributes, and then displays those attributes."
 msgstr ""
+"下記のプログラムは、B<pthread_attr_init>() と種々の関連関数を使って、\n"
+"スレッド属性オブジェクトの初期化を行い、\n"
+"そのオブジェクトを使ってスレッドを一つ作成する。\n"
+"作成されたスレッドは、作成後に B<pthread_getattr_np>(3) 関数 \n"
+"(非標準の GNU 拡張) を使ってスレッドの属性を取得し、\n"
+"取得した属性を表示する。"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_init.3:102
+#: build/C/man3/pthread_attr_init.3:103
 msgid ""
 "If the program is run with no command-line argument, then it passes NULL as "
 "the I<attr> argument of B<pthread_create>(3), so that the thread is created "
 "with default attributes.  Running the program on Linux/x86-32 with the NPTL "
 "threading implementation, we see the following:"
 msgstr ""
+"コマンドライン引き数なしでプログラムを実行した場合、\n"
+"B<pthread_create>(3) の I<attr> 引き数には NULL が渡される。\n"
+"この場合、スレッドはデフォルトの属性で作成される。\n"
+"このプログラムを NPTL スレッド実装が使われている Linux/x86-32 で\n"
+"動作させると、以下のような出力が得られる。"
 
 #.  Results from glibc 2.8, SUSE 11.0; Oct 2008
 #. type: Plain text
-#: build/C/man3/pthread_attr_init.3:118
+#: build/C/man3/pthread_attr_init.3:119
 #, no-wrap
 msgid ""
 "$B< ulimit -s>       # No stack imit ==E<gt> default stack size is 2MB\n"
@@ -1257,9 +1300,21 @@ msgid ""
 "        Stack address       = 0x40196000\n"
 "        Stack size          = 0x201000 bytes\n"
 msgstr ""
+"$B< ulimit -s>       # No stack imit ==E<gt> default stack size is 2MB\n"
+"unlimited\n"
+"$B< ./a.out>\n"
+"Thread attributes:\n"
+"        Detach state        = PTHREAD_CREATE_JOINABLE\n"
+"        Scope               = PTHREAD_SCOPE_SYSTEM\n"
+"        Inherit scheduler   = PTHREAD_INHERIT_SCHED\n"
+"        Scheduling policy   = SCHED_OTHER\n"
+"        Scheduling priority = 0\n"
+"        Guard size          = 4096 bytes\n"
+"        Stack address       = 0x40196000\n"
+"        Stack size          = 0x201000 bytes\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_init.3:128
+#: build/C/man3/pthread_attr_init.3:129
 msgid ""
 "When we supply a stack size as a command-line argument, the program "
 "initializes a thread attributes object, sets various attributes in that "
@@ -1267,10 +1322,16 @@ msgid ""
 "(3).  Running the program on Linux/x86-32 with the NPTL threading "
 "implementation, we see the following:"
 msgstr ""
+"コマンドライン引き数でスタックサイズが与えられた場合、\n"
+"このプログラムは、スレッド属性オブジェクトを初期化し、\n"
+"そのオブジェクトの各種属性を設定し、\n"
+"B<pthread_create>(3) の呼び出しでこのオブジェクトへのポインタを渡す。\n"
+"このプログラムを NPTL スレッド実装が使われている Linux/x86-32 で\n"
+"動作させると、以下のような出力が得られる。"
 
 #.  Results from glibc 2.8, SUSE 11.0; Oct 2008
 #. type: Plain text
-#: build/C/man3/pthread_attr_init.3:143
+#: build/C/man3/pthread_attr_init.3:144
 #, no-wrap
 msgid ""
 "$B< ./a.out 0x3000000>\n"
@@ -1285,9 +1346,20 @@ msgid ""
 "        Stack address       = 0x40197000\n"
 "        Stack size          = 0x3000000 bytes\n"
 msgstr ""
+"$B< ./a.out 0x3000000>\n"
+"posix_memalign() allocated at 0x40197000\n"
+"Thread attributes:\n"
+"        Detach state        = PTHREAD_CREATE_DETACHED\n"
+"        Scope               = PTHREAD_SCOPE_SYSTEM\n"
+"        Inherit scheduler   = PTHREAD_EXPLICIT_SCHED\n"
+"        Scheduling policy   = SCHED_OTHER\n"
+"        Scheduling priority = 0\n"
+"        Guard size          = 0 bytes\n"
+"        Stack address       = 0x40197000\n"
+"        Stack size          = 0x3000000 bytes\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_init.3:154 build/C/man3/pthread_getattr_np.3:185
+#: build/C/man3/pthread_attr_init.3:155 build/C/man3/pthread_getattr_np.3:186
 #, no-wrap
 msgid ""
 "#define _GNU_SOURCE     /* To get pthread_getattr_np() declaration */\n"
@@ -1297,22 +1369,30 @@ msgid ""
 "#include E<lt>unistd.hE<gt>\n"
 "#include E<lt>errno.hE<gt>\n"
 msgstr ""
+"#define _GNU_SOURCE     /* To get pthread_getattr_np() declaration */\n"
+"#include E<lt>pthread.hE<gt>\n"
+"#include E<lt>stdio.hE<gt>\n"
+"#include E<lt>stdlib.hE<gt>\n"
+"#include E<lt>unistd.hE<gt>\n"
+"#include E<lt>errno.hE<gt>\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_init.3:157 build/C/man3/pthread_cancel.3:156
-#: build/C/man3/pthread_cleanup_push.3:236 build/C/man3/pthread_create.3:246
-#: build/C/man3/pthread_getattr_np.3:188
-#: build/C/man3/pthread_getcpuclockid.3:110
-#: build/C/man3/pthread_setaffinity_np.3:169
-#: build/C/man3/pthread_setschedparam.3:234 build/C/man3/pthread_sigmask.3:91
+#: build/C/man3/pthread_attr_init.3:158 build/C/man3/pthread_cancel.3:157
+#: build/C/man3/pthread_cleanup_push.3:237 build/C/man3/pthread_create.3:252
+#: build/C/man3/pthread_getattr_np.3:189
+#: build/C/man3/pthread_getcpuclockid.3:111
+#: build/C/man3/pthread_setaffinity_np.3:170
+#: build/C/man3/pthread_setschedparam.3:235 build/C/man3/pthread_sigmask.3:91
 #, no-wrap
 msgid ""
 "#define handle_error_en(en, msg) \\e\n"
 "        do { errno = en; perror(msg); exit(EXIT_FAILURE); } while (0)\n"
 msgstr ""
+"#define handle_error_en(en, msg) \\e\n"
+"        do { errno = en; perror(msg); exit(EXIT_FAILURE); } while (0)\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_init.3:165
+#: build/C/man3/pthread_attr_init.3:166
 #, no-wrap
 msgid ""
 "static void\n"
@@ -1323,9 +1403,16 @@ msgid ""
 "    void *stkaddr;\n"
 "    struct sched_param sp;\n"
 msgstr ""
+"static void\n"
+"display_pthread_attr(pthread_attr_t *attr, char *prefix)\n"
+"{\n"
+"    int s, i;\n"
+"    size_t v;\n"
+"    void *stkaddr;\n"
+"    struct sched_param sp;\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_init.3:173
+#: build/C/man3/pthread_attr_init.3:174
 #, no-wrap
 msgid ""
 "    s = pthread_attr_getdetachstate(attr, &i);\n"
@@ -1336,9 +1423,16 @@ msgid ""
 "            (i == PTHREAD_CREATE_JOINABLE) ? \"PTHREAD_CREATE_JOINABLE\" :\n"
 "            \"???\");\n"
 msgstr ""
+"    s = pthread_attr_getdetachstate(attr, &i);\n"
+"    if (s != 0)\n"
+"        handle_error_en(s, \"pthread_attr_getdetachstate\");\n"
+"    printf(\"%sDetach state        = %s\\en\", prefix,\n"
+"            (i == PTHREAD_CREATE_DETACHED) ? \"PTHREAD_CREATE_DETACHED\" :\n"
+"            (i == PTHREAD_CREATE_JOINABLE) ? \"PTHREAD_CREATE_JOINABLE\" :\n"
+"            \"???\");\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_init.3:181
+#: build/C/man3/pthread_attr_init.3:182
 #, no-wrap
 msgid ""
 "    s = pthread_attr_getscope(attr, &i);\n"
@@ -1349,9 +1443,16 @@ msgid ""
 "            (i == PTHREAD_SCOPE_PROCESS) ? \"PTHREAD_SCOPE_PROCESS\" :\n"
 "            \"???\");\n"
 msgstr ""
+"    s = pthread_attr_getscope(attr, &i);\n"
+"    if (s != 0)\n"
+"        handle_error_en(s, \"pthread_attr_getscope\");\n"
+"    printf(\"%sScope               = %s\\en\", prefix,\n"
+"            (i == PTHREAD_SCOPE_SYSTEM)  ? \"PTHREAD_SCOPE_SYSTEM\" :\n"
+"            (i == PTHREAD_SCOPE_PROCESS) ? \"PTHREAD_SCOPE_PROCESS\" :\n"
+"            \"???\");\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_init.3:189
+#: build/C/man3/pthread_attr_init.3:190
 #, no-wrap
 msgid ""
 "    s = pthread_attr_getinheritsched(attr, &i);\n"
@@ -1362,9 +1463,16 @@ msgid ""
 "            (i == PTHREAD_EXPLICIT_SCHED) ? \"PTHREAD_EXPLICIT_SCHED\" :\n"
 "            \"???\");\n"
 msgstr ""
+"    s = pthread_attr_getinheritsched(attr, &i);\n"
+"    if (s != 0)\n"
+"        handle_error_en(s, \"pthread_attr_getinheritsched\");\n"
+"    printf(\"%sInherit scheduler   = %s\\en\", prefix,\n"
+"            (i == PTHREAD_INHERIT_SCHED)  ? \"PTHREAD_INHERIT_SCHED\" :\n"
+"            (i == PTHREAD_EXPLICIT_SCHED) ? \"PTHREAD_EXPLICIT_SCHED\" :\n"
+"            \"???\");\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_init.3:198
+#: build/C/man3/pthread_attr_init.3:199
 #, no-wrap
 msgid ""
 "    s = pthread_attr_getschedpolicy(attr, &i);\n"
@@ -1376,9 +1484,17 @@ msgid ""
 "            (i == SCHED_RR)    ? \"SCHED_RR\" :\n"
 "            \"???\");\n"
 msgstr ""
+"    s = pthread_attr_getschedpolicy(attr, &i);\n"
+"    if (s != 0)\n"
+"        handle_error_en(s, \"pthread_attr_getschedpolicy\");\n"
+"    printf(\"%sScheduling policy   = %s\\en\", prefix,\n"
+"            (i == SCHED_OTHER) ? \"SCHED_OTHER\" :\n"
+"            (i == SCHED_FIFO)  ? \"SCHED_FIFO\" :\n"
+"            (i == SCHED_RR)    ? \"SCHED_RR\" :\n"
+"            \"???\");\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_init.3:203
+#: build/C/man3/pthread_attr_init.3:204
 #, no-wrap
 msgid ""
 "    s = pthread_attr_getschedparam(attr, &sp);\n"
@@ -1386,9 +1502,13 @@ msgid ""
 "        handle_error_en(s, \"pthread_attr_getschedparam\");\n"
 "    printf(\"%sScheduling priority = %d\\en\", prefix, sp.sched_priority);\n"
 msgstr ""
+"    s = pthread_attr_getschedparam(attr, &sp);\n"
+"    if (s != 0)\n"
+"        handle_error_en(s, \"pthread_attr_getschedparam\");\n"
+"    printf(\"%sScheduling priority = %d\\en\", prefix, sp.sched_priority);\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_init.3:208
+#: build/C/man3/pthread_attr_init.3:209
 #, no-wrap
 msgid ""
 "    s = pthread_attr_getguardsize(attr, &v);\n"
@@ -1396,9 +1516,13 @@ msgid ""
 "        handle_error_en(s, \"pthread_attr_getguardsize\");\n"
 "    printf(\"%sGuard size          = %d bytes\\en\", prefix, v);\n"
 msgstr ""
+"    s = pthread_attr_getguardsize(attr, &v);\n"
+"    if (s != 0)\n"
+"        handle_error_en(s, \"pthread_attr_getguardsize\");\n"
+"    printf(\"%sGuard size          = %d bytes\\en\", prefix, v);\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_init.3:215
+#: build/C/man3/pthread_attr_init.3:216
 #, no-wrap
 msgid ""
 "    s = pthread_attr_getstack(attr, &stkaddr, &v);\n"
@@ -1408,9 +1532,15 @@ msgid ""
 "    printf(\"%sStack size          = 0x%x bytes\\en\", prefix, v);\n"
 "}\n"
 msgstr ""
+"    s = pthread_attr_getstack(attr, &stkaddr, &v);\n"
+"    if (s != 0)\n"
+"        handle_error_en(s, \"pthread_attr_getstack\");\n"
+"    printf(\"%sStack address       = %p\\en\", prefix, stkaddr);\n"
+"    printf(\"%sStack size          = 0x%x bytes\\en\", prefix, v);\n"
+"}\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_init.3:221
+#: build/C/man3/pthread_attr_init.3:222
 #, no-wrap
 msgid ""
 "static void *\n"
@@ -1419,43 +1549,58 @@ msgid ""
 "    int s;\n"
 "    pthread_attr_t gattr;\n"
 msgstr ""
+"static void *\n"
+"thread_start(void *arg)\n"
+"{\n"
+"    int s;\n"
+"    pthread_attr_t gattr;\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_init.3:225
+#: build/C/man3/pthread_attr_init.3:226
 #, no-wrap
 msgid ""
 "    /* pthread_getattr_np() is a non-standard GNU extension that\n"
 "       retrieves the attributes of the thread specified in its\n"
 "       first argument */\n"
 msgstr ""
+"    /* pthread_getattr_np() is a non-standard GNU extension that\n"
+"       retrieves the attributes of the thread specified in its\n"
+"       first argument */\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_init.3:229
+#: build/C/man3/pthread_attr_init.3:230
 #, no-wrap
 msgid ""
 "    s = pthread_getattr_np(pthread_self(), &gattr);\n"
 "    if (s != 0)\n"
 "        handle_error_en(s, \"pthread_getattr_np\");\n"
 msgstr ""
+"    s = pthread_getattr_np(pthread_self(), &gattr);\n"
+"    if (s != 0)\n"
+"        handle_error_en(s, \"pthread_getattr_np\");\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_init.3:232
+#: build/C/man3/pthread_attr_init.3:233
 #, no-wrap
 msgid ""
 "    printf(\"Thread attributes:\\en\");\n"
 "    display_pthread_attr(&gattr, \"\\et\");\n"
 msgstr ""
+"    printf(\"Thread attributes:\\en\");\n"
+"    display_pthread_attr(&gattr, \"\\et\");\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_init.3:235 build/C/man3/pthread_getattr_np.3:237
+#: build/C/man3/pthread_attr_init.3:236 build/C/man3/pthread_getattr_np.3:238
 #, no-wrap
 msgid ""
 "    exit(EXIT_SUCCESS);         /* Terminate all threads */\n"
 "}\n"
 msgstr ""
+"    exit(EXIT_SUCCESS);         /* Terminate all threads */\n"
+"}\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_init.3:243
+#: build/C/man3/pthread_attr_init.3:244
 #, no-wrap
 msgid ""
 "int\n"
@@ -1466,88 +1611,113 @@ msgid ""
 "    pthread_attr_t *attrp;      /* NULL or &attr */\n"
 "    int s;\n"
 msgstr ""
+"int\n"
+"main(int argc, char *argv[])\n"
+"{\n"
+"    pthread_t thr;\n"
+"    pthread_attr_t attr;\n"
+"    pthread_attr_t *attrp;      /* NULL or &attr */\n"
+"    int s;\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_init.3:245
-#: build/C/man3/pthread_setschedparam.3:352
+#: build/C/man3/pthread_attr_init.3:246
+#: build/C/man3/pthread_setschedparam.3:353
 #, no-wrap
 msgid "    attrp = NULL;\n"
-msgstr ""
+msgstr "    attrp = NULL;\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_init.3:249
+#: build/C/man3/pthread_attr_init.3:250
 #, no-wrap
 msgid ""
 "    /* If a command-line argument was supplied, use it to set the\n"
 "       stack-size attribute and set a few other thread attributes,\n"
 "       and set attrp pointing to thread attributes object */\n"
 msgstr ""
+"    /* If a command-line argument was supplied, use it to set the\n"
+"       stack-size attribute and set a few other thread attributes,\n"
+"       and set attrp pointing to thread attributes object */\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_init.3:253
+#: build/C/man3/pthread_attr_init.3:254
 #, no-wrap
 msgid ""
 "    if (argc E<gt> 1) {\n"
 "        int stack_size;\n"
 "        void *sp;\n"
 msgstr ""
+"    if (argc E<gt> 1) {\n"
+"        int stack_size;\n"
+"        void *sp;\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_init.3:255
+#: build/C/man3/pthread_attr_init.3:256
 #, no-wrap
 msgid "        attrp = &attr;\n"
-msgstr ""
+msgstr "        attrp = &attr;\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_init.3:259
+#: build/C/man3/pthread_attr_init.3:260
 #, no-wrap
 msgid ""
 "        s = pthread_attr_init(&attr);\n"
 "        if (s != 0)\n"
 "            handle_error_en(s, \"pthread_attr_init\");\n"
 msgstr ""
+"        s = pthread_attr_init(&attr);\n"
+"        if (s != 0)\n"
+"            handle_error_en(s, \"pthread_attr_init\");\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_init.3:263
+#: build/C/man3/pthread_attr_init.3:264
 #, no-wrap
 msgid ""
 "        s = pthread_attr_setdetachstate(&attr, PTHREAD_CREATE_DETACHED);\n"
 "        if (s != 0)\n"
 "            handle_error_en(s, \"pthread_attr_setdetachstate\");\n"
 msgstr ""
+"        s = pthread_attr_setdetachstate(&attr, PTHREAD_CREATE_DETACHED);\n"
+"        if (s != 0)\n"
+"            handle_error_en(s, \"pthread_attr_setdetachstate\");\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_init.3:267
+#: build/C/man3/pthread_attr_init.3:268
 #, no-wrap
 msgid ""
 "        s = pthread_attr_setinheritsched(&attr, PTHREAD_EXPLICIT_SCHED);\n"
 "        if (s != 0)\n"
 "            handle_error_en(s, \"pthread_attr_setinheritsched\");\n"
 msgstr ""
+"        s = pthread_attr_setinheritsched(&attr, PTHREAD_EXPLICIT_SCHED);\n"
+"        if (s != 0)\n"
+"            handle_error_en(s, \"pthread_attr_setinheritsched\");\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_init.3:269
+#: build/C/man3/pthread_attr_init.3:270
 #, no-wrap
 msgid "        stack_size = strtoul(argv[1], NULL, 0);\n"
-msgstr ""
+msgstr "        stack_size = strtoul(argv[1], NULL, 0);\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_init.3:273
+#: build/C/man3/pthread_attr_init.3:274
 #, no-wrap
 msgid ""
 "        s = posix_memalign(&sp, sysconf(_SC_PAGESIZE), stack_size);\n"
 "        if (s != 0)\n"
 "            handle_error_en(s, \"posix_memalign\");\n"
 msgstr ""
+"        s = posix_memalign(&sp, sysconf(_SC_PAGESIZE), stack_size);\n"
+"        if (s != 0)\n"
+"            handle_error_en(s, \"posix_memalign\");\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_init.3:275
+#: build/C/man3/pthread_attr_init.3:276
 #, no-wrap
 msgid "        printf(\"posix_memalign() allocated at %p\\en\", sp);\n"
-msgstr ""
+msgstr "        printf(\"posix_memalign() allocated at %p\\en\", sp);\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_init.3:280
+#: build/C/man3/pthread_attr_init.3:281
 #, no-wrap
 msgid ""
 "        s = pthread_attr_setstack(&attr, sp, stack_size);\n"
@@ -1555,18 +1725,25 @@ msgid ""
 "            handle_error_en(s, \"pthread_attr_setstack\");\n"
 "    }\n"
 msgstr ""
+"        s = pthread_attr_setstack(&attr, sp, stack_size);\n"
+"        if (s != 0)\n"
+"            handle_error_en(s, \"pthread_attr_setstack\");\n"
+"    }\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_init.3:284 build/C/man3/pthread_getattr_np.3:332
+#: build/C/man3/pthread_attr_init.3:285 build/C/man3/pthread_getattr_np.3:333
 #, no-wrap
 msgid ""
 "    s = pthread_create(&thr, attrp, &thread_start, NULL);\n"
 "    if (s != 0)\n"
 "        handle_error_en(s, \"pthread_create\");\n"
 msgstr ""
+"    s = pthread_create(&thr, attrp, &thread_start, NULL);\n"
+"    if (s != 0)\n"
+"        handle_error_en(s, \"pthread_create\");\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_init.3:290 build/C/man3/pthread_getattr_np.3:338
+#: build/C/man3/pthread_attr_init.3:291 build/C/man3/pthread_getattr_np.3:339
 #, no-wrap
 msgid ""
 "    if (attrp != NULL) {\n"
@@ -1575,17 +1752,24 @@ msgid ""
 "            handle_error_en(s, \"pthread_attr_destroy\");\n"
 "    }\n"
 msgstr ""
+"    if (attrp != NULL) {\n"
+"        s = pthread_attr_destroy(attrp);\n"
+"        if (s != 0)\n"
+"            handle_error_en(s, \"pthread_attr_destroy\");\n"
+"    }\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_init.3:293 build/C/man3/pthread_getattr_np.3:341
+#: build/C/man3/pthread_attr_init.3:294 build/C/man3/pthread_getattr_np.3:342
 #, no-wrap
 msgid ""
 "    pause();    /* Terminates when other thread calls exit() */\n"
 "}\n"
 msgstr ""
+"    pause();    /* Terminates when other thread calls exit() */\n"
+"}\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_init.3:308
+#: build/C/man3/pthread_attr_init.3:309
 msgid ""
 "B<pthread_attr_setaffinity_np>(3), B<pthread_attr_setdetachstate>(3), "
 "B<pthread_attr_setguardsize>(3), B<pthread_attr_setinheritsched>(3), "
@@ -1594,12 +1778,18 @@ msgid ""
 "B<pthread_attr_setstackaddr>(3), B<pthread_attr_setstacksize>(3), "
 "B<pthread_create>(3), B<pthread_getattr_np>(3), B<pthreads>(7)"
 msgstr ""
+"B<pthread_attr_setaffinity_np>(3), B<pthread_attr_setdetachstate>(3), "
+"B<pthread_attr_setguardsize>(3), B<pthread_attr_setinheritsched>(3), "
+"B<pthread_attr_setschedparam>(3), B<pthread_attr_setschedpolicy>(3), "
+"B<pthread_attr_setscope>(3), B<pthread_attr_setstack>(3), "
+"B<pthread_attr_setstackaddr>(3), B<pthread_attr_setstacksize>(3), "
+"B<pthread_create>(3), B<pthread_getattr_np>(3), B<pthreads>(7)"
 
 #. type: TH
 #: build/C/man3/pthread_attr_setaffinity_np.3:24
 #, no-wrap
 msgid "PTHREAD_ATTR_SETAFFINITY_NP"
-msgstr ""
+msgstr "PTHREAD_ATTR_SETAFFINITY_NP"
 
 #. type: TH
 #: build/C/man3/pthread_attr_setaffinity_np.3:24
@@ -1608,7 +1798,7 @@ msgstr ""
 #: build/C/man3/pthread_tryjoin_np.3:24
 #, no-wrap
 msgid "2010-09-10"
-msgstr ""
+msgstr "2010-09-10"
 
 #. type: Plain text
 #: build/C/man3/pthread_attr_setaffinity_np.3:28
@@ -1616,6 +1806,8 @@ msgid ""
 "pthread_attr_setaffinity_np, pthread_attr_getaffinity_np - set/get CPU "
 "affinity attribute in thread attributes object"
 msgstr ""
+"pthread_attr_setaffinity_np, pthread_attr_getaffinity_np - \n"
+"スレッド属性オブジェクトの CPU affinity 属性の設定/取得を行う"
 
 #. type: Plain text
 #: build/C/man3/pthread_attr_setaffinity_np.3:32
@@ -1627,6 +1819,8 @@ msgid ""
 "B<#define _GNU_SOURCE>             /* See feature_test_macros(7) */\n"
 "B<#include E<lt>pthread.hE<gt>>\n"
 msgstr ""
+"B<#define _GNU_SOURCE>             /* See feature_test_macros(7) */\n"
+"B<#include E<lt>pthread.hE<gt>>\n"
 
 #. type: Plain text
 #: build/C/man3/pthread_attr_setaffinity_np.3:37
@@ -1637,134 +1831,171 @@ msgid ""
 "B<int pthread_attr_getaffinity_np(pthread_attr_t *>I<attr>B<,>\n"
 "B<                   size_t >I<cpusetsize>B<, cpu_set_t *>I<cpuset>B<);>\n"
 msgstr ""
+"B<int pthread_attr_setaffinity_np(pthread_attr_t *>I<attr>B<,>\n"
+"B<                   size_t >I<cpusetsize>B<, const cpu_set_t *>I<cpuset>B<);>\n"
+"B<int pthread_attr_getaffinity_np(pthread_attr_t *>I<attr>B<,>\n"
+"B<                   size_t >I<cpusetsize>B<, cpu_set_t *>I<cpuset>B<);>\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_setaffinity_np.3:51
+#: build/C/man3/pthread_attr_setaffinity_np.3:52
 msgid ""
 "The B<pthread_attr_setaffinity_np>()  function sets the CPU affinity mask "
 "attribute of the thread attributes object referred to by I<attr> to the "
 "value specified in I<cpuset>.  This attribute determines the CPU affinity "
 "mask of a thread created using the thread attributes object I<attr>."
 msgstr ""
+"B<pthread_attr_setaffinity_np>() 関数は、\n"
+"I<attr> が参照するスレッド属性オブジェクトの CPU affinity マスク属性を\n"
+"I<cpuset> で指定された値に設定する。\n"
+"この属性により、スレッド属性オブジェクト I<attr> を使って\n"
+"作成されたスレッドの CPU affinity マスクが決定される。"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_setaffinity_np.3:60
+#: build/C/man3/pthread_attr_setaffinity_np.3:61
 msgid ""
 "The B<pthread_attr_getaffinity_np>()  function returns the CPU affinity mask "
 "attribute of the thread attributes object referred to by I<attr> in the "
 "buffer pointed to by I<cpuset>."
 msgstr ""
+"B<pthread_attr_getaffinity_np>() 関数は、 I<attr> が参照する\n"
+"スレッド属性オブジェクトの CPU affinity マスク属性を\n"
+"I<cpuset> が指すバッファに入れて返す。"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_setaffinity_np.3:67
+#: build/C/man3/pthread_attr_setaffinity_np.3:68
 msgid ""
 "The argument I<cpusetsize> is the length (in bytes) of the buffer pointed to "
 "by I<cpuset>.  Typically, this argument would be specified as I<sizeof"
 "(cpu_set_t)>."
 msgstr ""
+"I<cpusetsize> 引き数は I<cpuset> が指すバッファの (バイト単位の)\n"
+"大きさである。通常は、この引き数には I<sizeof(cpu_set_t)> を\n"
+"指定することだろう。"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_setaffinity_np.3:73
-#: build/C/man3/pthread_setaffinity_np.3:64
+#: build/C/man3/pthread_attr_setaffinity_np.3:74
+#: build/C/man3/pthread_setaffinity_np.3:65
 msgid ""
 "For more details on CPU affinity masks, see B<sched_setaffinity>(2).  For a "
 "description of a set of macros that can be used to manipulate and inspect "
 "CPU sets, see B<CPU_SET>(3)."
 msgstr ""
+"CPU affinity マスクの詳細については、 \n"
+"B<sched_setaffinity>(2) を参照してほしい。\n"
+"CPU 集合の操作や取得を行う際に利用できるマクロ群の説明は \n"
+"B<CPU_SET>(3) を参照してほしい。"
 
 #. type: TP
-#: build/C/man3/pthread_attr_setaffinity_np.3:77
-#: build/C/man3/pthread_attr_setaffinity_np.3:89
-#: build/C/man3/pthread_attr_setdetachstate.3:80
-#: build/C/man3/pthread_attr_setinheritsched.3:87
-#: build/C/man3/pthread_attr_setschedpolicy.3:75
-#: build/C/man3/pthread_attr_setscope.3:94
+#: build/C/man3/pthread_attr_setaffinity_np.3:78
+#: build/C/man3/pthread_attr_setaffinity_np.3:90
+#: build/C/man3/pthread_attr_setdetachstate.3:81
+#: build/C/man3/pthread_attr_setinheritsched.3:88
+#: build/C/man3/pthread_attr_setschedpolicy.3:76
+#: build/C/man3/pthread_attr_setscope.3:95
 #: build/C/man3/pthread_attr_setstack.3:89
-#: build/C/man3/pthread_attr_setstacksize.3:64
+#: build/C/man3/pthread_attr_setstacksize.3:65
 #: build/C/man3/pthread_create.3:135 build/C/man3/pthread_detach.3:53
 #: build/C/man3/pthread_join.3:83 build/C/man3/pthread_join.3:87
-#: build/C/man3/pthread_kill.3:56 build/C/man3/pthread_setaffinity_np.3:81
-#: build/C/man3/pthread_setaffinity_np.3:90
-#: build/C/man3/pthread_setaffinity_np.3:106
-#: build/C/man3/pthread_setcancelstate.3:96
-#: build/C/man3/pthread_setcancelstate.3:104
-#: build/C/man3/pthread_setconcurrency.3:68
-#: build/C/man3/pthread_setschedparam.3:119
-#: build/C/man3/pthread_setschedprio.3:59 build/C/man3/pthread_sigqueue.3:75
+#: build/C/man3/pthread_kill.3:56 build/C/man3/pthread_setaffinity_np.3:82
+#: build/C/man3/pthread_setaffinity_np.3:91
+#: build/C/man3/pthread_setaffinity_np.3:107
+#: build/C/man3/pthread_setcancelstate.3:97
+#: build/C/man3/pthread_setcancelstate.3:105
+#: build/C/man3/pthread_setconcurrency.3:69
+#: build/C/man3/pthread_setschedparam.3:120
+#: build/C/man3/pthread_setschedprio.3:60 build/C/man3/pthread_sigqueue.3:75
 #, no-wrap
 msgid "B<EINVAL>"
-msgstr ""
+msgstr "B<EINVAL>"
 
 #.  cpumask_t
 #.  The raw sched_getaffinity() system call returns the size (in bytes)
 #.  of the cpumask_t type.
 #. type: Plain text
-#: build/C/man3/pthread_attr_setaffinity_np.3:89
+#: build/C/man3/pthread_attr_setaffinity_np.3:90
 msgid ""
 "(B<pthread_attr_setaffinity_np>())  I<cpuset> specified a CPU that was "
 "outside the set supported by the kernel.  (The kernel configuration option "
 "B<CONFIG_NR_CPUS> defines the range of the set supported by the kernel data "
 "type used to represent CPU sets.)"
 msgstr ""
+"(B<pthread_attr_setaffinity_np>())\n"
+"I<cpuset> がカーネルがサポートする CPU 集合にない CPU を指定していた。\n"
+"(CPU 集合を表現するのに使われるカーネルのデータ型がサポートする集合の範囲"
+"は、\n"
+"カーネルの設定オプション B<CONFIG_NR_CPUS> により定義される)。"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_setaffinity_np.3:99
+#: build/C/man3/pthread_attr_setaffinity_np.3:100
 msgid ""
 "(B<pthread_attr_getaffinity_np>())  A CPU in the affinity mask of the thread "
 "attributes object referred to by I<attr> lies outside the range specified by "
 "I<cpusetsize> (i.e., I<cpuset>/I<cpusetsize> is too small)."
 msgstr ""
+"(B<pthread_attr_getaffinity_np>())\n"
+"I<attr> が参照するスレッド属性オブジェクトの affinity マスク内の CPU が、\n"
+"I<cpusetsize> により指定された範囲の中になかった\n"
+"(すなわち、I<cpuset>/I<cpusetsize> が小さすぎる)。"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_setaffinity_np.3:103
+#: build/C/man3/pthread_attr_setaffinity_np.3:104
 msgid "(B<pthread_attr_setaffinity_np>())  Could not allocate memory."
 msgstr ""
+"(B<pthread_attr_setaffinity_np>()) メモリを割り当てることができなかった。"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_setaffinity_np.3:105
-#: build/C/man3/pthread_setaffinity_np.3:118
+#: build/C/man3/pthread_attr_setaffinity_np.3:106
+#: build/C/man3/pthread_setaffinity_np.3:119
 msgid "These functions are provided by glibc since version 2.3.4."
-msgstr ""
+msgstr "これらの関数は glibc バージョン 2.3.4 以降で提供されている。"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_setaffinity_np.3:108
-#: build/C/man3/pthread_cleanup_push_defer_np.3:101
-#: build/C/man3/pthread_setaffinity_np.3:121
+#: build/C/man3/pthread_attr_setaffinity_np.3:109
+#: build/C/man3/pthread_cleanup_push_defer_np.3:102
+#: build/C/man3/pthread_setaffinity_np.3:122
 #: build/C/man3/pthread_tryjoin_np.3:113
 msgid ""
 "These functions are nonstandard GNU extensions; hence the suffix \"_np"
 "\" (nonportable) in the names."
 msgstr ""
+"これらの関数は非標準の GNU による拡張である。\n"
+"そのため、名前に \"_np\" (nonportable; 移植性がない) という接尾辞が\n"
+"付いている。"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_setaffinity_np.3:115
-#: build/C/man3/pthread_setaffinity_np.3:147
+#: build/C/man3/pthread_attr_setaffinity_np.3:116
+#: build/C/man3/pthread_setaffinity_np.3:148
 msgid ""
 "In glibc 2.3.3 only, versions of these functions were provided that did not "
 "have a I<cpusetsize> argument.  Instead the CPU set size given to the "
 "underlying system calls was always I<sizeof(cpu_set_t)>."
 msgstr ""
+"(このバージョンだけであるが) glibc 2.3.3 では、\n"
+"これらの関数は I<cpusetsize> 引き数を持っていなかった。\n"
+"内部で呼ばれるシステムコールに渡される CPU セットの大きさは\n"
+"常に I<sizeof(cpu_set_t)> であった。"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_setaffinity_np.3:121
+#: build/C/man3/pthread_attr_setaffinity_np.3:122
 msgid ""
 "B<sched_setaffinity>(2), B<pthread_attr_init>(3), B<pthread_setaffinity_np>"
 "(3), B<cpuset>(7), B<pthreads>(7)"
 msgstr ""
+"B<sched_setaffinity>(2), B<pthread_attr_init>(3), B<pthread_setaffinity_np>"
+"(3), B<cpuset>(7), B<pthreads>(7)"
 
 #. type: TH
 #: build/C/man3/pthread_attr_setdetachstate.3:24
 #, no-wrap
 msgid "PTHREAD_ATTR_SETDETACHSTATE"
-msgstr ""
+msgstr "PTHREAD_ATTR_SETDETACHSTATE"
 
 #. type: TH
 #: build/C/man3/pthread_attr_setdetachstate.3:24
-#: build/C/man3/pthread_attr_setschedparam.3:24
 #: build/C/man3/pthread_attr_setschedpolicy.3:24
 #, no-wrap
 msgid "2010-02-03"
-msgstr ""
+msgstr "2010-02-03"
 
 #. type: Plain text
 #: build/C/man3/pthread_attr_setdetachstate.3:28
@@ -1772,6 +2003,8 @@ msgid ""
 "pthread_attr_setdetachstate, pthread_attr_getdetachstate - set/get detach "
 "state attribute in thread attributes object"
 msgstr ""
+"pthread_attr_setdetachstate, pthread_attr_getdetachstate - \n"
+"スレッド属性オブジェクトの detach state 属性の設定/取得を行う"
 
 #. type: Plain text
 #: build/C/man3/pthread_attr_setdetachstate.3:36
@@ -1780,9 +2013,11 @@ msgid ""
 "B<int pthread_attr_setdetachstate(pthread_attr_t *>I<attr>B<, int >I<detachstate>B<);>\n"
 "B<int pthread_attr_getdetachstate(pthread_attr_t *>I<attr>B<, int *>I<detachstate>B<);>\n"
 msgstr ""
+"B<int pthread_attr_setdetachstate(pthread_attr_t *>I<attr>B<, int >I<detachstate>B<);>\n"
+"B<int pthread_attr_getdetachstate(pthread_attr_t *>I<attr>B<, int *>I<detachstate>B<);>\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_setdetachstate.3:50
+#: build/C/man3/pthread_attr_setdetachstate.3:51
 msgid ""
 "The B<pthread_attr_setdetachstate>()  function sets the detach state "
 "attribute of the thread attributes object referred to by I<attr> to the "
@@ -1790,101 +2025,123 @@ msgid ""
 "whether a thread created using the thread attributes object I<attr> will be "
 "created in a joinable or a detached state."
 msgstr ""
+"B<pthread_attr_setdetachstate>() 関数は、\n"
+"I<attr> が参照するスレッド属性オブジェクトの detach state 属性を\n"
+"I<detachstate> で指定された値に設定する。\n"
+"detach state 属性により、スレッド属性オブジェクト I<attr> を使って\n"
+"作成されるスレッドが、 join 可能な状態で作成されるか、\n"
+"detached (切り離された) 状態で作成されるかが決定される。"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_setdetachstate.3:53
+#: build/C/man3/pthread_attr_setdetachstate.3:54
 msgid "The following values may be specified in I<detachstate>:"
-msgstr ""
+msgstr "I<detachstate> には以下の値を指定できる。"
 
 #. type: TP
-#: build/C/man3/pthread_attr_setdetachstate.3:53
+#: build/C/man3/pthread_attr_setdetachstate.3:54
 #, no-wrap
 msgid "B<PTHREAD_CREATE_DETACHED>"
-msgstr ""
+msgstr "B<PTHREAD_CREATE_DETACHED>"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_setdetachstate.3:58
+#: build/C/man3/pthread_attr_setdetachstate.3:59
 msgid ""
 "Threads that are created using I<attr> will be created in a detached state."
-msgstr ""
+msgstr "I<attr> を使って作成されるスレッドは detached 状態で作成される。"
 
 #. type: TP
-#: build/C/man3/pthread_attr_setdetachstate.3:58
+#: build/C/man3/pthread_attr_setdetachstate.3:59
 #, no-wrap
 msgid "B<PTHREAD_CREATE_JOINABLE>"
-msgstr ""
+msgstr "B<PTHREAD_CREATE_JOINABLE>"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_setdetachstate.3:63
+#: build/C/man3/pthread_attr_setdetachstate.3:64
 msgid ""
 "Threads that are created using I<attr> will be created in a joinable state."
-msgstr ""
+msgstr "I<attr> を使って作成されるスレッドは join 可能な状態で作成される。"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_setdetachstate.3:67
+#: build/C/man3/pthread_attr_setdetachstate.3:68
 msgid ""
 "The default setting of the detach state attribute in a newly initialized "
 "thread attributes object is B<PTHREAD_CREATE_JOINABLE>."
 msgstr ""
+"新規に初期化されたスレッド属性オブジェクトの detach state 属性の\n"
+"デフォルト設定は B<PTHREAD_CREATE_JOINABLE> である。"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_setdetachstate.3:74
+#: build/C/man3/pthread_attr_setdetachstate.3:75
 msgid ""
 "The B<pthread_attr_getdetachstate>()  returns the detach state attribute of "
 "the thread attributes object I<attr> in the buffer pointed to by "
 "I<detachstate>."
 msgstr ""
+"B<pthread_attr_getdetachstate>() は、\n"
+"スレッド属性オブジェクト I<attr> の detach state 属性を\n"
+"I<detachstate> が指すバッファに入れて返す。"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_setdetachstate.3:80
+#: build/C/man3/pthread_attr_setdetachstate.3:81
 msgid "B<pthread_attr_setdetachstate>()  can fail with the following error:"
-msgstr ""
+msgstr "B<pthread_attr_setdetachstate>() は以下のエラーで失敗する場合がある。"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_setdetachstate.3:84
+#: build/C/man3/pthread_attr_setdetachstate.3:85
 msgid "An invalid value was specified in I<detachstate>."
-msgstr ""
+msgstr "無効な値が I<detachstate> で指定された。"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_setdetachstate.3:90
+#: build/C/man3/pthread_attr_setdetachstate.3:91
 msgid ""
 "See B<pthread_create>(3)  for more details on detached and joinable threads."
 msgstr ""
+"detached 状態のスレッド、join 可能状態のスレッドの詳細については、\n"
+"B<pthread_create>(3) を参照。"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_setdetachstate.3:98
+#: build/C/man3/pthread_attr_setdetachstate.3:99
 msgid ""
 "A thread that is created in a joinable state should eventually either be "
 "joined using B<pthread_join>(3)  or detached using B<pthread_detach>(3); see "
 "B<pthread_create>(3)."
 msgstr ""
+"join 可能状態で作成されたスレッドは、最終的に\n"
+"B<pthread_join>(3) を使って join するか、\n"
+"B<pthread_detach>(3) を使って切り離すか、\n"
+"のどちらかを行うべきである。"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_setdetachstate.3:105
+#: build/C/man3/pthread_attr_setdetachstate.3:106
 msgid ""
 "It is an error to specify the thread ID of a thread that was created in a "
 "detached state in a later call to B<pthread_detach>(3)  or B<pthread_join>"
 "(3)."
 msgstr ""
+"detached 状態で作成されたスレッドのスレッド ID を指定して、\n"
+"B<pthread_detach>(3) や B<pthread_join>(3) を後から呼び出すのは\n"
+"エラーである。"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_setdetachstate.3:108
+#: build/C/man3/pthread_attr_setdetachstate.3:109
 #: build/C/man3/pthread_attr_setstack.3:154
 msgid "See B<pthread_attr_init>(3)."
-msgstr ""
+msgstr "B<pthread_attr_init>(3) を参照。"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_setdetachstate.3:114
+#: build/C/man3/pthread_attr_setdetachstate.3:115
 msgid ""
 "B<pthread_attr_init>(3), B<pthread_create>(3), B<pthread_detach>(3), "
 "B<pthread_join>(3), B<pthreads>(7)"
 msgstr ""
+"B<pthread_attr_init>(3), B<pthread_create>(3), B<pthread_detach>(3), "
+"B<pthread_join>(3), B<pthreads>(7)"
 
 #. type: TH
 #: build/C/man3/pthread_attr_setguardsize.3:24
 #, no-wrap
 msgid "PTHREAD_ATTR_SETGUARDSIZE"
-msgstr ""
+msgstr "PTHREAD_ATTR_SETGUARDSIZE"
 
 #. type: TH
 #: build/C/man3/pthread_attr_setguardsize.3:24
@@ -1893,7 +2150,7 @@ msgstr ""
 #: build/C/man3/pthread_attr_setstackaddr.3:24 build/C/man3/pthread_self.3:24
 #, no-wrap
 msgid "2008-10-24"
-msgstr ""
+msgstr "2008-10-24"
 
 #. type: Plain text
 #: build/C/man3/pthread_attr_setguardsize.3:28
@@ -1901,6 +2158,8 @@ msgid ""
 "pthread_attr_setguardsize, pthread_attr_getguardsize - set/get guard size "
 "attribute in thread attributes object"
 msgstr ""
+"pthread_attr_setguardsize, pthread_attr_getguardsize - \n"
+"スレッド属性オブジェクトの guard size 属性の設定/取得を行う"
 
 #. type: Plain text
 #: build/C/man3/pthread_attr_setguardsize.3:36
@@ -1909,38 +2168,50 @@ msgid ""
 "B<int pthread_attr_setguardsize(pthread_attr_t *>I<attr>B<, size_t >I<guardsize>B<);>\n"
 "B<int pthread_attr_getguardsize(pthread_attr_t *>I<attr>B<, size_t *>I<guardsize>B<);>\n"
 msgstr ""
+"B<int pthread_attr_setguardsize(pthread_attr_t *>I<attr>B<, size_t >I<guardsize>B<);>\n"
+"B<int pthread_attr_getguardsize(pthread_attr_t *>I<attr>B<, size_t *>I<guardsize>B<);>\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_setguardsize.3:46
+#: build/C/man3/pthread_attr_setguardsize.3:47
 msgid ""
 "The B<pthread_attr_setguardsize>()  function sets the guard size attribute "
 "of the thread attributes object referred to by I<attr> to the value "
 "specified in I<guardsize>."
 msgstr ""
+"B<pthread_attr_setguardsize>() 関数は、\n"
+"I<attr> が参照するスレッド属性オブジェクトの guard size 属性を\n"
+"I<guardsize> で指定された値に設定する。"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_setguardsize.3:56
+#: build/C/man3/pthread_attr_setguardsize.3:57
 msgid ""
 "If I<guardsize> is greater than 0, then for each new thread created using "
 "I<attr> the system allocates an additional region of at least I<guardsize> "
 "bytes at the end of the thread's stack to act as the guard area for the "
 "stack (but see BUGS)."
 msgstr ""
+"I<guardsize> が 0 より大きい場合、\n"
+"I<attr> を使って新しく作成された各スレッドに対して、\n"
+"システムはスレッドのスタックの末尾に少なくとも I<guardsize> バイトの\n"
+"追加領域を割り当てる。この追加領域はスタックに対するガード領域として\n"
+"機能する (ただし「バグ」の節も参照)。"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_setguardsize.3:62
+#: build/C/man3/pthread_attr_setguardsize.3:63
 msgid ""
 "If I<guardsize> is 0, then new threads created with I<attr> will not have a "
 "guard area."
 msgstr ""
+"I<guardsize> が 0 の場合、\n"
+"I<attr> を使って新しく作成されたスレッドはガード領域を持たない。"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_setguardsize.3:64
+#: build/C/man3/pthread_attr_setguardsize.3:65
 msgid "The default guard size is the same as the system page size."
-msgstr ""
+msgstr "デフォルトの guard size はシステムのページサイズと同じである。"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_setguardsize.3:79
+#: build/C/man3/pthread_attr_setguardsize.3:80
 msgid ""
 "If the stack address attribute has been set in I<attr> (using "
 "B<pthread_attr_setstack>(3)  or B<pthread_attr_setstackaddr>(3)), meaning "
@@ -1950,32 +2221,47 @@ msgid ""
 "B<mprotect>(2)  to manually define a guard area at the end of the stack that "
 "it has allocated)."
 msgstr ""
+"(B<pthread_attr_setstack>(3) や B<pthread_attr_setstackaddr>(3)を使って)\n"
+"I<attr> でスタックアドレス属性が設定されている場合には、呼び出し側がそ\n"
+"のスレッドのスタックを割り当てていることを意味するので、guard size 属性\n"
+"は無視される (すなわち、システムによるガード領域の作成は行われない)。\n"
+"この場合、スタックオーバーフローが起こらないように対処するのはアプリ\n"
+"ケーション側の責任となる (おそらく B<mprotect>(2) を使って、割り当て\n"
+"られたスタックの最後に手動でガード領域を定義することになるだろう)。"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_setguardsize.3:87
+#: build/C/man3/pthread_attr_setguardsize.3:88
 msgid ""
 "The B<pthread_attr_getguardsize>()  function returns the guard size "
 "attribute of the thread attributes object referred to by I<attr> in the "
 "buffer pointed to by I<guardsize>."
 msgstr ""
+"B<pthread_attr_getguardsize>() は、\n"
+"スレッド属性オブジェクト I<attr> の guard size 属性を\n"
+"I<guardsize> が指すバッファに入れて返す。"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_setguardsize.3:101
+#: build/C/man3/pthread_attr_setguardsize.3:102
 msgid ""
 "POSIX.1-2001 documents an B<EINVAL> error if I<attr> or I<guardsize> is "
 "invalid.  On Linux these functions always succeed (but portable and future-"
 "proof applications should nevertheless handle a possible error return)."
 msgstr ""
+"POSIX.1-2001 では、エラー B<EINVAL> が\n"
+" I<attr> か I<guardsize> が無効な場合に対して規定されている。\n"
+"Linux では、これらの関数は常に成功する\n"
+"(ただし、移植性や将来も動作することを保証したいアプリケーションでは\n"
+"正のエラーの返り値を処理するようにすべきである)。"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_setguardsize.3:103
-#: build/C/man3/pthread_attr_setstackaddr.3:80
-#: build/C/man3/pthread_attr_setstacksize.3:80
+#: build/C/man3/pthread_attr_setguardsize.3:104
+#: build/C/man3/pthread_attr_setstackaddr.3:81
+#: build/C/man3/pthread_attr_setstacksize.3:81
 msgid "These functions are provided by glibc since version 2.1."
-msgstr ""
+msgstr "これらの関数は glibc バージョン 2.1 以降で提供されている。"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_setguardsize.3:119
+#: build/C/man3/pthread_attr_setguardsize.3:120
 msgid ""
 "A guard area consists of virtual memory pages that are protected to prevent "
 "read and write access.  If a thread overflows its stack into the guard area, "
@@ -1985,33 +2271,47 @@ msgid ""
 "thread.  (Nevertheless, B<pthread_attr_getguardsize>()  returns the guard "
 "size that was set by B<pthread_attr_setguardsize>().)"
 msgstr ""
+"ガード領域は、読み出し/書き込みアクセスが行われないように保護がかけ\n"
+"られた仮想メモリページで構成で構成される。スレッドがスタックをガード\n"
+"領域までオーバーフローさせた場合、ほとんどのハードウェアアーキテクチャ\n"
+"では、スレッドに B<SIGSEGV> シグナルが送られ、オーバーフローが発生した\n"
+"ことが通知される。ガード領域はページ境界から開始され、ガード領域の\n"
+"大きさはスレッド作成時に内部的にシステムのページサイズに切り上げられる\n"
+"(その場合も B<pthread_attr_getguardsize>() では\n"
+"B<pthread_attr_setguardsize>() で設定された guard size が返される)。"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_setguardsize.3:123
+#: build/C/man3/pthread_attr_setguardsize.3:124
 msgid ""
 "Setting a guard size of 0 may be useful to save memory in an application "
 "that creates many threads and knows that stack overflow can never occur."
 msgstr ""
+"多くのスレッドを作成するアプリケーションで、かつ、スタックオーバーフロー\n"
+"が決して発生しないことが分かっている場合には、guard size を 0 に設定\n"
+"することで、メモリを節約できることもある。"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_setguardsize.3:127
+#: build/C/man3/pthread_attr_setguardsize.3:128
 msgid ""
 "Choosing a guard size larger than the default size may be necessary for "
 "detecting stack overflows if a thread allocates large data structures on the "
 "stack."
 msgstr ""
+"スレッドがスタックに大きなデータ構造を割り当てる場合には、\n"
+"スタックオーバーフローを検出するためには、デフォルトサイズよりも\n"
+"大きな guard size を選ぶ必要があるかもしれない。"
 
 #. type: SH
-#: build/C/man3/pthread_attr_setguardsize.3:127
-#: build/C/man3/pthread_attr_setinheritsched.3:103
-#: build/C/man3/pthread_attr_setstacksize.3:96
-#: build/C/man3/pthread_create.3:361 build/C/man3/pthread_exit.3:90
+#: build/C/man3/pthread_attr_setguardsize.3:128
+#: build/C/man3/pthread_attr_setinheritsched.3:101
+#: build/C/man3/pthread_attr_setstacksize.3:94
+#: build/C/man3/pthread_create.3:194 build/C/man3/pthread_exit.3:91
 #, no-wrap
 msgid "BUGS"
-msgstr ""
+msgstr "バグ"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_setguardsize.3:138
+#: build/C/man3/pthread_attr_setguardsize.3:139
 msgid ""
 "As at glibc 2.8, the NPTL threading implementation includes the guard area "
 "within the stack size allocation, rather than allocating extra space at the "
@@ -2019,6 +2319,12 @@ msgid ""
 "error from B<pthread_create>(3)  if the guard size value is too large, "
 "leaving no space for the actual stack.)"
 msgstr ""
+"glibc 2.8 の時点では、 NPTL スレッド実装ではガード領域はスタックサイズ\n"
+"で割り当てられる領域の中に含まれている。一方、POSIX.1 では、スタックの\n"
+"末尾に追加の領域を割り当てることが求められている。\n"
+"(このため、ガード領域が大きすぎて、\n"
+"実際のスタック用の場所がなくなってしまう場合、\n"
+"B<pthread_create>(3) で B<EINVAL> エラーが発生することになる。)"
 
 #.  glibc includes the guardsize within the allocated stack size,
 #.  which looks pretty clearly to be in violation of POSIX.
@@ -2030,35 +2336,43 @@ msgstr ""
 #.  extra space at the end of the stack:
 #.  http://sourceware.org/ml/libc-alpha/2008-05/msg00086.html
 #. type: Plain text
-#: build/C/man3/pthread_attr_setguardsize.3:152
+#: build/C/man3/pthread_attr_setguardsize.3:153
 msgid ""
 "The obsolete LinuxThreads implementation did the right thing, allocating "
 "extra space at the end of the stack for the guard area."
 msgstr ""
+"廃止予定の LinuxThreads 実装では、\n"
+"POSIX.1 で求められている通りの動作で、\n"
+"ガード領域がスタックの末尾に追加の領域が割り当てられる。"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_setguardsize.3:155
+#: build/C/man3/pthread_attr_setguardsize.3:156
 msgid "See B<pthread_getattr_np>(3)."
-msgstr ""
+msgstr "B<pthread_getattr_np>(3) を参照。"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_setguardsize.3:163
+#: build/C/man3/pthread_attr_setguardsize.3:164
 msgid ""
 "B<mmap>(2), B<mprotect>(2), B<pthread_attr_init>(3), B<pthread_attr_setstack>"
 "(3), B<pthread_attr_setstacksize>(3), B<pthread_create>(3), B<pthreads>(7)"
 msgstr ""
+"B<mmap>(2), B<mprotect>(2), B<pthread_attr_init>(3), B<pthread_attr_setstack>"
+"(3), B<pthread_attr_setstacksize>(3), B<pthread_create>(3), B<pthreads>(7)"
 
 #. type: TH
 #: build/C/man3/pthread_attr_setinheritsched.3:24
 #, no-wrap
 msgid "PTHREAD_ATTR_SETINHERITSCHED"
-msgstr ""
+msgstr "PTHREAD_ATTR_SETINHERITSCHED"
 
 #. type: TH
 #: build/C/man3/pthread_attr_setinheritsched.3:24
+#: build/C/man3/pthread_attr_setschedparam.3:24
+#: build/C/man3/pthread_attr_setstacksize.3:24
+#: build/C/man3/pthread_create.3:24
 #, no-wrap
-msgid "2008-11-10"
-msgstr ""
+msgid "2012-03-15"
+msgstr "2012-03-15"
 
 #. type: Plain text
 #: build/C/man3/pthread_attr_setinheritsched.3:28
@@ -2066,6 +2380,8 @@ msgid ""
 "pthread_attr_setinheritsched, pthread_attr_getinheritsched - set/get inherit "
 "scheduler attribute in thread attributes object"
 msgstr ""
+"pthread_attr_setinheritsched, pthread_attr_getinheritsched - \n"
+"スレッド属性オブジェクトの inherit scheduler 属性の設定/取得を行う"
 
 #. type: Plain text
 #: build/C/man3/pthread_attr_setinheritsched.3:36
@@ -2076,9 +2392,13 @@ msgid ""
 "B<int pthread_attr_getinheritsched(pthread_attr_t *>I<attr>B<,>\n"
 "B<                                 int *>I<inheritsched>B<);>\n"
 msgstr ""
+"B<int pthread_attr_setinheritsched(pthread_attr_t *>I<attr>B<,>\n"
+"B<                                 int >I<inheritsched>B<);>\n"
+"B<int pthread_attr_getinheritsched(pthread_attr_t *>I<attr>B<,>\n"
+"B<                                 int *>I<inheritsched>B<);>\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_setinheritsched.3:52
+#: build/C/man3/pthread_attr_setinheritsched.3:53
 msgid ""
 "The B<pthread_attr_setinheritsched>()  function sets the inherit scheduler "
 "attribute of the thread attributes object referred to by I<attr> to the "
@@ -2087,85 +2407,97 @@ msgid ""
 "I<attr> will inherit its scheduling attributes from the calling thread or "
 "whether it will take them from I<attr>."
 msgstr ""
+"B<pthread_attr_setinheritsched>() 関数は、\n"
+"I<attr> が参照するスレッド属性オブジェクトの inherit scheduler 属性を\n"
+"I<inheritsched> で指定された値に設定する。\n"
+"inherit scheduler 属性により、スレッド属性オブジェクト I<attr> を使って\n"
+"作成されるスレッドが、呼び出したスレッドのスケジューリング属性を継承\n"
+"するか、I<attr> からスケジューリング属性を取得するかが決定される。"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_setinheritsched.3:55
+#: build/C/man3/pthread_attr_setinheritsched.3:56
 msgid "The following values may be specified in I<inheritsched>:"
-msgstr ""
+msgstr "以下の値を I<inheritsched> に指定できる。"
 
 #. type: TP
-#: build/C/man3/pthread_attr_setinheritsched.3:55
+#: build/C/man3/pthread_attr_setinheritsched.3:56
 #, no-wrap
 msgid "B<PTHREAD_INHERIT_SCHED>"
-msgstr ""
+msgstr "B<PTHREAD_INHERIT_SCHED>"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_setinheritsched.3:63
+#: build/C/man3/pthread_attr_setinheritsched.3:64
 msgid ""
 "Threads that are created using I<attr> inherit scheduling attributes from "
 "the creating thread; the scheduling attributes in I<attr> are ignored."
 msgstr ""
+"I<attr> を使って作成されたスレッドは、\n"
+"スレッドを作成するスレッドからスケジューリング属性を継承する。\n"
+"I<attr> 内のスケジューリング属性は無視される。"
 
 #. type: TP
-#: build/C/man3/pthread_attr_setinheritsched.3:63
+#: build/C/man3/pthread_attr_setinheritsched.3:64
 #, no-wrap
 msgid "B<PTHREAD_EXPLICIT_SCHED>"
-msgstr ""
+msgstr "B<PTHREAD_EXPLICIT_SCHED>"
 
 #.  FIXME what are the defaults for scheduler settings?
 #. type: Plain text
-#: build/C/man3/pthread_attr_setinheritsched.3:70
+#: build/C/man3/pthread_attr_setinheritsched.3:71
 msgid ""
 "Threads that are created using I<attr> take their scheduling attributes from "
 "the values specified by the attributes object."
 msgstr ""
+"I<attr> を使って作成されたスレッドは、スレッド属性オブジェクトで\n"
+"指定された値からスケジューリング属性を取得する。"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_setinheritsched.3:74
+#: build/C/man3/pthread_attr_setinheritsched.3:75
 msgid ""
 "The default setting of the inherit scheduler attribute in a newly "
 "initialized thread attributes object is B<PTHREAD_INHERIT_SCHED>."
 msgstr ""
+"新たに初期化されたスレッド属性オブジェクトの inherit scheduler 属性の\n"
+"デフォルト設定は B<PTHREAD_INHERIT_SCHED> である。"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_setinheritsched.3:81
+#: build/C/man3/pthread_attr_setinheritsched.3:82
 msgid ""
 "The B<pthread_attr_getinheritsched>()  returns the inherit scheduler "
 "attribute of the thread attributes object I<attr> in the buffer pointed to "
 "by I<inheritsched>."
 msgstr ""
+"B<pthread_attr_getinheritsched>() は、\n"
+"スレッド属性オブジェクト I<attr> の inherit scheduler 属性を\n"
+"I<inheritsched> が指すバッファに入れて返す。"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_setinheritsched.3:87
+#: build/C/man3/pthread_attr_setinheritsched.3:88
 msgid "B<pthread_attr_setinheritsched>()  can fail with the following error:"
-msgstr ""
+msgstr "B<pthread_attr_setinheritsched>() は以下のエラーで失敗する場合がある。"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_setinheritsched.3:91
+#: build/C/man3/pthread_attr_setinheritsched.3:92
 msgid "Invalid value in I<inheritsched>."
-msgstr ""
+msgstr "I<inheritsched> に無効な値が指定された。"
 
 #.  .SH VERSIONS
 #.  Available since glibc 2.0.
 #. type: Plain text
-#: build/C/man3/pthread_attr_setinheritsched.3:98
+#: build/C/man3/pthread_attr_setinheritsched.3:99
 msgid ""
 "POSIX.1-2001 also documents an optional B<ENOTSUP> error (\"attempt was made "
 "to set the attribute to an unsupported value\") for "
 "B<pthread_attr_setinheritsched>()."
 msgstr ""
-
-#. type: Plain text
-#: build/C/man3/pthread_attr_setinheritsched.3:103
-#: build/C/man3/pthread_attr_setschedparam.3:91
-#: build/C/man3/pthread_attr_setschedpolicy.3:91
-msgid "See B<pthread_setschedparam>(3)."
-msgstr ""
+"POSIX.1-2001 では、 B<pthread_attr_setinheritsched>() に関して\n"
+"エラー B<ENOTSUP> (\"サポートされていない値を属性に設定しようとした\")\n"
+"も追加で規定されている。"
 
 #.  FIXME . Track status of the following bug:
 #.  http://sourceware.org/bugzilla/show_bug.cgi?id=7007
 #. type: Plain text
-#: build/C/man3/pthread_attr_setinheritsched.3:119
+#: build/C/man3/pthread_attr_setinheritsched.3:117
 msgid ""
 "As at glibc 2.8, if a thread attributes object is initialized using "
 "B<pthread_attr_init>(3), then the scheduling policy of the attributes object "
@@ -2176,21 +2508,42 @@ msgid ""
 "either the scheduling policy or scheduling priority attribute is explicitly "
 "set in the thread attributes object before calling B<pthread_create>(3)."
 msgstr ""
+"glibc 2.8 の時点では、スレッド属性オブジェクトが\n"
+"B<pthread_attr_init>(3) を使って初期化された場合、\n"
+"スレッド属性オブジェクトのスケジューリングポリシーが B<SCHED_OTHER> に、\n"
+"スケジューリング優先度が 0 に設定される。一方、その後 inherit\n"
+"scheduling 属性に B<PTHREAD_EXPLICIT_SCHED> が設定されると、このスレッ\n"
+"ド属性オブジェクトを使って作成されたスレッドでは、スレッドを作成するス\n"
+"レッドのスケジューリング属性が間違って継承されてしまう。\n"
+"B<pthread_create>(3) を呼び出す前にスケジューリングポリシー属性か\n"
+"スケジューリング優先度属性のどちらかが明示的に設定された場合には、\n"
+"このバグは発生しない。"
+
+#. type: Plain text
+#: build/C/man3/pthread_attr_setinheritsched.3:120
+#: build/C/man3/pthread_attr_setschedparam.3:96
+#: build/C/man3/pthread_attr_setschedpolicy.3:92
+msgid "See B<pthread_setschedparam>(3)."
+msgstr "B<pthread_setschedparam>(3) を参照。"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_setinheritsched.3:128
+#: build/C/man3/pthread_attr_setinheritsched.3:129
 msgid ""
 "B<sched_setscheduler>(2), B<pthread_attr_init>(3), "
 "B<pthread_attr_setschedparam>(3), B<pthread_attr_setschedpolicy>(3), "
 "B<pthread_create>(3), B<pthread_setschedparam>(3), B<pthread_setschedprio>"
 "(3), B<pthreads>(7)"
 msgstr ""
+"B<sched_setscheduler>(2), B<pthread_attr_init>(3), "
+"B<pthread_attr_setschedparam>(3), B<pthread_attr_setschedpolicy>(3), "
+"B<pthread_create>(3), B<pthread_setschedparam>(3), B<pthread_setschedprio>"
+"(3), B<pthreads>(7)"
 
 #. type: TH
 #: build/C/man3/pthread_attr_setschedparam.3:24
 #, no-wrap
 msgid "PTHREAD_ATTR_SETSCHEDPARAM"
-msgstr ""
+msgstr "PTHREAD_ATTR_SETSCHEDPARAM"
 
 #. type: Plain text
 #: build/C/man3/pthread_attr_setschedparam.3:28
@@ -2198,6 +2551,8 @@ msgid ""
 "pthread_attr_setschedparam, pthread_attr_getschedparam - set/get scheduling "
 "parameter attributes in thread attributes object"
 msgstr ""
+"pthread_attr_setschedparam, pthread_attr_getschedparam - \n"
+"スレッド属性オブジェクトのスケジューリングパラメータ属性の設定/取得を行う"
 
 #. type: Plain text
 #: build/C/man3/pthread_attr_setschedparam.3:36
@@ -2208,9 +2563,13 @@ msgid ""
 "B<int pthread_attr_getschedparam(pthread_attr_t *>I<attr>B<,>\n"
 "B<                               struct sched_param *>I<param>B<);>\n"
 msgstr ""
+"B<int pthread_attr_setschedparam(pthread_attr_t *>I<attr>B<,>\n"
+"B<                               const struct sched_param *>I<param>B<);>\n"
+"B<int pthread_attr_getschedparam(pthread_attr_t *>I<attr>B<,>\n"
+"B<                               struct sched_param *>I<param>B<);>\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_setschedparam.3:49
+#: build/C/man3/pthread_attr_setschedparam.3:50
 msgid ""
 "The B<pthread_attr_setschedparam>()  function sets the scheduling parameter "
 "attributes of the thread attributes object referred to by I<attr> to the "
@@ -2218,71 +2577,97 @@ msgid ""
 "determine the scheduling parameters of a thread created using the thread "
 "attributes object I<attr>."
 msgstr ""
+"B<pthread_attr_setschedparam>() 関数は、\n"
+"I<attr> が参照するスレッド属性オブジェクトのスケジューリング\n"
+"パラメータ属性を I<param> が指すバッファで指定された値に設定する。\n"
+"これらの属性により、スレッド属性オブジェクト I<attr> を使って\n"
+"作成されるスレッドのスケジューリングパラメータが決定される。"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_setschedparam.3:56
+#: build/C/man3/pthread_attr_setschedparam.3:57
 msgid ""
 "The B<pthread_attr_getschedparam>()  returns the scheduling parameter "
 "attributes of the thread attributes object I<attr> in the buffer pointed to "
 "by I<param>."
 msgstr ""
+"B<pthread_attr_getschedparam>() は、\n"
+"スレッド属性オブジェクト I<attr> のスケジューリングパラメータ属性を\n"
+"I<param> が指すバッファに入れて返す。"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_setschedparam.3:58
+#: build/C/man3/pthread_attr_setschedparam.3:59
 msgid "Scheduling parameters are maintained in the following structure:"
-msgstr ""
+msgstr "スケジューリングパラメータは以下の構造体で管理される。"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_setschedparam.3:64
-#: build/C/man3/pthread_setschedparam.3:66
+#: build/C/man3/pthread_attr_setschedparam.3:65
+#: build/C/man3/pthread_setschedparam.3:67
 #, no-wrap
 msgid ""
 "struct sched_param {\n"
 "    int sched_priority;     /* Scheduling priority */\n"
 "};\n"
 msgstr ""
+"struct sched_param {\n"
+"    int sched_priority;     /* Scheduling priority */\n"
+"};\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_setschedparam.3:71
-#: build/C/man3/pthread_setschedparam.3:73
+#: build/C/man3/pthread_attr_setschedparam.3:72
+#: build/C/man3/pthread_setschedparam.3:74
 msgid ""
 "As can be seen, only one scheduling parameter is supported.  For details of "
 "the permitted ranges for scheduling priorities in each scheduling policy, "
 "see B<sched_setscheduler>(2)."
 msgstr ""
+"見て分かる通り、サポートされているスケジューリングパラメータは一つだけ\n"
+"である。各スケジューリングポリシーで許可されるスケジューリング優先度の\n"
+"詳細については、B<sched_setscheduler>(2) を参照のこと。"
 
 #.  .SH VERSIONS
 #.  Available since glibc 2.0.
 #. type: Plain text
-#: build/C/man3/pthread_attr_setschedparam.3:86
+#: build/C/man3/pthread_attr_setschedparam.3:87
 msgid ""
 "POSIX.1 documents B<EINVAL> and B<ENOTSUP> errors for "
 "B<pthread_attr_setschedparam>().  On Linux these functions always succeed "
 "(but portable and future-proof applications should nevertheless handle a "
 "possible error return)."
 msgstr ""
+"POSIX.1 では、\n"
+"B<pthread_attr_setschedparam>() について\n"
+"B<EINVAL> と B<ENOTSUP> が規定されている。\n"
+"Linux では、これらの関数は常に成功する\n"
+"(ただし、移植性や将来も動作することを保証したいアプリケーションでは\n"
+"正のエラーの返り値を処理するようにすべきである)。"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_setschedparam.3:95
+#: build/C/man3/pthread_attr_setschedparam.3:93
 msgid ""
 "See B<pthread_attr_setschedpolicy>(3)  for a list of the thread scheduling "
 "policies supported on Linux."
 msgstr ""
+"Linux でサポートされているスレッドのスケジューリングポリシーのリストに\n"
+"ついては、 B<pthread_attr_setschedpolicy>(3) を参照。"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_setschedparam.3:105
+#: build/C/man3/pthread_attr_setschedparam.3:106
 msgid ""
 "B<sched_get_priority_min>(2), B<sched_setscheduler>(2), B<pthread_attr_init>"
 "(3), B<pthread_attr_setinheritsched>(3), B<pthread_attr_setschedpolicy>(3), "
 "B<pthread_create>(3), B<pthread_setschedparam>(3), B<pthread_setschedprio>"
 "(3), B<pthreads>(7)"
 msgstr ""
+"B<sched_get_priority_min>(2), B<sched_setscheduler>(2), B<pthread_attr_init>"
+"(3), B<pthread_attr_setinheritsched>(3), B<pthread_attr_setschedpolicy>(3), "
+"B<pthread_create>(3), B<pthread_setschedparam>(3), B<pthread_setschedprio>"
+"(3), B<pthreads>(7)"
 
 #. type: TH
 #: build/C/man3/pthread_attr_setschedpolicy.3:24
 #, no-wrap
 msgid "PTHREAD_ATTR_SETSCHEDPOLICY"
-msgstr ""
+msgstr "PTHREAD_ATTR_SETSCHEDPOLICY"
 
 #. type: Plain text
 #: build/C/man3/pthread_attr_setschedpolicy.3:28
@@ -2290,6 +2675,8 @@ msgid ""
 "pthread_attr_setschedpolicy, pthread_attr_getschedpolicy - set/get "
 "scheduling policy attribute in thread attributes object"
 msgstr ""
+"pthread_attr_setschedpolicy, pthread_attr_getschedpolicy - スレッド属性\n"
+"オブジェクトのスケジューリングポリシー属性の設定/取得を行う"
 
 #. type: Plain text
 #: build/C/man3/pthread_attr_setschedpolicy.3:36
@@ -2298,68 +2685,88 @@ msgid ""
 "B<int pthread_attr_setschedpolicy(pthread_attr_t *>I<attr>B<, int >I<policy>B<);>\n"
 "B<int pthread_attr_getschedpolicy(pthread_attr_t *>I<attr>B<, int >I<*policy>B<);>\n"
 msgstr ""
+"B<int pthread_attr_setschedpolicy(pthread_attr_t *>I<attr>B<, int >I<policy>B<);>\n"
+"B<int pthread_attr_getschedpolicy(pthread_attr_t *>I<attr>B<, int >I<*policy>B<);>\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_setschedpolicy.3:49
+#: build/C/man3/pthread_attr_setschedpolicy.3:50
 msgid ""
 "The B<pthread_attr_setschedpolicy>()  function sets the scheduling policy "
 "attribute of the thread attributes object referred to by I<attr> to the "
 "value specified in I<policy>.  This attribute determines the scheduling "
 "policy of a thread created using the thread attributes object I<attr>."
 msgstr ""
+"B<pthread_attr_setschedpolicy>() 関数は、\n"
+"I<attr> が参照するスレッド属性オブジェクトのスケジューリング\n"
+"ポリシー属性を I<policy> で指定された値に設定する。\n"
+"この属性により、スレッド属性オブジェクト I<attr> を使って\n"
+"作成されるスレッドのスケジューリングポリシーが決定される。"
 
 #.  FIXME . pthread_setschedparam() places no restriction on the policy,
 #.  but pthread_attr_setschedpolicy() restricts policy to RR/FIFO/OTHER
 #.  http://sourceware.org/bugzilla/show_bug.cgi?id=7013
 #. type: Plain text
-#: build/C/man3/pthread_attr_setschedpolicy.3:62
+#: build/C/man3/pthread_attr_setschedpolicy.3:63
 msgid ""
 "The supported values for I<policy> are B<SCHED_FIFO>, B<SCHED_RR>, and "
 "B<SCHED_OTHER>, with the semantics described in B<sched_setscheduler>(2)."
 msgstr ""
+"I<policy> に指定できる値は B<SCHED_FIFO>, B<SCHED_RR>, B<SCHED_OTHER>\n"
+"である。それぞれの意味は B<sched_setscheduler>(2) で説明している通り\n"
+"である。"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_setschedpolicy.3:69
+#: build/C/man3/pthread_attr_setschedpolicy.3:70
 msgid ""
 "The B<pthread_attr_getschedpolicy>()  returns the scheduling policy "
 "attribute of the thread attributes object I<attr> in the buffer pointed to "
 "by I<policy>."
 msgstr ""
+"B<pthread_attr_getschedpolicy>() は、\n"
+"スレッド属性オブジェクト I<attr> のスケジューリングポリシー属性を\n"
+"I<policy> が指すバッファに入れて返す。"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_setschedpolicy.3:75
+#: build/C/man3/pthread_attr_setschedpolicy.3:76
 msgid "B<pthread_attr_setschedpolicy>()  can fail with the following error:"
-msgstr ""
+msgstr "B<pthread_attr_setschedpolicy>() は以下のエラーで失敗する場合がある。"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_setschedpolicy.3:79
+#: build/C/man3/pthread_attr_setschedpolicy.3:80
 msgid "Invalid value in I<policy>."
-msgstr ""
+msgstr "I<policy> に無効な値が指定された。"
 
 #.  .SH VERSIONS
 #.  Available since glibc 2.0.
 #. type: Plain text
-#: build/C/man3/pthread_attr_setschedpolicy.3:86
+#: build/C/man3/pthread_attr_setschedpolicy.3:87
 msgid ""
 "POSIX.1-2001 also documents an optional B<ENOTSUP> error (\"attempt was made "
 "to set the attribute to an unsupported value\") for "
 "B<pthread_attr_setschedpolicy>()."
 msgstr ""
+"POSIX.1-2001 では、 B<pthread_attr_setschedpolicy>() に関して\n"
+"エラー B<ENOTSUP> (\"サポートされていない値を属性に設定しようとした\")\n"
+"も追加で規定されている。"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_setschedpolicy.3:100
+#: build/C/man3/pthread_attr_setschedpolicy.3:101
 msgid ""
 "B<sched_setscheduler>(2), B<pthread_attr_init>(3), "
 "B<pthread_attr_setinheritsched>(3), B<pthread_attr_setschedparam>(3), "
 "B<pthread_create>(3), B<pthread_setschedparam>(3), B<pthread_setschedprio>"
 "(3), B<pthreads>(7)"
 msgstr ""
+"B<sched_setscheduler>(2), B<pthread_attr_init>(3), "
+"B<pthread_attr_setinheritsched>(3), B<pthread_attr_setschedparam>(3), "
+"B<pthread_create>(3), B<pthread_setschedparam>(3), B<pthread_setschedprio>"
+"(3), B<pthreads>(7)"
 
 #. type: TH
 #: build/C/man3/pthread_attr_setscope.3:24
 #, no-wrap
 msgid "PTHREAD_ATTR_SETSCOPE"
-msgstr ""
+msgstr "PTHREAD_ATTR_SETSCOPE"
 
 #. type: Plain text
 #: build/C/man3/pthread_attr_setscope.3:28
@@ -2367,6 +2774,8 @@ msgid ""
 "pthread_attr_setscope, pthread_attr_getscope - set/get contention scope "
 "attribute in thread attributes object"
 msgstr ""
+"pthread_attr_setscope, pthread_attr_getscope - \n"
+"スレッド属性オブジェクトの contention scope 属性の設定/取得を行う"
 
 #. type: Plain text
 #: build/C/man3/pthread_attr_setscope.3:36
@@ -2375,9 +2784,11 @@ msgid ""
 "B<int pthread_attr_setscope(pthread_attr_t *>I<attr>B<, int >I<scope>B<);>\n"
 "B<int pthread_attr_getscope(pthread_attr_t *>I<attr>B<, int *>I<scope>B<);>\n"
 msgstr ""
+"B<int pthread_attr_setscope(pthread_attr_t *>I<attr>B<, int >I<scope>B<);>\n"
+"B<int pthread_attr_getscope(pthread_attr_t *>I<attr>B<, int *>I<scope>B<);>\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_setscope.3:50
+#: build/C/man3/pthread_attr_setscope.3:51
 msgid ""
 "The B<pthread_attr_setscope>()  function sets the contention scope attribute "
 "of the thread attributes object referred to by I<attr> to the value "
@@ -2385,30 +2796,41 @@ msgid ""
 "threads against which a thread competes for resources such as the CPU.  "
 "POSIX.1-2001 specifies two possible values for I<scope>:"
 msgstr ""
+"B<pthread_attr_setscope>() 関数は、\n"
+"I<attr> が参照するスレッド属性オブジェクトの contention scope\n"
+"属性を I<scope> で指定された値に設定する。\n"
+"contention scope 属性により、\n"
+"スレッドが CPU などのリソースを取り合うスレッド集合が規定される。\n"
+"POSIX.1-2001 では I<scope> に指定する値として 2 つの値が規定されている。"
 
 #. type: TP
-#: build/C/man3/pthread_attr_setscope.3:50
+#: build/C/man3/pthread_attr_setscope.3:51
 #, no-wrap
 msgid "B<PTHREAD_SCOPE_SYSTEM>"
-msgstr ""
+msgstr "B<PTHREAD_SCOPE_SYSTEM>"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_setscope.3:58
+#: build/C/man3/pthread_attr_setscope.3:59
 msgid ""
 "The thread competes for resources with all other threads in all processes on "
 "the system that are in the same scheduling allocation domain (a group of one "
 "or more processors).  B<PTHREAD_SCOPE_SYSTEM> threads are scheduled relative "
 "to one another according to their scheduling policy and priority."
 msgstr ""
+"スレッドは、同じスケジューリング割り当てドメイン (一つ以上のプロセッサ\n"
+"のグループ) にある、システム上の全てのプロセスの自分以外の全ての\n"
+"スレッドとリソースを取り合う。 \n"
+"B<PTHREAD_SCOPE_SYSTEM> のスレッドは、スケジューリングポリシーと\n"
+"優先度に基づき、互いに相対的にスケジューリングされる。"
 
 #. type: TP
-#: build/C/man3/pthread_attr_setscope.3:58
+#: build/C/man3/pthread_attr_setscope.3:59
 #, no-wrap
 msgid "B<PTHREAD_SCOPE_PROCESS>"
-msgstr ""
+msgstr "B<PTHREAD_SCOPE_PROCESS>"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_setscope.3:73
+#: build/C/man3/pthread_attr_setscope.3:74
 msgid ""
 "The thread competes for resources with all other threads in the same process "
 "that were also created with the B<PTHREAD_SCOPE_PROCESS> contention scope.  "
@@ -2418,75 +2840,103 @@ msgid ""
 "process on the system or with other threads in the same process that were "
 "created with the B<PTHREAD_SCOPE_SYSTEM> contention scope."
 msgstr ""
+"スレッドは、contention scope が B<PTHREAD_SCOPE_PROCESS> で作成された\n"
+"同じプロセスの自分以外の全てのスレッドとリソースを取り合う。\n"
+"B<PTHREAD_SCOPE_PROCESS> のスレッドは、スケジューリングポリシーと優先度\n"
+"に基づき、同じプロセスの他のスレッドと相対的にスケジューリングされる。\n"
+"POSIX.1-2001 では、これらのスレッドがシステム上の他のプロセスのスレッド\n"
+"や同じプロセス内の contention scope が B<PTHREAD_SCOPE_SYSTEM> で作成\n"
+"された他のスレッドとどのようにリソースを取り合うかは、\n"
+"規定されないままになっている。"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_setscope.3:80
+#: build/C/man3/pthread_attr_setscope.3:81
 msgid ""
 "POSIX.1-2001 only requires that an implementation support one of these "
 "contention scopes, but permits both to be supported.  Linux supports "
 "B<PTHREAD_SCOPE_SYSTEM>, but not B<PTHREAD_SCOPE_PROCESS>."
 msgstr ""
+"POSIX.1-2001 で求められているのは、スレッド実装がこれらの contention\n"
+"scope のうち 1 つをサポートすることだけであるが、\n"
+"両方をサポートすることも認めている。\n"
+"Linux は B<PTHREAD_SCOPE_SYSTEM> をサポートしているが、\n"
+"B<PTHREAD_SCOPE_PROCESS> はサポートしていない。"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_setscope.3:88
+#: build/C/man3/pthread_attr_setscope.3:89
 msgid ""
 "The B<pthread_attr_getscope>()  function returns the contention scope "
 "attribute of the thread attributes object referred to by I<attr> in the "
 "buffer pointed to by I<scope>."
 msgstr ""
+"B<pthread_attr_getscope>() は、\n"
+"スレッド属性オブジェクト I<attr> の contention scope 属性を\n"
+"I<scope> が指すバッファに入れて返す。"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_setscope.3:94
+#: build/C/man3/pthread_attr_setscope.3:95
 msgid "B<pthread_attr_setscope>()  can fail with the following errors:"
-msgstr ""
+msgstr "B<pthread_attr_setscope>() は以下のエラーで失敗する場合がある。"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_setscope.3:98
+#: build/C/man3/pthread_attr_setscope.3:99
 msgid "An invalid value was specified in I<scope>."
-msgstr ""
+msgstr "I<scope> に無効な値が指定された。"
 
 #. type: TP
-#: build/C/man3/pthread_attr_setscope.3:98
+#: build/C/man3/pthread_attr_setscope.3:99
 #, no-wrap
 msgid "B<ENOTSUP>"
-msgstr ""
+msgstr "B<ENOTSUP>"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_setscope.3:104
+#: build/C/man3/pthread_attr_setscope.3:105
 msgid ""
 "I<scope> specified the value B<PTHREAD_SCOPE_PROCESS>, which is not "
 "supported on Linux."
 msgstr ""
+"I<scope> に値 B<PTHREAD_SCOPE_PROCESS> が指定された。\n"
+"この値は Linux でサポートされていない。"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_setscope.3:114
+#: build/C/man3/pthread_attr_setscope.3:115
 msgid ""
 "The B<PTHREAD_SCOPE_SYSTEM> contention scope typically indicates that a "
 "userspace thread is bound directly to a single kernel-scheduling entity.  "
 "This is the case on Linux for the obsolete LinuxThreads implementation and "
 "the modern NPTL implementation, which are both 1:1 threading implementations."
 msgstr ""
+"B<PTHREAD_SCOPE_SYSTEM> contention scope では、通常は、一つの\n"
+"ユーザ空間スレッドは一つのカーネルスケジューリング・エンティティに\n"
+"直接結び付けられる。\n"
+"Linux では、廃止予定の LinuxThreads 実装も新しい NPTL 実装もこれに\n"
+"該当し、両方とも 1:1 で結び付けられるスレッド実装となっている。"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_setscope.3:117
+#: build/C/man3/pthread_attr_setscope.3:118
 msgid ""
 "POSIX.1-2001 specifies that the default contention scope is implementation-"
 "defined."
 msgstr ""
+"POSIX.1-2001 では、 contention scope 属性のデフォルト値は\n"
+"実装時で定義されるものと規定されている。"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_setscope.3:125
+#: build/C/man3/pthread_attr_setscope.3:126
 msgid ""
 "B<pthread_attr_init>(3), B<pthread_attr_setaffinity_np>(3), "
 "B<pthread_attr_setinheritsched>(3), B<pthread_attr_setschedparam>(3), "
 "B<pthread_attr_setschedpolicy>(3), B<pthread_create>(3), B<pthreads>(7)"
 msgstr ""
+"B<pthread_attr_init>(3), B<pthread_attr_setaffinity_np>(3), "
+"B<pthread_attr_setinheritsched>(3), B<pthread_attr_setschedparam>(3), "
+"B<pthread_attr_setschedpolicy>(3), B<pthread_create>(3), B<pthreads>(7)"
 
 #. type: TH
 #: build/C/man3/pthread_attr_setstack.3:24
 #, no-wrap
 msgid "PTHREAD_ATTR_SETSTACK"
-msgstr ""
+msgstr "PTHREAD_ATTR_SETSTACK"
 
 #. type: Plain text
 #: build/C/man3/pthread_attr_setstack.3:28
@@ -2494,6 +2944,8 @@ msgid ""
 "pthread_attr_setstack, pthread_attr_getstack - set/get stack attributes in "
 "thread attributes object"
 msgstr ""
+"pthread_attr_setstack, pthread_attr_getstack - \n"
+"スレッド属性オブジェクトのスタック属性の設定/取得を行う"
 
 #. type: Plain text
 #: build/C/man3/pthread_attr_setstack.3:36
@@ -2504,22 +2956,26 @@ msgid ""
 "B<int pthread_attr_getstack(pthread_attr_t *>I<attr>B<,>\n"
 "B<                          void **>I<stackaddr>B<, size_t *>I<stacksize>B<);>\n"
 msgstr ""
+"B<int pthread_attr_setstack(pthread_attr_t *>I<attr>B<,>\n"
+"B<                          void *>I<stackaddr>B<, size_t >I<stacksize>B<);>\n"
+"B<int pthread_attr_getstack(pthread_attr_t *>I<attr>B<,>\n"
+"B<                          void **>I<stackaddr>B<, size_t *>I<stacksize>B<);>\n"
 
 #. type: Plain text
 #: build/C/man3/pthread_attr_setstack.3:43 build/C/man3/pthread_sigqueue.3:39
 msgid ""
 "Feature Test Macro Requirements for glibc (see B<feature_test_macros>(7)):"
-msgstr ""
+msgstr "glibc 向けの機能検査マクロの要件 (B<feature_test_macros>(7)  参照):"
 
 #. type: Plain text
 #: build/C/man3/pthread_attr_setstack.3:48
 msgid "B<pthread_attr_getstack>(), B<pthread_attr_setstack>():"
-msgstr ""
+msgstr "B<pthread_attr_getstack>(), B<pthread_attr_setstack>():"
 
 #. type: Plain text
 #: build/C/man3/pthread_attr_setstack.3:50
 msgid "_POSIX_C_SOURCE\\ E<gt>=\\ 200112L || _XOPEN_SOURCE\\ E<gt>=\\ 600"
-msgstr ""
+msgstr "_POSIX_C_SOURCE\\ E<gt>=\\ 200112L || _XOPEN_SOURCE\\ E<gt>=\\ 600"
 
 #. type: Plain text
 #: build/C/man3/pthread_attr_setstack.3:66
@@ -2530,6 +2986,12 @@ msgid ""
 "attributes specify the location and size of the stack that should be used by "
 "a thread that is created using the thread attributes object I<attr>."
 msgstr ""
+"B<pthread_attr_setstack>() 関数は、\n"
+"I<attr> が参照するスレッド属性オブジェクトのスタックアドレス属性と\n"
+"スタックサイズ属性をそれぞれ I<stackaddr> と I<stacksize> で\n"
+"指定された値に設定する。\n"
+"これらの属性により、スレッド属性オブジェクト I<attr> を使って\n"
+"作成されるスレッドが使用すべきスタックの位置とサイズが指定される。"
 
 #. type: Plain text
 #: build/C/man3/pthread_attr_setstack.3:72
@@ -2538,6 +3000,10 @@ msgid ""
 "I<stacksize> bytes that was allocated by the caller.  The pages of the "
 "allocated buffer should be both readable and writable."
 msgstr ""
+"I<stackaddr> は、呼び出し側で割り当てた、大きさが I<stacksize> バイトの\n"
+"バッファ内の指定できる最小のアドレスバイトを指すべきである。\n"
+"割り当てられたバッファのページは読み書き両方が可能なページとなっている\n"
+"べきである。"
 
 #. type: Plain text
 #: build/C/man3/pthread_attr_setstack.3:83
@@ -2546,11 +3012,15 @@ msgid ""
 "size attributes of the thread attributes object referred to by I<attr> in "
 "the buffers pointed to by I<stackaddr> and I<stacksize>, respectively."
 msgstr ""
+"B<pthread_attr_getstack>() 関数は、\n"
+"スレッド属性オブジェクト I<attr> のスタックアドレス属性と\n"
+"スタックサイズ属性をそれぞれ I<stackaddr> と I<stacksize> が\n"
+"指すバッファに入れて返す。"
 
 #. type: Plain text
 #: build/C/man3/pthread_attr_setstack.3:89
 msgid "B<pthread_attr_setstack>()  can fail with the following error:"
-msgstr ""
+msgstr "B<pthread_attr_setstack>() は以下のエラーで失敗する場合がある。"
 
 #. type: Plain text
 #: build/C/man3/pthread_attr_setstack.3:100
@@ -2559,6 +3029,10 @@ msgid ""
 "systems, this error may also occur if I<stackaddr> or I<stackaddr\\ +\\ "
 "stacksize> is not suitably aligned."
 msgstr ""
+"I<stacksize> が B<PTHREAD_STACK_MIN> (16384) よりも小さい。\n"
+"システムによっては、 I<stackaddr> か\n"
+"I<stackaddr\\ +\\ stacksize> のアライメントが適切でない場合にも\n"
+"このエラーが発生する。"
 
 #. type: Plain text
 #: build/C/man3/pthread_attr_setstack.3:108
@@ -2567,11 +3041,14 @@ msgid ""
 "by I<stackaddr> and I<stacksize> is not both readable and writable by the "
 "caller."
 msgstr ""
+"POSIX.1-2001 では エラー B<EACCES> も規定されており、\n"
+"このエラーは I<stackaddr> と I<stacksize> で規定されるスタック領域に\n"
+"呼び出し側から読み書き両方のアクセスができない状況を表す。"
 
 #. type: Plain text
 #: build/C/man3/pthread_attr_setstack.3:110
 msgid "These functions are provided by glibc since version 2.2."
-msgstr ""
+msgstr "これらの関数は glibc バージョン 2.2 以降で提供されている。"
 
 #. type: Plain text
 #: build/C/man3/pthread_attr_setstack.3:120
@@ -2582,6 +3059,12 @@ msgid ""
 "(Use B<pthread_attr_setstacksize>(3)  if an application simply requires a "
 "stack size other than the default.)"
 msgstr ""
+"これらの関数は、スレッドのスタックが特定の場所に配置されることを保証\n"
+"しなければならないアプリケーションのために提供されている。\n"
+"ほとんどのアプリケーションでは、このようなことは必要なく、\n"
+"これらの関数を使うのは避けるべきである。\n"
+"(アプリケーションが単にスタックサイズだけをデフォルトの値から変更する\n"
+"必要がある場合には B<pthread_attr_setstacksize>(3) を使うこと)"
 
 #. type: Plain text
 #: build/C/man3/pthread_attr_setstack.3:131
@@ -2593,6 +3076,13 @@ msgid ""
 "pages protected against reading and writing)  to handle the possibility of "
 "stack overflow."
 msgstr ""
+"アプリケーションが B<pthread_attr_setstack>() を利用する際には、\n"
+"スタックの割り当てに責任を持つ必要がある。\n"
+"B<pthread_attr_setguardsize>(3) を使って設定された\n"
+"guard size の値は無視される。\n"
+"必要と思われる場合は、アプリケーションが責任を持ってガード領域 (読み書\n"
+"きが行われないように保護された 1 個かそれ以上のページ) の割り当てを行い、\n"
+"スタックオーバーフローの可能性に対処するようにする必要がある。"
 
 #. type: Plain text
 #: build/C/man3/pthread_attr_setstack.3:142
@@ -2602,6 +3092,11 @@ msgid ""
 "B<posix_memalign>(3)  may be useful for allocation.  Probably, I<stacksize> "
 "should also be a multiple of the system page size."
 msgstr ""
+"I<stackaddr> に指定するアドレスは適切なアライメントとなっているべきである。\n"
+"完全な移植性を持たせるためには、\n"
+"ページ境界 (I<sysconf(_SC_PAGESIZE)>) に揃えること。\n"
+"割り当てには B<posix_memalign>(3) を使うとよい。\n"
+"たいていは、 I<stacksize> はシステムのページサイズの倍数とすべきである。"
 
 #. type: Plain text
 #: build/C/man3/pthread_attr_setstack.3:151
@@ -2611,6 +3106,11 @@ msgid ""
 "otherwise, the threads will attempt to use the same memory area for their "
 "stacks, and chaos will ensue."
 msgstr ""
+"一つの I<attr> を使って複数のスレッドを作成する場合、\n"
+"B<pthread_create>(3) の次の呼び出しを行う前に、\n"
+"呼び出し側でスタックアドレス属性を変更しなければならない。\n"
+"さもなければ、複数のスレッドがスタックとして同じメモリ領域を\n"
+"使おうとするため、訳の分からない状況が発生してしまう。"
 
 #. type: Plain text
 #: build/C/man3/pthread_attr_setstack.3:164
@@ -2619,12 +3119,15 @@ msgid ""
 "B<pthread_attr_setguardsize>(3), B<pthread_attr_setstackaddr>(3), "
 "B<pthread_attr_setstacksize>(3), B<pthread_create>(3), B<pthreads>(7)"
 msgstr ""
+"B<mmap>(2), B<mprotect>(2), B<posix_memalign>(3), B<pthread_attr_init>(3), "
+"B<pthread_attr_setguardsize>(3), B<pthread_attr_setstackaddr>(3), "
+"B<pthread_attr_setstacksize>(3), B<pthread_create>(3), B<pthreads>(7)"
 
 #. type: TH
 #: build/C/man3/pthread_attr_setstackaddr.3:24
 #, no-wrap
 msgid "PTHREAD_ATTR_SETSTACKADDR"
-msgstr ""
+msgstr "PTHREAD_ATTR_SETSTACKADDR"
 
 #. type: Plain text
 #: build/C/man3/pthread_attr_setstackaddr.3:28
@@ -2632,6 +3135,8 @@ msgid ""
 "pthread_attr_setstackaddr, pthread_attr_getstackaddr - set/get stack address "
 "attribute in thread attributes object"
 msgstr ""
+"pthread_attr_setstackaddr, pthread_attr_getstackaddr - \n"
+"スレッド属性オブジェクトのスタックアドレス属性の設定/取得を行う"
 
 #. type: Plain text
 #: build/C/man3/pthread_attr_setstackaddr.3:36
@@ -2640,16 +3145,21 @@ msgid ""
 "B<int pthread_attr_setstackaddr(pthread_attr_t *>I<attr>B<, void *>I<stackaddr>B<);>\n"
 "B<int pthread_attr_getstackaddr(pthread_attr_t *>I<attr>B<, void **>I<stackaddr>B<);>\n"
 msgstr ""
+"B<int pthread_attr_setstackaddr(pthread_attr_t *>I<attr>B<, void *>I<stackaddr>B<);>\n"
+"B<int pthread_attr_getstackaddr(pthread_attr_t *>I<attr>B<, void **>I<stackaddr>B<);>\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_setstackaddr.3:46
+#: build/C/man3/pthread_attr_setstackaddr.3:47
 msgid ""
 "These functions are obsolete: B<do not use them.> Use "
 "B<pthread_attr_setstack>(3)  and B<pthread_attr_getstack>(3)  instead."
 msgstr ""
+"これらの関数は廃止予定であり、B<使用しないこと>。\n"
+"代わりに Use B<pthread_attr_setstack>(3) と B<pthread_attr_getstack>(3) を使"
+"うこと。"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_setstackaddr.3:57
+#: build/C/man3/pthread_attr_setstackaddr.3:58
 msgid ""
 "The B<pthread_attr_setstackaddr>()  function sets the stack address "
 "attribute of the thread attributes object referred to by I<attr> to the "
@@ -2657,39 +3167,55 @@ msgid ""
 "the stack that should be used by a thread that is created using the thread "
 "attributes object I<attr>."
 msgstr ""
+"B<pthread_attr_setstackaddr>() 関数は、\n"
+"I<attr> が参照するスレッド属性オブジェクトのスタックアドレス\n"
+"属性を I<stackaddr> で指定された値に設定する。\n"
+"この属性により、スレッド属性オブジェクト I<attr> を使って\n"
+"作成されるスレッドが使用すべきスタックの位置が指定される。"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_setstackaddr.3:63
+#: build/C/man3/pthread_attr_setstackaddr.3:64
 msgid ""
 "I<stackaddr> should point to a buffer of at least B<PTHREAD_STACK_MIN> bytes "
 "that was allocated by the caller.  The pages of the allocated buffer should "
 "be both readable and writable."
 msgstr ""
+"I<stackaddr> は呼び出し側が割り当てたバッファ (大きさは\n"
+"少なくとも B<PTHREAD_STACK_MIN> バイト)を指すべきである。\n"
+"割り当てられたバッファのページは読み書き両方が可能なページと\n"
+"なっているべきである。"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_setstackaddr.3:71
+#: build/C/man3/pthread_attr_setstackaddr.3:72
 msgid ""
 "The B<pthread_attr_getstackaddr>()  function returns the stack address "
 "attribute of the thread attributes object referred to by I<attr> in the "
 "buffer pointed to by I<stackaddr>."
 msgstr ""
+"B<pthread_attr_getstackaddr>() は、\n"
+"スレッド属性オブジェクト I<attr> のスタックアドレス属性を\n"
+"I<stackaddr> が指すバッファに入れて返す。"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_setstackaddr.3:78
+#: build/C/man3/pthread_attr_setstackaddr.3:79
 msgid ""
 "No errors are defined (but applications should nevertheless handle a "
 "possible error return)."
 msgstr ""
+"エラーは定義されていない (ただし、アプリケーションは正のエラーの\n"
+"返り値を処理するようにすべきである)。"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_setstackaddr.3:83
+#: build/C/man3/pthread_attr_setstackaddr.3:84
 msgid ""
 "POSIX.1-2001 specifies these functions but marks them as obsolete.  "
 "POSIX.1-2008 removes the specification of these functions."
 msgstr ""
+"POSIX.1-2001 では、これらの関数が規定されているが、廃止予定となっている。\n"
+"POSIX.1-2008 では、これらの関数の規定は削除されている。"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_setstackaddr.3:107
+#: build/C/man3/pthread_attr_setstackaddr.3:108
 msgid ""
 "I<Do not use these functions!> They cannot be portably used, since they "
 "provide no way of specifying the direction of growth or the range of the "
@@ -2702,25 +3228,32 @@ msgid ""
 "in the allocated stack area (and the I<stacksize> argument specifies the "
 "range of the stack)."
 msgstr ""
+"I<これらの関数を使用しないこと!> これらの関数は移植性がある形では使用で\n"
+"きない。なぜなら、これらの関数ではスタック領域がどちらの方向に伸びるの\n"
+"かを指定する手段が提供されていないからである。\n"
+"例えば、スタックが下向き (アドレスが小さい方向) に伸びるアーキテクチャ\n"
+"では、I<stackaddr> には割り当てられたスタック領域のI<最も大きな>アドレ\n"
+"スの次のアドレスを指定する。一方、スタックが上向き (アドレスが大きい\n"
+"方向) に伸びるアーキテクチャでは、I<stackaddr> には割り当てられた\n"
+"スタック領域のI<最も小さい>アドレスを指定する。これに対して、\n"
+"B<pthread_attr_setstack>(3) と B<pthread_attr_getstack>(3) が使用する\n"
+"I<stackaddr> は、常に割り当てられたスタック領域の最も小さいアドレス\n"
+"へのポインタである (I<stacksize> 引き数はスタックの範囲を指定する)。"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_setstackaddr.3:113
+#: build/C/man3/pthread_attr_setstackaddr.3:114
 msgid ""
 "B<pthread_attr_init>(3), B<pthread_attr_setstack>(3), "
 "B<pthread_attr_setstacksize>(3), B<pthread_create>(3), B<pthreads>(7)"
 msgstr ""
+"B<pthread_attr_init>(3), B<pthread_attr_setstack>(3), "
+"B<pthread_attr_setstacksize>(3), B<pthread_create>(3), B<pthreads>(7)"
 
 #. type: TH
 #: build/C/man3/pthread_attr_setstacksize.3:24
 #, no-wrap
 msgid "PTHREAD_ATTR_SETSTACKSIZE"
-msgstr ""
-
-#. type: TH
-#: build/C/man3/pthread_attr_setstacksize.3:24
-#, no-wrap
-msgid "2008-11-05"
-msgstr ""
+msgstr "PTHREAD_ATTR_SETSTACKSIZE"
 
 #. type: Plain text
 #: build/C/man3/pthread_attr_setstacksize.3:28
@@ -2728,6 +3261,8 @@ msgid ""
 "pthread_attr_setstacksize, pthread_attr_getstacksize - set/get stack size "
 "attribute in thread attributes object"
 msgstr ""
+"pthread_attr_setstacksize, pthread_attr_getstacksize - \n"
+"スレッド属性オブジェクトのスタックサイズ属性の設定/取得を行う"
 
 #. type: Plain text
 #: build/C/man3/pthread_attr_setstacksize.3:36
@@ -2736,126 +3271,159 @@ msgid ""
 "B<int pthread_attr_setstacksize(pthread_attr_t *>I<attr>B<, size_t >I<stacksize>B<);>\n"
 "B<int pthread_attr_getstacksize(pthread_attr_t *>I<attr>B<, size_t *>I<stacksize>B<);>\n"
 msgstr ""
+"B<int pthread_attr_setstacksize(pthread_attr_t *>I<attr>B<, size_t >I<stacksize>B<);>\n"
+"B<int pthread_attr_getstacksize(pthread_attr_t *>I<attr>B<, size_t *>I<stacksize>B<);>\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_setstacksize.3:46
+#: build/C/man3/pthread_attr_setstacksize.3:47
 msgid ""
 "The B<pthread_attr_setstacksize>()  function sets the stack size attribute "
 "of the thread attributes object referred to by I<attr> to the value "
 "specified in I<stacksize>."
 msgstr ""
+"B<pthread_attr_setstacksize>() 関数は、\n"
+"I<attr> が参照するスレッド属性オブジェクトのスタックアドレス\n"
+"属性を I<stacksize> で指定された値に設定する。"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_setstacksize.3:50
+#: build/C/man3/pthread_attr_setstacksize.3:51
 msgid ""
 "The stack size attribute determines the minimum size (in bytes) that will be "
 "allocated for threads created using the thread attributes object I<attr>."
 msgstr ""
+"スタックサイズ属性により、\n"
+"スレッド属性オブジェクト I<attr> を使って作成されたスレッド\n"
+"に割り当てられる最小サイズ (バイト単位) が決定される。"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_setstacksize.3:58
+#: build/C/man3/pthread_attr_setstacksize.3:59
 msgid ""
 "The B<pthread_attr_getstacksize>()  function returns the stack size "
 "attribute of the thread attributes object referred to by I<attr> in the "
 "buffer pointed to by I<stacksize>."
 msgstr ""
+"B<pthread_attr_getstacksize>() は、\n"
+"スレッド属性オブジェクト I<attr> のスタックアドレス属性を\n"
+"I<stacksize> が指すバッファに入れて返す。"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_setstacksize.3:64
+#: build/C/man3/pthread_attr_setstacksize.3:65
 msgid "B<pthread_attr_setstacksize>()  can fail with the following error:"
-msgstr ""
+msgstr "B<pthread_attr_setstacksize>() は以下のエラーで失敗する場合がある。"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_setstacksize.3:69
+#: build/C/man3/pthread_attr_setstacksize.3:70
 msgid "The stack size is less than B<PTHREAD_STACK_MIN> (16384) bytes."
-msgstr ""
+msgstr "スタックサイズが B<PTHREAD_STACK_MIN> (16384) バイト未満である。"
 
 #.  e.g., MacOS
 #. type: Plain text
-#: build/C/man3/pthread_attr_setstacksize.3:78
+#: build/C/man3/pthread_attr_setstacksize.3:79
 msgid ""
 "On some systems, B<pthread_attr_setstacksize>()  can fail with the error "
 "B<EINVAL> if I<stacksize> is not a multiple of the system page size."
 msgstr ""
+"いくつかのシステムでは、 B<pthread_attr_setstacksize>() は\n"
+"I<stacksize> がシステムのページサイズの倍数でない場合にも\n"
+"エラー B<EINVAL> で失敗する。"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_setstacksize.3:85 build/C/man3/pthread_join.3:125
-msgid "See B<pthread_create>(3)."
-msgstr ""
-
-#. type: Plain text
-#: build/C/man3/pthread_attr_setstacksize.3:88
+#: build/C/man3/pthread_attr_setstacksize.3:86
 msgid ""
 "For details on the default stack size of new threads, see B<pthread_create>"
 "(3)."
 msgstr ""
+"新しいスレッドのデフォルトのスタックサイズの詳細については\n"
+"B<pthread_create>(3) を参照。"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_setstacksize.3:91
+#: build/C/man3/pthread_attr_setstacksize.3:89
 msgid ""
 "A thread's stack size is fixed at the time of thread creation.  Only the "
 "main thread can dynamically grow its stack."
 msgstr ""
+"スレッドのスタックサイズは、スレッド作成時点では固定である。\n"
+"メインスレッドだけがスタックを動的に伸ばすことができる。"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_setstacksize.3:96
+#: build/C/man3/pthread_attr_setstacksize.3:94
 msgid ""
 "The B<pthread_attr_setstack>(3)  function allows an application to set both "
 "the size and location of a caller-allocated stack that is to be used by a "
 "thread."
 msgstr ""
+"B<pthread_attr_setstack>(3) 関数を使うと、\n"
+"アプリケーションは、スレッドが使用するスタックとして、\n"
+"呼び出し側で割り当てたスタックのサイズと場所を指定できる。"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_setstacksize.3:108
+#: build/C/man3/pthread_attr_setstacksize.3:106
 msgid ""
 "As at glibc 2.8, if the specified I<stacksize> is not a multiple of "
 "B<STACK_ALIGN> (16 bytes on most architectures), it may be rounded "
 "I<downward>, in violation of POSIX.1-2001, which says that the allocated "
 "stack will be at least I<stacksize> bytes."
 msgstr ""
+"glibc 2.8 の時点では、指定された I<stacksize> が B<STACK_ALIGN> \n"
+"(ほとんどのアーキテクチャでは 16 バイト) の倍数でない場合、\n"
+"I<stacksize> はI<小さくなる方向に>に丸められる。\n"
+"これは POSIX.1-2001 に違反している。\n"
+"POSIX.1-2001 では、割り当てらたスタックの大きさは\n"
+"少なくとも I<stacksize> バイトになると書かれている。"
+
+#. type: Plain text
+#: build/C/man3/pthread_attr_setstacksize.3:109
+#: build/C/man3/pthread_join.3:125
+msgid "See B<pthread_create>(3)."
+msgstr "B<pthread_create>(3) を参照。"
 
 #. type: Plain text
-#: build/C/man3/pthread_attr_setstacksize.3:115
+#: build/C/man3/pthread_attr_setstacksize.3:116
 msgid ""
 "B<getrlimit>(2), B<pthread_attr_init>(3), B<pthread_attr_setguardsize>(3), "
 "B<pthread_attr_setstack>(3), B<pthread_create>(3), B<pthreads>(7)"
 msgstr ""
+"B<getrlimit>(2), B<pthread_attr_init>(3), B<pthread_attr_setguardsize>(3), "
+"B<pthread_attr_setstack>(3), B<pthread_create>(3), B<pthreads>(7)"
 
 #. type: TH
 #: build/C/man3/pthread_cancel.3:24
 #, no-wrap
 msgid "PTHREAD_CANCEL"
-msgstr ""
+msgstr "PTHREAD_CANCEL"
 
 #. type: TH
 #: build/C/man3/pthread_cancel.3:24 build/C/man3/pthread_setschedparam.3:24
-#: build/C/man3/pthread_testcancel.3:24
 #, no-wrap
 msgid "2008-11-17"
-msgstr ""
+msgstr "2008-11-17"
 
 #. type: Plain text
 #: build/C/man3/pthread_cancel.3:27
 msgid "pthread_cancel - send a cancellation request to a thread"
-msgstr ""
+msgstr "pthread_cancel - スレッドにキャンセル要求を送る"
 
 #. type: Plain text
 #: build/C/man3/pthread_cancel.3:32
 #, no-wrap
 msgid "B<int pthread_cancel(pthread_t >I<thread>B<);>\n"
-msgstr ""
+msgstr "B<int pthread_cancel(pthread_t >I<thread>B<);>\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_cancel.3:43
+#: build/C/man3/pthread_cancel.3:44
 msgid ""
 "The B<pthread_cancel>()  function sends a cancellation request to the thread "
 "I<thread>.  Whether and when the target thread reacts to the cancellation "
 "request depends on two attributes that are under the control of that thread: "
 "its cancelability I<state> and I<type>."
 msgstr ""
+"B<pthread_cancel>() 関数は指定されたスレッド I<thread> にキャンセル要求\n"
+"を送信する。対象のスレッドがキャンセル要求に反応するかどうか、いつ反応\n"
+"するかは対象のスレッドの制御下にある 2 つの属性、cancelability\n"
+"I<state> と I<type>により決まる。"
 
 #. type: Plain text
-#: build/C/man3/pthread_cancel.3:55
+#: build/C/man3/pthread_cancel.3:56
 msgid ""
 "A thread's cancelability state, determined by B<pthread_setcancelstate>(3), "
 "can be I<enabled> (the default for new threads) or I<disabled>.  If a thread "
@@ -2863,9 +3431,15 @@ msgid ""
 "the thread enables cancellation.  If a thread has enabled cancellation, then "
 "its cancelability type determines when cancellation occurs."
 msgstr ""
+"あるスレッドの cancelability state は B<pthread_setcancelstate>(3) で\n"
+"設定され、I<enabled> と I<disabled> のいずれとなる (I<enabled> が新しい\n"
+"スレッドのデフォルト値である)。スレッドがキャンセルを無効にしていた場合、\n"
+"キャンセル要求はそのスレッドがキャンセルを有効にするまでキューに入れら\n"
+"れたままになる。スレッドがキャンセルを有効にしていた場合、\n"
+"cancelability type によって、いつキャンセルが発生するかが決まる。"
 
 #. type: Plain text
-#: build/C/man3/pthread_cancel.3:71
+#: build/C/man3/pthread_cancel.3:72
 msgid ""
 "A thread's cancellation type, determined by B<pthread_setcanceltype>(3), may "
 "be either I<asynchronous> or I<deferred> (the default for new threads).  "
@@ -2875,114 +3449,152 @@ msgid ""
 "calls a function that is a I<cancellation point>.  A list of functions that "
 "are or may be cancellation points is provided in I<pthreads>(7)."
 msgstr ""
+"スレッドのキャンセル種別 (cancelability type) は\n"
+"B<pthread_setcanceltype>(3) で設定され、I<asynchronous> か I<deferred>\n"
+"のいずれかとなる(I<deferred> が新しいスレッドのデフォルト値である)。\n"
+"非同期キャンセル (asynchronous cancelability) は、そのスレッドはいつで\n"
+"もキャンセルされることを意味する (通常はすぐにキャンセルされるが、\n"
+"システムがそのことを保証しているわけではない)。遅延キャンセル\n"
+"(deferred cancelability) では、そのスレッドが I<取り消しポイント\n"
+"(cancellation point)> となっている関数を次に呼び出すまでキャンセルが\n"
+"遅延される。取り消しポイントに設定されていたり設定\n"
+"したりできる関数のリストは I<pthreads>(7) に記載している。"
 
 #. type: Plain text
-#: build/C/man3/pthread_cancel.3:75
+#: build/C/man3/pthread_cancel.3:76
 msgid ""
 "When a cancellation requested is acted on, the following steps occur for "
 "I<thread> (in this order):"
 msgstr ""
+"キャンセル要求が実行されると、\n"
+"I<thread> では以下のステップが (この順序で) 行われる。"
 
 #. type: IP
-#: build/C/man3/pthread_cancel.3:75 build/C/man3/pthread_cleanup_push.3:66
+#: build/C/man3/pthread_cancel.3:76 build/C/man3/pthread_cleanup_push.3:67
 #, no-wrap
 msgid "1."
-msgstr ""
+msgstr "1."
 
 #. type: Plain text
-#: build/C/man3/pthread_cancel.3:80
+#: build/C/man3/pthread_cancel.3:81
 msgid ""
 "Cancellation clean-up handlers are popped (in the reverse of the order in "
 "which they were pushed) and called.  (See B<pthread_cleanup_push>(3).)"
 msgstr ""
+"キャンセルクリーンアップハンドラが (push されたのと逆順で)\n"
+"取り出され (pop され)、呼び出される。\n"
+"(B<pthread_cleanup_push>(3) 参照)"
 
 #. type: IP
-#: build/C/man3/pthread_cancel.3:80 build/C/man3/pthread_cleanup_push.3:70
+#: build/C/man3/pthread_cancel.3:81 build/C/man3/pthread_cleanup_push.3:71
 #, no-wrap
 msgid "2."
-msgstr ""
+msgstr "2."
 
 #. type: Plain text
-#: build/C/man3/pthread_cancel.3:85
+#: build/C/man3/pthread_cancel.3:86
 msgid ""
 "Thread-specific data destructors are called, in an unspecified order.  (See "
 "B<pthread_key_create>(3).)"
 msgstr ""
+"スレッド固有データのデストラクタ (destructor) が呼び出される。\n"
+"呼び出し順序は規定されていない。\n"
+"(B<pthread_key_create>(3) 参照)"
 
 #. type: IP
-#: build/C/man3/pthread_cancel.3:85 build/C/man3/pthread_cleanup_push.3:78
+#: build/C/man3/pthread_cancel.3:86 build/C/man3/pthread_cleanup_push.3:79
 #, no-wrap
 msgid "3."
-msgstr ""
+msgstr "3."
 
 #. type: Plain text
-#: build/C/man3/pthread_cancel.3:89
+#: build/C/man3/pthread_cancel.3:90
 msgid "The thread is terminated.  (See B<pthread_exit>(3).)"
-msgstr ""
+msgstr "スレッドが終了される。 (B<pthread_exit>(3) 参照)"
 
 #. type: Plain text
-#: build/C/man3/pthread_cancel.3:97
+#: build/C/man3/pthread_cancel.3:98
 msgid ""
 "The above steps happen asynchronously with respect to the B<pthread_cancel>"
 "()  call; the return status of B<pthread_cancel>()  merely informs the "
 "caller whether the cancellation request was successfully queued."
 msgstr ""
+"上記のステップは B<pthread_cancel>() の呼び出しとは非同期に行われる。\n"
+"B<pthread_cancel>() の返却ステータスは単にキャンセル要求が正常に\n"
+"キューに入れられたかどうかを呼び出し元に示すだけのものである。"
 
 #. type: Plain text
-#: build/C/man3/pthread_cancel.3:106
+#: build/C/man3/pthread_cancel.3:107
 msgid ""
 "After a canceled thread has terminated, a join with that thread using "
 "B<pthread_join>(3)  obtains B<PTHREAD_CANCELED> as the thread's exit "
 "status.  (Joining with a thread is the only way to know that cancellation "
 "has completed.)"
 msgstr ""
+"キャンセルされたスレッドが終了された後に、\n"
+"B<pthread_join>(3) でそのスレッドを join すると、\n"
+"そのスレッドの終了ステータスとして B<PTHREAD_CANCELED> が得られる。\n"
+"(スレッドの join はキャンセルが完了したかを知る唯一の方法である)"
 
 #. type: Plain text
-#: build/C/man3/pthread_cancel.3:111
+#: build/C/man3/pthread_cancel.3:112
 msgid ""
 "On success, B<pthread_cancel>()  returns 0; on error, it returns a nonzero "
 "error number."
 msgstr ""
+"成功すると、 B<pthread_cancel>() は 0 を返す。\n"
+"エラーの場合、0 以外のエラー番号を返す。"
 
 #. type: TP
-#: build/C/man3/pthread_cancel.3:112 build/C/man3/pthread_detach.3:57
-#: build/C/man3/pthread_getcpuclockid.3:55 build/C/man3/pthread_join.3:91
-#: build/C/man3/pthread_kill.3:59 build/C/man3/pthread_setaffinity_np.3:111
-#: build/C/man3/pthread_setschedparam.3:111
-#: build/C/man3/pthread_setschedprio.3:67 build/C/man3/pthread_sigqueue.3:83
+#: build/C/man3/pthread_cancel.3:113 build/C/man3/pthread_detach.3:57
+#: build/C/man3/pthread_getcpuclockid.3:56 build/C/man3/pthread_join.3:91
+#: build/C/man3/pthread_kill.3:59 build/C/man3/pthread_setaffinity_np.3:112
+#: build/C/man3/pthread_setschedparam.3:112
+#: build/C/man3/pthread_setschedprio.3:68 build/C/man3/pthread_sigqueue.3:83
 #, no-wrap
 msgid "B<ESRCH>"
-msgstr ""
+msgstr "B<ESRCH>"
 
 #. type: Plain text
-#: build/C/man3/pthread_cancel.3:119 build/C/man3/pthread_detach.3:62
-#: build/C/man3/pthread_getcpuclockid.3:60 build/C/man3/pthread_join.3:96
-#: build/C/man3/pthread_kill.3:64 build/C/man3/pthread_setaffinity_np.3:116
-#: build/C/man3/pthread_setschedparam.3:116
-#: build/C/man3/pthread_setschedprio.3:72
+#: build/C/man3/pthread_cancel.3:120 build/C/man3/pthread_detach.3:62
+#: build/C/man3/pthread_getcpuclockid.3:61 build/C/man3/pthread_join.3:96
+#: build/C/man3/pthread_kill.3:64 build/C/man3/pthread_setaffinity_np.3:117
+#: build/C/man3/pthread_setschedparam.3:117
+#: build/C/man3/pthread_setschedprio.3:73
 msgid "No thread with the ID I<thread> could be found."
-msgstr ""
+msgstr "ID が I<thread> のスレッドが見つからなかった。"
 
 #. type: Plain text
-#: build/C/man3/pthread_cancel.3:129
+#: build/C/man3/pthread_cancel.3:130
 msgid ""
 "On Linux, cancellation is implemented using signals.  Under the NPTL "
 "threading implementation, the first real-time signal (i.e., signal 32) is "
 "used for this purpose.  On LinuxThreads, the second real-time signal is "
 "used, if real-time signals are available, otherwise B<SIGUSR2> is used."
 msgstr ""
+"Linux では、キャンセルはシグナルを使って実装されている。NPTL スレッド実装で"
+"は、\n"
+"最初のリアルタイムシグナル (つまり、シグナル 32)がこのために使用される。\n"
+"LinuxThreads では、リアルタイムシグナルが利用可能な場合は2 番目のリアルタイ"
+"ム\n"
+"シグナルが使用され、そうでない場合は B<SIGUSR2> が使用される。"
 
 #. type: Plain text
-#: build/C/man3/pthread_cancel.3:135
+#: build/C/man3/pthread_cancel.3:136
 msgid ""
 "The program below creates a thread and then cancels it.  The main thread "
 "joins with the canceled thread to check that its exit status was "
 "B<PTHREAD_CANCELED>.  The following shell session shows what happens when we "
 "run the program:"
 msgstr ""
+"以下のプログラムは、スレッドを一つ作成してから、そのスレッドをキャンセルす"
+"る。\n"
+"メインスレッドはキャンセルされたスレッドをジョインし、\n"
+"キャンセルされたスレッドの終了ステータスが B<PTHREAD_CANCELED> かどうかを\n"
+"確認する。以下のシェルセッションはこのプログラムを実行した際の実行例である。"
 
 #. type: Plain text
-#: build/C/man3/pthread_cancel.3:143
+#: build/C/man3/pthread_cancel.3:144
 #, no-wrap
 msgid ""
 "$ ./a.out\n"
@@ -2991,9 +3603,14 @@ msgid ""
 "thread_func(): about to enable cancellation\n"
 "main(): thread was canceled\n"
 msgstr ""
+"$ ./a.out\n"
+"thread_func(): started; cancellation disabled\n"
+"main(): sending cancellation request\n"
+"thread_func(): about to enable cancellation\n"
+"main(): thread was canceled\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_cancel.3:153
+#: build/C/man3/pthread_cancel.3:154
 #, no-wrap
 msgid ""
 "#include E<lt>pthread.hE<gt>\n"
@@ -3002,9 +3619,14 @@ msgid ""
 "#include E<lt>stdlib.hE<gt>\n"
 "#include E<lt>unistd.hE<gt>\n"
 msgstr ""
+"#include E<lt>pthread.hE<gt>\n"
+"#include E<lt>stdio.hE<gt>\n"
+"#include E<lt>errno.hE<gt>\n"
+"#include E<lt>stdlib.hE<gt>\n"
+"#include E<lt>unistd.hE<gt>\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_cancel.3:161
+#: build/C/man3/pthread_cancel.3:162
 #, no-wrap
 msgid ""
 "static void *\n"
@@ -3012,71 +3634,89 @@ msgid ""
 "{\n"
 "    int s;\n"
 msgstr ""
+"static void *\n"
+"thread_func(void *ignored_argument)\n"
+"{\n"
+"    int s;\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_cancel.3:164
+#: build/C/man3/pthread_cancel.3:165
 #, no-wrap
 msgid ""
 "    /* Disable cancellation for a while, so that we don\\(aqt\n"
 "       immediately react to a cancellation request */\n"
 msgstr ""
+"    /* Disable cancellation for a while, so that we don\\(aqt\n"
+"       immediately react to a cancellation request */\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_cancel.3:168
+#: build/C/man3/pthread_cancel.3:169
 #, no-wrap
 msgid ""
 "    s = pthread_setcancelstate(PTHREAD_CANCEL_DISABLE, NULL);\n"
 "    if (s != 0)\n"
 "        handle_error_en(s, \"pthread_setcancelstate\");\n"
 msgstr ""
+"    s = pthread_setcancelstate(PTHREAD_CANCEL_DISABLE, NULL);\n"
+"    if (s != 0)\n"
+"        handle_error_en(s, \"pthread_setcancelstate\");\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_cancel.3:172
+#: build/C/man3/pthread_cancel.3:173
 #, no-wrap
 msgid ""
 "    printf(\"thread_func(): started; cancellation disabled\\en\");\n"
 "    sleep(5);\n"
 "    printf(\"thread_func(): about to enable cancellation\\en\");\n"
 msgstr ""
+"    printf(\"thread_func(): started; cancellation disabled\\en\");\n"
+"    sleep(5);\n"
+"    printf(\"thread_func(): about to enable cancellation\\en\");\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_cancel.3:176
+#: build/C/man3/pthread_cancel.3:177
 #, no-wrap
 msgid ""
 "    s = pthread_setcancelstate(PTHREAD_CANCEL_ENABLE, NULL);\n"
 "    if (s != 0)\n"
 "        handle_error_en(s, \"pthread_setcancelstate\");\n"
 msgstr ""
+"    s = pthread_setcancelstate(PTHREAD_CANCEL_ENABLE, NULL);\n"
+"    if (s != 0)\n"
+"        handle_error_en(s, \"pthread_setcancelstate\");\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_cancel.3:178
+#: build/C/man3/pthread_cancel.3:179
 #, no-wrap
 msgid "    /* sleep() is a cancellation point */\n"
-msgstr ""
+msgstr "    /* sleep() is a cancellation point */\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_cancel.3:180
+#: build/C/man3/pthread_cancel.3:181
 #, no-wrap
 msgid "    sleep(1000);        /* Should get canceled while we sleep */\n"
-msgstr ""
+msgstr "    sleep(1000);        /* Should get canceled while we sleep */\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_cancel.3:182
+#: build/C/man3/pthread_cancel.3:183
 #, no-wrap
 msgid "    /* Should never get here */\n"
-msgstr ""
+msgstr "    /* Should never get here */\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_cancel.3:186
+#: build/C/man3/pthread_cancel.3:187
 #, no-wrap
 msgid ""
 "    printf(\"thread_func(): not canceled!\\en\");\n"
 "    return NULL;\n"
 "}\n"
 msgstr ""
+"    printf(\"thread_func(): not canceled!\\en\");\n"
+"    return NULL;\n"
+"}\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_cancel.3:193
+#: build/C/man3/pthread_cancel.3:194
 #, no-wrap
 msgid ""
 "int\n"
@@ -3086,30 +3726,39 @@ msgid ""
 "    void *res;\n"
 "    int s;\n"
 msgstr ""
+"int\n"
+"main(void)\n"
+"{\n"
+"    pthread_t thr;\n"
+"    void *res;\n"
+"    int s;\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_cancel.3:195
+#: build/C/man3/pthread_cancel.3:196
 #, no-wrap
 msgid "    /* Start a thread and then send it a cancellation request */\n"
-msgstr ""
+msgstr "    /* Start a thread and then send it a cancellation request */\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_cancel.3:199
+#: build/C/man3/pthread_cancel.3:200
 #, no-wrap
 msgid ""
 "    s = pthread_create(&thr, NULL, &thread_func, NULL);\n"
 "    if (s != 0)\n"
 "        handle_error_en(s, \"pthread_create\");\n"
 msgstr ""
+"    s = pthread_create(&thr, NULL, &thread_func, NULL);\n"
+"    if (s != 0)\n"
+"        handle_error_en(s, \"pthread_create\");\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_cancel.3:201
+#: build/C/man3/pthread_cancel.3:202
 #, no-wrap
 msgid "    sleep(2);           /* Give thread a chance to get started */\n"
-msgstr ""
+msgstr "    sleep(2);           /* Give thread a chance to get started */\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_cancel.3:206
+#: build/C/man3/pthread_cancel.3:207
 #, no-wrap
 msgid ""
 "    printf(\"main(): sending cancellation request\\en\");\n"
@@ -3117,24 +3766,31 @@ msgid ""
 "    if (s != 0)\n"
 "        handle_error_en(s, \"pthread_cancel\");\n"
 msgstr ""
+"    printf(\"main(): sending cancellation request\\en\");\n"
+"    s = pthread_cancel(thr);\n"
+"    if (s != 0)\n"
+"        handle_error_en(s, \"pthread_cancel\");\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_cancel.3:208
+#: build/C/man3/pthread_cancel.3:209
 #, no-wrap
 msgid "    /* Join with thread to see what its exit status was */\n"
-msgstr ""
+msgstr "    /* Join with thread to see what its exit status was */\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_cancel.3:212 build/C/man3/pthread_cleanup_push.3:300
+#: build/C/man3/pthread_cancel.3:213 build/C/man3/pthread_cleanup_push.3:301
 #, no-wrap
 msgid ""
 "    s = pthread_join(thr, &res);\n"
 "    if (s != 0)\n"
 "        handle_error_en(s, \"pthread_join\");\n"
 msgstr ""
+"    s = pthread_join(thr, &res);\n"
+"    if (s != 0)\n"
+"        handle_error_en(s, \"pthread_join\");\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_cancel.3:219
+#: build/C/man3/pthread_cancel.3:220
 #, no-wrap
 msgid ""
 "    if (res == PTHREAD_CANCELED)\n"
@@ -3144,27 +3800,36 @@ msgid ""
 "    exit(EXIT_SUCCESS);\n"
 "}\n"
 msgstr ""
+"    if (res == PTHREAD_CANCELED)\n"
+"        printf(\"main(): thread was canceled\\en\");\n"
+"    else\n"
+"        printf(\"main(): thread wasn\\(aqt canceled (shouldn\\(aqt happen!)\\en\");\n"
+"    exit(EXIT_SUCCESS);\n"
+"}\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_cancel.3:230
+#: build/C/man3/pthread_cancel.3:231
 msgid ""
 "B<pthread_cleanup_push>(3), B<pthread_create>(3), B<pthread_exit>(3), "
 "B<pthread_join>(3), B<pthread_key_create>(3), B<pthread_setcancelstate>(3), "
 "B<pthread_setcanceltype>(3), B<pthread_testcancel>(3), B<pthreads>(7)"
 msgstr ""
+"B<pthread_cleanup_push>(3), B<pthread_create>(3), B<pthread_exit>(3), "
+"B<pthread_join>(3), B<pthread_key_create>(3), B<pthread_setcancelstate>(3), "
+"B<pthread_setcanceltype>(3), B<pthread_testcancel>(3), B<pthreads>(7)"
 
 #. type: TH
 #: build/C/man3/pthread_cleanup_push.3:24
 #, no-wrap
 msgid "PTHREAD_CLEANUP_PUSH"
-msgstr ""
+msgstr "PTHREAD_CLEANUP_PUSH"
 
 #. type: TH
 #: build/C/man3/pthread_cleanup_push.3:24
 #: build/C/man3/pthread_setcancelstate.3:24
 #, no-wrap
 msgid "2008-11-24"
-msgstr ""
+msgstr "2008-11-24"
 
 #. type: Plain text
 #: build/C/man3/pthread_cleanup_push.3:28
@@ -3172,6 +3837,8 @@ msgid ""
 "pthread_cleanup_push, pthread_cleanup_pop - push and pop thread cancellation "
 "clean-up handlers"
 msgstr ""
+"pthread_cleanup_push, pthread_cleanup_pop - スレッドの\n"
+"キャンセルクリーンアップハンドラの push/pop を行う"
 
 #. type: Plain text
 #: build/C/man3/pthread_cleanup_push.3:35
@@ -3181,9 +3848,12 @@ msgid ""
 "B<                          void *>I<arg>B<);>\n"
 "B<void pthread_cleanup_pop(int >I<execute>B<);>\n"
 msgstr ""
+"B<void pthread_cleanup_push(void (*>I<routine>B<)(void *),>\n"
+"B<                          void *>I<arg>B<);>\n"
+"B<void pthread_cleanup_pop(int >I<execute>B<);>\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_cleanup_push.3:45
+#: build/C/man3/pthread_cleanup_push.3:46
 msgid ""
 "These functions manipulate the calling thread's stack of thread-cancellation "
 "clean-up handlers.  A clean-up handler is a function that is automatically "
@@ -3191,56 +3861,79 @@ msgid ""
 "described below); it might, for example, unlock a mutex so that it becomes "
 "available to other threads in the process."
 msgstr ""
+"これらの関数は、呼び出したスレッドのスレッドキャンセル時のクリーンアッ\n"
+"プハンドラのスタックの操作を行う。クリーンアップハンドラは、スレッドが\n"
+"キャンセルされた場合 (や以下で説明する他の種々の状況において) 自動的に\n"
+"実行される関数である。例えば、mutex のロック解除を行い、プロセス内の\n"
+"他のスレッドが利用できるようにする関数などが考えられる。"
 
 #. type: Plain text
-#: build/C/man3/pthread_cleanup_push.3:56
+#: build/C/man3/pthread_cleanup_push.3:57
 msgid ""
 "The B<pthread_cleanup_push>()  function pushes I<routine> onto the top of "
 "the stack of clean-up handlers.  When I<routine> is later invoked, it will "
 "be given I<arg> as its argument."
 msgstr ""
+"B<pthread_cleanup_push>() 関数は、 I<routine> をクリーンアップ\n"
+"ハンドラのスタックの一番上にプッシュする。 I<routine> が後で\n"
+"起動される際には、 I<arg> が関数の引き数と渡される。"
 
 #. type: Plain text
-#: build/C/man3/pthread_cleanup_push.3:63
+#: build/C/man3/pthread_cleanup_push.3:64
 msgid ""
 "The B<pthread_cleanup_pop>()  function removes the routine at the top of the "
 "stack of clean-up handlers, and optionally executes it if I<execute> is "
 "nonzero."
 msgstr ""
+"B<pthread_cleanup_pop>() 関数は、クリーンアップハンドラの\n"
+"スタックの一番上のルーチンを削除する。\n"
+"I<execute> が 0 以外の場合にはそのルーチンを追加で実行する。"
 
 #. type: Plain text
-#: build/C/man3/pthread_cleanup_push.3:66
+#: build/C/man3/pthread_cleanup_push.3:67
 msgid ""
 "A cancellation clean-up handler is popped from the stack and executed in the "
 "following circumstances:"
 msgstr ""
+"キャンセルクリーンアップハンドラは、以下に示す場合に\n"
+"スタックから取り出され実行される。"
 
 #. type: Plain text
-#: build/C/man3/pthread_cleanup_push.3:70
+#: build/C/man3/pthread_cleanup_push.3:71
 msgid ""
 "When a thread is canceled, all of the stacked clean-up handlers are popped "
 "and executed in the reverse of the order in which they were pushed onto the "
 "stack."
 msgstr ""
+"スレッドがキャンセルされた際に、スタックに登録された全てのクリーン\n"
+"アップハンドラが取り出されて、実行される。クリーンアップハンドラの\n"
+"実行は、スタックに登録されたのと逆の順序で行われる。"
 
 #. type: Plain text
-#: build/C/man3/pthread_cleanup_push.3:78
+#: build/C/man3/pthread_cleanup_push.3:79
 msgid ""
 "When a thread terminates by calling B<pthread_exit>(3), all clean-up "
 "handlers are executed as described in the preceding point.  (Clean-up "
 "handlers are I<not> called if the thread terminates by performing a "
 "I<return> from the thread start function.)"
 msgstr ""
+"スレッドが B<pthread_exit>(3) を呼び出して終了する際に、全てのクリーン\n"
+"アップハンドラが上の項目で述べたのと同様に実行される。\n"
+"(スレッドがスレッド開始関数からの I<return> の実行により終了する場合に\n"
+"は、クリーンアップハンドラはI<呼び出されない>。)"
 
 #. type: Plain text
-#: build/C/man3/pthread_cleanup_push.3:84
+#: build/C/man3/pthread_cleanup_push.3:85
 msgid ""
 "When a thread calls B<pthread_cleanup_pop>()  with a nonzero I<execute> "
 "argument, the top-most clean-up handler is popped and executed."
 msgstr ""
+"スレッドが 0 以外の I<execute> 引き数で B<pthread_cleanup_pop>() を\n"
+"呼び出した際に、スタックの一番上のクリーンアップハンドラが取り出されて\n"
+"実行される。"
 
 #. type: Plain text
-#: build/C/man3/pthread_cleanup_push.3:96
+#: build/C/man3/pthread_cleanup_push.3:97
 msgid ""
 "POSIX.1 permits B<pthread_cleanup_push>()  and B<pthread_cleanup_pop>()  to "
 "be implemented as macros that expand to text containing \\(aqB<{>\\(aq and "
@@ -3249,9 +3942,16 @@ msgid ""
 "same lexical nesting level.  (In other words, a clean-up handler is only "
 "established during the execution of a specified section of code.)"
 msgstr ""
+"POSIX.1 では、 B<pthread_cleanup_push>() と B<pthread_cleanup_pop>() を\n"
+"それぞれ \\(aqB<{>\\(aq と \\(aqB<}>\\(aq を含むテキストに展開するマクロと\n"
+"して実装することを許容している。\n"
+"このため、呼び出し側では、これらの関数の呼び出しが同じ関数の中で対と\n"
+"なり、かつ文法的に同じネストレベル (nesting level) になることを保証\n"
+"しなければならない。 (言い換えると、クリーンアップハンドラは、コード\n"
+"の特定のセクションの実行の中でのみ設定するものであると言える。)"
 
 #. type: Plain text
-#: build/C/man3/pthread_cleanup_push.3:116
+#: build/C/man3/pthread_cleanup_push.3:117
 msgid ""
 "Calling B<longjmp>(3)  (B<siglongjmp>(3))  produces undefined results if any "
 "call has been made to B<pthread_cleanup_push>()  or B<pthread_cleanup_pop>"
@@ -3261,21 +3961,29 @@ msgid ""
 "results unless the jump buffer was also filled by B<setjmp>(3)  (B<sigsetjmp>"
 "(3))  inside the handler."
 msgstr ""
+"B<longjmp>(3) (B<siglongjmp>(3)) の呼び出しは、\n"
+"B<pthread_cleanup_push>() や B<pthread_cleanup_pop>() の呼び出しが対と\n"
+"なる呼び出しがない状態で行われた場合には、どのような結果になるかは不定\n"
+"である。これは jump バッファは B<setjmp>(3) (B<sigsetjmp>(3)) により設\n"
+"定されるからである。同様に、クリーンアップハンドラ内からの\n"
+"B<longjmp>(3) (B<siglongjmp>(3)) の呼び出しも、jump バッファがハンドラ\n"
+"内で B<setjmp>(3) (B<sigsetjmp>(3)) で設定されていない限り、どのような\n"
+"結果になるかは不定である。"
 
 #. type: Plain text
-#: build/C/man3/pthread_cleanup_push.3:118
+#: build/C/man3/pthread_cleanup_push.3:119
 msgid "These functions do not return a value."
-msgstr ""
+msgstr "これらの関数は値を返さない。"
 
 #.  SH VERSIONS
 #.  Available since glibc 2.0
 #. type: Plain text
-#: build/C/man3/pthread_cleanup_push.3:122
+#: build/C/man3/pthread_cleanup_push.3:123
 msgid "There are no errors."
-msgstr ""
+msgstr "エラーはない。"
 
 #. type: Plain text
-#: build/C/man3/pthread_cleanup_push.3:133
+#: build/C/man3/pthread_cleanup_push.3:134
 msgid ""
 "On Linux, the B<pthread_cleanup_push>()  and B<pthread_cleanup_pop>()  "
 "functions I<are> implemented as macros that expand to text containing \\(aqB<"
@@ -3283,19 +3991,29 @@ msgid ""
 "declared within the scope of paired calls to these functions will only be "
 "visible within that scope."
 msgstr ""
+"Linux では、関数 B<pthread_cleanup_push>() と B<pthread_cleanup_pop>()\n"
+"は、それぞれ \\(aqB<{>\\(aq と \\(aqB<}>\\(aq を含むテキストに展開する\n"
+"マクロとして実装されている。このことは、これらの関数を対で呼び出した\n"
+"スコープ内で宣言された変数は、そのスコープの中でしか参照できない\n"
+"ということを意味している。"
 
 #.  The text was actually added in the 2004 TC2
 #. type: Plain text
-#: build/C/man3/pthread_cleanup_push.3:148
+#: build/C/man3/pthread_cleanup_push.3:149
 msgid ""
 "POSIX.1 says that the effect of using I<return>, I<break>, I<continue>, or "
 "I<goto> to prematurely leave a block bracketed B<pthread_cleanup_push>()  "
 "and B<pthread_cleanup_pop>()  is undefined.  Portable applications should "
 "avoid doing this."
 msgstr ""
+"POSIX.1 には、括弧を含む B<pthread_cleanup_push>() と\n"
+"B<pthread_cleanup_pop>() のブロックをそのままにしたままで、 \n"
+"I<return>, I<break>, I<continue>, I<goto> を使った場合の影響は\n"
+"不定であると書かれている。\n"
+"移植性が必要なアプリケーションではこれを行うのは避けるべきである。"
 
 #. type: Plain text
-#: build/C/man3/pthread_cleanup_push.3:163
+#: build/C/man3/pthread_cleanup_push.3:164
 msgid ""
 "The program below provides a simple example of the use of the functions "
 "described in this page.  The program creates a thread that executes a loop "
@@ -3305,16 +4023,26 @@ msgid ""
 "thread a cancellation request, or sets a global variable that causes the "
 "other thread to exit its loop and terminate normally (by doing a I<return>)."
 msgstr ""
+"以下のプログラムは、このページで説明した関数の簡単な使用例を示すもので\n"
+"ある。このプログラムは B<pthread_cleanup_push>() と\n"
+"B<pthread_cleanup_pop>() で囲まれたループを実行するスレッドを作成する。\n"
+"このループではグローバル変数 I<cnt> を 1 秒に 1 ずつ増やしていく。\n"
+"指定されたコマンドライン引き数の内容に基づいて、メインスレッドはもう一\n"
+"つのスレッドにキャンセル要求を送ったり、もう一つのスレッドがループを\n"
+"抜けて (I<return> を呼び出して) 正常終了するようにグローバル変数を\n"
+"設定したりする。"
 
 #. type: Plain text
-#: build/C/man3/pthread_cleanup_push.3:166
+#: build/C/man3/pthread_cleanup_push.3:167
 msgid ""
 "In the following shell session, the main thread sends a cancellation request "
 "to the other thread:"
 msgstr ""
+"以下のシェルセッションでは、メインスレッドはもう一つのスレッドに\n"
+"キャンセル要求を送信する。"
 
 #. type: Plain text
-#: build/C/man3/pthread_cleanup_push.3:176
+#: build/C/man3/pthread_cleanup_push.3:177
 #, no-wrap
 msgid ""
 "$ B<./a.out>\n"
@@ -3325,24 +4053,36 @@ msgid ""
 "Called clean-up handler\n"
 "Thread was canceled; cnt = 0\n"
 msgstr ""
+"$ B<./a.out>\n"
+"New thread started\n"
+"cnt = 0\n"
+"cnt = 1\n"
+"Canceling thread\n"
+"Called clean-up handler\n"
+"Thread was canceled; cnt = 0\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_cleanup_push.3:184
+#: build/C/man3/pthread_cleanup_push.3:185
 msgid ""
 "From the above, we see that the thread was canceled, and that the "
 "cancellation clean-up handler was called and it reset the value of the "
 "global variable I<cnt> to 0."
 msgstr ""
+"上記の実行例から、スレッドがキャンセルされ、\n"
+"キャンセルクリーンアップハンドラが呼び出され、\n"
+"グローバル変数 I<cnt> の値が 0 にリセットされていることが確認できる。"
 
 #. type: Plain text
-#: build/C/man3/pthread_cleanup_push.3:187
+#: build/C/man3/pthread_cleanup_push.3:188
 msgid ""
 "In the next run, the main program sets a global variable that causes other "
 "thread to terminate normally:"
 msgstr ""
+"次の実行例では、メインプログラムはグローバル変数を設定して、\n"
+"もう一つのスレッドが正常終了するようにしている。"
 
 #. type: Plain text
-#: build/C/man3/pthread_cleanup_push.3:195
+#: build/C/man3/pthread_cleanup_push.3:196
 #, no-wrap
 msgid ""
 "$ B<./a.out x>\n"
@@ -3351,24 +4091,35 @@ msgid ""
 "cnt = 1\n"
 "Thread terminated normally; cnt = 2\n"
 msgstr ""
+"$ B<./a.out x>\n"
+"New thread started\n"
+"cnt = 0\n"
+"cnt = 1\n"
+"Thread terminated normally; cnt = 2\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_cleanup_push.3:203
+#: build/C/man3/pthread_cleanup_push.3:204
 msgid ""
 "From the above, we see that the clean-up handler was not executed (because "
 "I<cleanup_pop_arg> was 0), and therefore the value of I<cnt> was not reset."
 msgstr ""
+"上記では、 (I<cleanup_pop_arg> が 0 なので) クリーンアップハンドラは\n"
+"実行されておらず、その結果 I<cnt> の値はリセットされていないことが\n"
+"分かる。"
 
 #. type: Plain text
-#: build/C/man3/pthread_cleanup_push.3:208
+#: build/C/man3/pthread_cleanup_push.3:209
 msgid ""
 "In the next run, the main program sets a global variable that causes the "
 "other thread to terminate normally, and supplies a nonzero value for "
 "I<cleanup_pop_arg>:"
 msgstr ""
+"次の実行例では、メインプログラムはグローバル変数を設定して、\n"
+"もう一つのスレッドが正常終了するようにし、さらに\n"
+"I<cleanup_pop_arg> に 0 以外の値を渡している。"
 
 #. type: Plain text
-#: build/C/man3/pthread_cleanup_push.3:217
+#: build/C/man3/pthread_cleanup_push.3:218
 #, no-wrap
 msgid ""
 "$ B<./a.out x 1>\n"
@@ -3378,17 +4129,26 @@ msgid ""
 "Called clean-up handler\n"
 "Thread terminated normally; cnt = 0\n"
 msgstr ""
+"$ B<./a.out x 1>\n"
+"New thread started\n"
+"cnt = 0\n"
+"cnt = 1\n"
+"Called clean-up handler\n"
+"Thread terminated normally; cnt = 0\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_cleanup_push.3:224
+#: build/C/man3/pthread_cleanup_push.3:225
 msgid ""
 "In the above, we see that although the thread was not canceled, the clean-up "
 "handler was executed, because the argument given to B<pthread_cleanup_pop>"
 "()  was nonzero."
 msgstr ""
+"上記では、スレッドはキャンセルされていないが、クリーンアップハンドラが\n"
+"実行されていないことが分かる。これは B<pthread_cleanup_pop>() の引き数\n"
+"に 0 以外を渡したからである。"
 
 #. type: Plain text
-#: build/C/man3/pthread_cleanup_push.3:233
+#: build/C/man3/pthread_cleanup_push.3:234
 #, no-wrap
 msgid ""
 "#include E<lt>pthread.hE<gt>\n"
@@ -3398,18 +4158,27 @@ msgid ""
 "#include E<lt>unistd.hE<gt>\n"
 "#include E<lt>errno.hE<gt>\n"
 msgstr ""
+"#include E<lt>pthread.hE<gt>\n"
+"#include E<lt>sys/types.hE<gt>\n"
+"#include E<lt>stdio.hE<gt>\n"
+"#include E<lt>stdlib.hE<gt>\n"
+"#include E<lt>unistd.hE<gt>\n"
+"#include E<lt>errno.hE<gt>\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_cleanup_push.3:240
+#: build/C/man3/pthread_cleanup_push.3:241
 #, no-wrap
 msgid ""
 "static int done = 0;\n"
 "static int cleanup_pop_arg = 0;\n"
 "static int cnt = 0;\n"
 msgstr ""
+"static int done = 0;\n"
+"static int cleanup_pop_arg = 0;\n"
+"static int cnt = 0;\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_cleanup_push.3:247
+#: build/C/man3/pthread_cleanup_push.3:248
 #, no-wrap
 msgid ""
 "static void\n"
@@ -3419,9 +4188,15 @@ msgid ""
 "    cnt = 0;\n"
 "}\n"
 msgstr ""
+"static void\n"
+"cleanup_handler(void *arg)\n"
+"{\n"
+"    printf(\"Called clean-up handler\\en\");\n"
+"    cnt = 0;\n"
+"}\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_cleanup_push.3:252
+#: build/C/man3/pthread_cleanup_push.3:253
 #, no-wrap
 msgid ""
 "static void *\n"
@@ -3429,27 +4204,31 @@ msgid ""
 "{\n"
 "    time_t start, curr;\n"
 msgstr ""
+"static void *\n"
+"thread_start(void *arg)\n"
+"{\n"
+"    time_t start, curr;\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_cleanup_push.3:254
+#: build/C/man3/pthread_cleanup_push.3:255
 #, no-wrap
 msgid "    printf(\"New thread started\\en\");\n"
-msgstr ""
+msgstr "    printf(\"New thread started\\en\");\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_cleanup_push.3:256
+#: build/C/man3/pthread_cleanup_push.3:257
 #, no-wrap
 msgid "    pthread_cleanup_push(cleanup_handler, NULL);\n"
-msgstr ""
+msgstr "    pthread_cleanup_push(cleanup_handler, NULL);\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_cleanup_push.3:258
+#: build/C/man3/pthread_cleanup_push.3:259
 #, no-wrap
 msgid "    curr = start = time(NULL);\n"
-msgstr ""
+msgstr "    curr = start = time(NULL);\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_cleanup_push.3:267
+#: build/C/man3/pthread_cleanup_push.3:268
 #, no-wrap
 msgid ""
 "    while (!done) {\n"
@@ -3461,18 +4240,29 @@ msgid ""
 "        }\n"
 "    }\n"
 msgstr ""
+"    while (!done) {\n"
+"        pthread_testcancel();           /* A cancellation point */\n"
+"        if (curr E<lt> time(NULL)) {\n"
+"            curr = time(NULL);\n"
+"            printf(\"cnt = %d\\en\", cnt);  /* A cancellation point */\n"
+"            cnt++;\n"
+"        }\n"
+"    }\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_cleanup_push.3:271
+#: build/C/man3/pthread_cleanup_push.3:272
 #, no-wrap
 msgid ""
 "    pthread_cleanup_pop(cleanup_pop_arg);\n"
 "    return NULL;\n"
 "}\n"
 msgstr ""
+"    pthread_cleanup_pop(cleanup_pop_arg);\n"
+"    return NULL;\n"
+"}\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_cleanup_push.3:278
+#: build/C/man3/pthread_cleanup_push.3:279
 #, no-wrap
 msgid ""
 "int\n"
@@ -3482,24 +4272,33 @@ msgid ""
 "    int s;\n"
 "    void *res;\n"
 msgstr ""
+"int\n"
+"main(int argc, char *argv[])\n"
+"{\n"
+"    pthread_t thr;\n"
+"    int s;\n"
+"    void *res;\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_cleanup_push.3:282
+#: build/C/man3/pthread_cleanup_push.3:283
 #, no-wrap
 msgid ""
 "    s = pthread_create(&thr, NULL, thread_start, NULL);\n"
 "    if (s != 0)\n"
 "        handle_error_en(s, \"pthread_create\");\n"
 msgstr ""
+"    s = pthread_create(&thr, NULL, thread_start, NULL);\n"
+"    if (s != 0)\n"
+"        handle_error_en(s, \"pthread_create\");\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_cleanup_push.3:284
+#: build/C/man3/pthread_cleanup_push.3:285
 #, no-wrap
 msgid "    sleep(2);           /* Allow new thread to run a while */\n"
-msgstr ""
+msgstr "    sleep(2);           /* Allow new thread to run a while */\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_cleanup_push.3:289
+#: build/C/man3/pthread_cleanup_push.3:290
 #, no-wrap
 msgid ""
 "    if (argc E<gt> 1) {\n"
@@ -3507,9 +4306,13 @@ msgid ""
 "            cleanup_pop_arg = atoi(argv[2]);\n"
 "        done = 1;\n"
 msgstr ""
+"    if (argc E<gt> 1) {\n"
+"        if (argc E<gt> 2)\n"
+"            cleanup_pop_arg = atoi(argv[2]);\n"
+"        done = 1;\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_cleanup_push.3:296
+#: build/C/man3/pthread_cleanup_push.3:297
 #, no-wrap
 msgid ""
 "    } else {\n"
@@ -3519,9 +4322,15 @@ msgid ""
 "            handle_error_en(s, \"pthread_cancel\");\n"
 "    }\n"
 msgstr ""
+"    } else {\n"
+"        printf(\"Canceling thread\\en\");\n"
+"        s = pthread_cancel(thr);\n"
+"        if (s != 0)\n"
+"            handle_error_en(s, \"pthread_cancel\");\n"
+"    }\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_cleanup_push.3:307
+#: build/C/man3/pthread_cleanup_push.3:308
 #, no-wrap
 msgid ""
 "    if (res == PTHREAD_CANCELED)\n"
@@ -3531,25 +4340,33 @@ msgid ""
 "    exit(EXIT_SUCCESS);\n"
 "}\n"
 msgstr ""
+"    if (res == PTHREAD_CANCELED)\n"
+"        printf(\"Thread was canceled; cnt = %d\\en\", cnt);\n"
+"    else\n"
+"        printf(\"Thread terminated normally; cnt = %d\\en\", cnt);\n"
+"    exit(EXIT_SUCCESS);\n"
+"}\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_cleanup_push.3:314
+#: build/C/man3/pthread_cleanup_push.3:315
 msgid ""
 "B<pthread_cancel>(3), B<pthread_cleanup_push_defer_np>(3), "
 "B<pthread_setcancelstate>(3), B<pthread_testcancel>(3), B<pthreads>(7)"
 msgstr ""
+"B<pthread_cancel>(3), B<pthread_cleanup_push_defer_np>(3), "
+"B<pthread_setcancelstate>(3), B<pthread_testcancel>(3), B<pthreads>(7)"
 
 #. type: TH
 #: build/C/man3/pthread_cleanup_push_defer_np.3:24
 #, no-wrap
 msgid "PTHREAD_CLEANUP_PUSH_DEFER_NP"
-msgstr ""
+msgstr "PTHREAD_CLEANUP_PUSH_DEFER_NP"
 
 #. type: TH
 #: build/C/man3/pthread_cleanup_push_defer_np.3:24
 #, no-wrap
 msgid "2008-12-04"
-msgstr ""
+msgstr "2008-12-04"
 
 #. type: Plain text
 #: build/C/man3/pthread_cleanup_push_defer_np.3:28
@@ -3557,6 +4374,9 @@ msgid ""
 "pthread_cleanup_push_defer_np, pthread_cleanup_pop_restore_np - push and pop "
 "thread cancellation clean-up handlers while saving cancelability type"
 msgstr ""
+"pthread_cleanup_push_defer_np, pthread_cleanup_pop_restore_np - "
+"cancelability type を保持したままでスレッドのキャンセルクリーンアップハンドラ"
+"の push/pop を行う"
 
 #. type: Plain text
 #: build/C/man3/pthread_cleanup_push_defer_np.3:35
@@ -3566,68 +4386,102 @@ msgid ""
 "B<                                   void *>I<arg>B<);>\n"
 "B<void pthread_cleanup_pop_restore_np(int >I<execute>B<);>\n"
 msgstr ""
+"B<void pthread_cleanup_push_defer_np(void (*>I<routine>B<)(void *),>\n"
+"B<                                   void *>I<arg>B<);>\n"
+"B<void pthread_cleanup_pop_restore_np(int >I<execute>B<);>\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_cleanup_push_defer_np.3:43
+#: build/C/man3/pthread_cleanup_push_defer_np.3:38
+#: build/C/man3/pthread_create.3:36 build/C/man3/pthread_detach.3:35
+#: build/C/man3/pthread_join.3:35 build/C/man3/pthread_kill.3:35
+#: build/C/man3/pthread_sigmask.3:36 build/C/man3/pthread_sigqueue.3:35
+#: build/C/man3/pthread_tryjoin_np.3:40 build/C/man3/pthread_yield.3:34
+msgid "Compile and link with I<-pthread>."
+msgstr "I<-pthread> を付けてコンパイルとリンクを行う。"
+
+#. type: Plain text
+#: build/C/man3/pthread_cleanup_push_defer_np.3:44
 msgid ""
 "These functions are the same as B<pthread_cleanup_push>(3)  and "
 "B<pthread_cleanup_pop>(3), except for the differences noted on this page."
 msgstr ""
+"これらの関数は B<pthread_cleanup_push>(3) と B<pthread_cleanup_pop>(3) と同じ"
+"だが、このページで説明する点が異なる。"
 
 #. type: Plain text
-#: build/C/man3/pthread_cleanup_push_defer_np.3:56
+#: build/C/man3/pthread_cleanup_push_defer_np.3:57
 msgid ""
 "Like B<pthread_cleanup_push>(3), B<pthread_cleanup_push_defer_np>()  pushes "
 "I<routine> onto the thread's stack of cancellation clean-up handlers.  In "
 "addition, it also saves the thread's current cancelability type, and sets "
 "the cancelability type to \"deferred\" (see B<pthread_setcanceltype>(3)); "
 "this ensures that cancellation clean-up will occur even if the thread's "
-"cancelability type was \"asynchronous\" before the the call."
+"cancelability type was \"asynchronous\" before the call."
 msgstr ""
+"B<pthread_cleanup_push>(3) と同様に、\n"
+"B<pthread_cleanup_push_defer_np>() は I<routine> をそのスレッドの\n"
+"クリーンアップハンドラのスタックに追加する。これに加えて、\n"
+"B<pthread_cleanup_push_defer_np>() は現在の cancelability type も\n"
+"保存し、cancelability type は \"deferred\" に設定する\n"
+"(B<pthread_setcanceltype>(3) 参照)。\n"
+"これにより、この関数が呼び出される前のスレッドの cancelability type が\n"
+"\"asynchronous\" であったとしても、キャンセルクリーンアップが行われること\n"
+"が保証される。"
 
 #. type: Plain text
-#: build/C/man3/pthread_cleanup_push_defer_np.3:65
+#: build/C/man3/pthread_cleanup_push_defer_np.3:66
 msgid ""
 "Like B<pthread_cleanup_pop>(3), B<pthread_cleanup_pop_restore_np>()  pops "
 "the top-most clean-up handler from the thread's stack of cancellation clean-"
 "up handlers.  In addition, it restores the thread's cancelability type to "
 "its value at the time of the matching B<pthread_cleanup_push_defer_np>()."
 msgstr ""
+"B<pthread_cleanup_pop>(3) と同様に、\n"
+"B<pthread_cleanup_pop_restore_np>() はそのスレッドのキャンセル\n"
+"クリーンアップハンドラのスタックから一番上にあるクリーンアップハンドラ\n"
+"を取り出す。これに加えて、そのスレッドの cancelability type を、対応\n"
+"する B<pthread_cleanup_push_defer_np>() が呼ばれた時点の値に戻す。"
 
 #. type: Plain text
-#: build/C/man3/pthread_cleanup_push_defer_np.3:71
+#: build/C/man3/pthread_cleanup_push_defer_np.3:72
 msgid ""
 "The caller must ensure that calls to these functions are paired within the "
 "same function, and at the same lexical nesting level.  Other restrictions "
 "apply, as described in B<pthread_cleanup_push>(3)."
 msgstr ""
+"呼び出し側では、これらの関数の呼び出しが同じ関数の中で対となり、かつ\n"
+"文法的に同じネストレベル (nesting level) になることを保証しなければ\n"
+"ならない。 B<pthread_cleanup_push>(3) で説明されている他の制限も\n"
+"適用される。"
 
 #. type: Plain text
-#: build/C/man3/pthread_cleanup_push_defer_np.3:73
+#: build/C/man3/pthread_cleanup_push_defer_np.3:74
 msgid "This sequence of calls:"
-msgstr ""
+msgstr "以下の一連の呼び出し"
 
 #. type: Plain text
-#: build/C/man3/pthread_cleanup_push_defer_np.3:78
+#: build/C/man3/pthread_cleanup_push_defer_np.3:79
 #, no-wrap
 msgid ""
 "pthread_cleanup_push_defer_np(routine, arg);\n"
 "pthread_cleanup_pop_restore_np(execute);\n"
 msgstr ""
+"pthread_cleanup_push_defer_np(routine, arg);\n"
+"pthread_cleanup_pop_restore_np(execute);\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_cleanup_push_defer_np.3:82
+#: build/C/man3/pthread_cleanup_push_defer_np.3:83
 msgid "is equivalent to (but shorter and more efficient than):"
-msgstr ""
+msgstr "と以下は等価である (但し、上の方がより簡潔で効率的である)。"
 
 #. type: Plain text
-#: build/C/man3/pthread_cleanup_push_defer_np.3:88
+#: build/C/man3/pthread_cleanup_push_defer_np.3:89
 #, no-wrap
 msgid "int oldtype;\n"
-msgstr ""
+msgstr "int oldtype;\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_cleanup_push_defer_np.3:94
+#: build/C/man3/pthread_cleanup_push_defer_np.3:95
 #, no-wrap
 msgid ""
 "pthread_cleanup_push(routine, arg);\n"
@@ -3636,24 +4490,31 @@ msgid ""
 "pthread_setcanceltype(oldtype, NULL);\n"
 "pthread_cleanup_pop(execute);\n"
 msgstr ""
+"pthread_cleanup_push(routine, arg);\n"
+"pthread_setcanceltype(PTHREAD_CANCEL_DEFERRED, &oldtype);\n"
+"\\&...\n"
+"pthread_setcanceltype(oldtype, NULL);\n"
+"pthread_cleanup_pop(execute);\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_cleanup_push_defer_np.3:107
+#: build/C/man3/pthread_cleanup_push_defer_np.3:108
 msgid ""
 "B<pthread_cancel>(3), B<pthread_cleanup_push>(3), B<pthread_setcancelstate>"
 "(3), B<pthread_testcancel>(3), B<pthreads>(7)"
 msgstr ""
+"B<pthread_cancel>(3), B<pthread_cleanup_push>(3), B<pthread_setcancelstate>"
+"(3), B<pthread_testcancel>(3), B<pthreads>(7)"
 
 #. type: TH
 #: build/C/man3/pthread_create.3:24
 #, no-wrap
 msgid "PTHREAD_CREATE"
-msgstr ""
+msgstr "PTHREAD_CREATE"
 
 #. type: Plain text
 #: build/C/man3/pthread_create.3:27
 msgid "pthread_create - create a new thread"
-msgstr ""
+msgstr "pthread_create - 新しいスレッドを作成する"
 
 #. type: Plain text
 #: build/C/man3/pthread_create.3:33
@@ -3662,14 +4523,8 @@ msgid ""
 "B<int pthread_create(pthread_t *>I<thread>B<, const pthread_attr_t *>I<attr>B<,>\n"
 "B<                   void *(*>I<start_routine>B<) (void *), void *>I<arg>B<);>\n"
 msgstr ""
-
-#. type: Plain text
-#: build/C/man3/pthread_create.3:36 build/C/man3/pthread_detach.3:35
-#: build/C/man3/pthread_join.3:35 build/C/man3/pthread_kill.3:35
-#: build/C/man3/pthread_sigmask.3:36 build/C/man3/pthread_sigqueue.3:35
-#: build/C/man3/pthread_tryjoin_np.3:40 build/C/man3/pthread_yield.3:34
-msgid "Compile and link with I<-pthread>."
-msgstr ""
+"B<int pthread_create(pthread_t *>I<thread>B<, const pthread_attr_t *>I<attr>B<,>\n"
+"B<                   void *(*>I<start_routine>B<) (void *), void *>I<arg>B<);>\n"
 
 #. type: Plain text
 #: build/C/man3/pthread_create.3:45
@@ -3678,20 +4533,25 @@ msgid ""
 "process.  The new thread starts execution by invoking I<start_routine>(); "
 "I<arg> is passed as the sole argument of I<start_routine>()."
 msgstr ""
+"B<pthread_create>() 関数は、呼び出したプロセス内に新しいスレッドを作成す"
+"る。\n"
+"新しいスレッドの実行は、 I<start_routine>() を起動することで開始される。\n"
+"I<start_routine>() は引き数を一つだけ取り、\n"
+"I<arg> が I<start_routine>() の引き数として渡される。"
 
 #. type: Plain text
 #: build/C/man3/pthread_create.3:47
 msgid "The new thread terminates in one of the following ways:"
-msgstr ""
+msgstr "新しく作成されたスレッドは、以下のいずれかで終了する。"
 
 #. type: IP
 #: build/C/man3/pthread_create.3:47 build/C/man3/pthread_create.3:53
 #: build/C/man3/pthread_create.3:61 build/C/man3/pthread_create.3:64
-#: build/C/man3/pthread_getattr_np.3:49 build/C/man3/pthread_getattr_np.3:52
-#: build/C/man3/pthread_getattr_np.3:55
+#: build/C/man3/pthread_getattr_np.3:50 build/C/man3/pthread_getattr_np.3:53
+#: build/C/man3/pthread_getattr_np.3:56
 #, no-wrap
 msgid "*"
-msgstr ""
+msgstr "*"
 
 #. type: Plain text
 #: build/C/man3/pthread_create.3:53
@@ -3700,6 +4560,10 @@ msgid ""
 "available to another thread in the same process that calls B<pthread_join>"
 "(3)."
 msgstr ""
+"スレッドが B<pthread_exit>(3) を呼び出す。\n"
+"B<pthread_exit>(3) を呼び出す際には終了ステータス値を指定する。\n"
+"この値は B<pthread_join>(3) を呼び出した同じプロセス内の\n"
+"別のスレッドで参照できる。"
 
 #. type: Plain text
 #: build/C/man3/pthread_create.3:61
@@ -3707,11 +4571,13 @@ msgid ""
 "It returns from I<start_routine>().  This is equivalent to calling "
 "B<pthread_exit>(3)  with the value supplied in the I<return> statement."
 msgstr ""
+"スレッドが I<start_routine>() から返る。これは、\n"
+"I<return> 文に渡した値で B<pthread_exit>(3) を呼び出すのと等価である。"
 
 #. type: Plain text
 #: build/C/man3/pthread_create.3:64
 msgid "It is canceled (see B<pthread_cancel>(3))."
-msgstr ""
+msgstr "スレッドがキャンセルされる (B<pthread_cancel>(3) 参照)。"
 
 #. type: Plain text
 #: build/C/man3/pthread_create.3:70
@@ -3720,6 +4586,9 @@ msgid ""
 "performs a return from I<main>().  This causes the termination of all "
 "threads in the process."
 msgstr ""
+"プロセス内のいずれかのスレッドで B<exit>(3) が呼ばれるか、\n"
+"メインスレッドで I<main>() 内で return が実行される。\n"
+"この場合は、プロセス内の全てのスレッドが終了される。"
 
 #. type: Plain text
 #: build/C/man3/pthread_create.3:84
@@ -3730,6 +4599,11 @@ msgid ""
 "functions.  If I<attr> is NULL, then the thread is created with default "
 "attributes."
 msgstr ""
+"I<attr> 引き数は I<pthread_attr_t> 構造体へのポインタであり、\n"
+"I<pthread_attr_t> 構造体の内容を使用して、スレッド作成時に\n"
+"新しいスレッドの属性が決定される。\n"
+"この構造体は B<pthread_attr_init>(3) や関連の関数を使って初期化される。\n"
+"I<attr> が NULL の場合、新しいスレッドはデフォルトの属性で作成される。"
 
 #. type: Plain text
 #: build/C/man3/pthread_create.3:91
@@ -3738,6 +4612,9 @@ msgid ""
 "the new thread in the buffer pointed to by I<thread>; this identifier is "
 "used to refer to the thread in subsequent calls to other pthreads functions."
 msgstr ""
+"成功した場合は、 B<pthread_create>() は返る前に新しいスレッドの ID を\n"
+"I<thread> が指すバッファに格納する。この ID は、これ以降に他の\n"
+"pthreads 関数の呼び出しでスレッドを参照するのに使用される。"
 
 #. type: Plain text
 #: build/C/man3/pthread_create.3:99
@@ -3747,6 +4624,11 @@ msgid ""
 "empty (B<sigpending>(2)).  The new thread does not inherit the creating "
 "thread's alternate signal stack (B<sigaltstack>(2))."
 msgstr ""
+"新しいスレッドは、スレッドを作成したスレッドのシグナルマスク\n"
+"(B<pthread_sigmask>(3) 参照) のコピーを継承する。\n"
+"新しいスレッドの処理待ちシグナル (B<sigpending>(2)) の集合は空となる。\n"
+"新しいスレッドはスレッドを作成したスレッドの代替シグナルスタック\n"
+"(B<sigaltstack>(2)) を継承しない。"
 
 #. type: Plain text
 #: build/C/man3/pthread_create.3:102
@@ -3754,6 +4636,8 @@ msgid ""
 "The new thread inherits the calling thread's floating-point environment "
 "(B<fenv>(3))."
 msgstr ""
+"新しいスレッドは呼び出したスレッドの浮動小数点環境 (B<fenv>(3))\n"
+"を継承する。"
 
 #.  CLOCK_THREAD_CPUTIME_ID in clock_gettime(2)
 #. type: Plain text
@@ -3762,12 +4646,14 @@ msgid ""
 "The initial value of the new thread's CPU-time clock is 0 (see "
 "B<pthread_getcpuclockid>(3))."
 msgstr ""
+"新しいスレッドの CPU 時間時計の初期値は 0 である\n"
+"(B<pthread_getcpuclockid>(3) 参照)。"
 
 #. type: SS
 #: build/C/man3/pthread_create.3:107
 #, no-wrap
 msgid "Linux-specific details"
-msgstr ""
+msgstr "Linux 固有の詳細"
 
 #. type: Plain text
 #: build/C/man3/pthread_create.3:113
@@ -3775,6 +4661,10 @@ msgid ""
 "The new thread inherits copies of the calling thread's capability sets (see "
 "B<capabilities>(7))  and CPU affinity mask (see B<sched_setaffinity>(2))."
 msgstr ""
+"新しいスレッドは、呼び出したスレッドの\n"
+"ケーパビリティセット (B<capabilities>(7) 参照) と \n"
+"CPU affinity マスク (B<sched_setaffinity>(2) 参照) の\n"
+"コピーをを継承しない。"
 
 #. type: Plain text
 #: build/C/man3/pthread_create.3:120
@@ -3782,12 +4672,14 @@ msgid ""
 "On success, B<pthread_create>()  returns 0; on error, it returns an error "
 "number, and the contents of I<*thread> are undefined."
 msgstr ""
+"成功すると、 B<pthread_create>() は 0 を返す。\n"
+"エラーの場合は、エラー番号が返され、 I<*thread> の内容は不定である。"
 
 #. type: TP
 #: build/C/man3/pthread_create.3:121 build/C/man3/pthread_sigqueue.3:69
 #, no-wrap
 msgid "B<EAGAIN>"
-msgstr ""
+msgstr "B<EAGAIN>"
 
 #. type: Plain text
 #: build/C/man3/pthread_create.3:135
@@ -3799,18 +4691,24 @@ msgid ""
 "kernel's system-wide limit on the number of threads, I</proc/sys/kernel/"
 "threads-max>, was reached."
 msgstr ""
+"別のスレッドを作成するのに十分なリソースがないか、システムで設定された\n"
+"スレッド数の上限に達していた。後者が起こるのは 2 つの場合がある。\n"
+"一つは、実ユーザ ID 当たりのプロセス数の上限である、B<RLIMIT_NPROC> \n"
+"ソフトリソース上限 (B<setrlimit>(2) で設定できる) に達していた場合\n"
+"である。もう一つはカーネルのシステム全体のスレッド数の上限である\n"
+"I</proc/sys/kernel/threads-max> が達していた場合である。"
 
 #. type: Plain text
 #: build/C/man3/pthread_create.3:139
 msgid "Invalid settings in I<attr>."
-msgstr ""
+msgstr "I<attr> で指定された設定が不正である。"
 
 #. type: TP
-#: build/C/man3/pthread_create.3:139 build/C/man3/pthread_setschedparam.3:126
-#: build/C/man3/pthread_setschedprio.3:63
+#: build/C/man3/pthread_create.3:139 build/C/man3/pthread_setschedparam.3:127
+#: build/C/man3/pthread_setschedprio.3:64
 #, no-wrap
 msgid "B<EPERM>"
-msgstr ""
+msgstr "B<EPERM>"
 
 #. type: Plain text
 #: build/C/man3/pthread_create.3:144
@@ -3818,6 +4716,8 @@ msgid ""
 "No permission to set the scheduling policy and parameters specified in "
 "I<attr>."
 msgstr ""
+"I<attr> に指定されたスケジューリングポリシーとパラメータを\n"
+"設定する許可がない。"
 
 #. type: Plain text
 #: build/C/man3/pthread_create.3:158
@@ -3827,6 +4727,12 @@ msgid ""
 "being employed, after a call to B<pthread_create>(), it is indeterminate "
 "which thread\\(emthe caller or the new thread\\(emwill next execute."
 msgstr ""
+"B<pthread_create>() が I<*thread> で返すスレッド ID についての\n"
+"詳しい情報は B<pthread_self>(3) を参照のこと。\n"
+"リアルタイムスケジューリングポリシーが使用されない限り、\n"
+"B<pthread_create>() の呼び出し後に、\n"
+"どのスレッドが\\(em呼び出したスレッドか新しいスレッドか\\(em\n"
+"次に実行されるかは決まっていない。"
 
 #. type: Plain text
 #: build/C/man3/pthread_create.3:178
@@ -3843,6 +4749,20 @@ msgid ""
 "I<attr> was set to create the thread in a detached state (using "
 "B<pthread_attr_setdetachstate>(3))."
 msgstr ""
+"スレッドは I<join 可能>か I<detached (切り離された状態)> のどちらかに\n"
+"することができる。スレッドが join 可能な場合、別のスレッドが\n"
+"B<pthread_join>(3) を使って終了したスレッドを待ち、終了ステータスを取得\n"
+"することができる。終了した join 可能なスレッドは join された場合にのみ、\n"
+"そのスレッドの最後に残ったリソースが解放されシステムに戻される。\n"
+"detached 状態のスレッドが終了すると、そのスレッドのリソースは自動的に\n"
+"システムに戻される。detached 状態のスレッドを join して、その終了\n"
+"ステータスを取得することはできない。スレッドを detached 状態にするのは、\n"
+"その終了ステータスをアプリケーションが気にする必要がないある種の\n"
+"デーモン (daemon) スレッドでは有用である。\n"
+"デフォルトでは、新しいスレッドは join 可能な状態で作成される。\n"
+"(B<pthread_attr_setdetachstate>(3) を使って) I<attr> でスレッドが\n"
+"detached 状態で作成されるように設定されていない限り、join 可能な状態で\n"
+"作成される。"
 
 #.  FIXME . Perhaps some of the following detail should be in
 #.  a future pthread_attr_setstacksize(3) page.
@@ -3857,24 +4777,49 @@ msgid ""
 "explicitly set in the I<attr> argument used to create a thread, in order to "
 "obtain a stack size other than the default."
 msgstr ""
+"Linux/x86-32 では、新しいスレッドのデフォルトのスタックサイズは 2MB で\n"
+"ある。NPTL スレッド実装の下では、I<プログラム開始時の> B<RLIMIT_STACK>\n"
+"ソフトリソース上限が\"unlimited\" 以外の場合、その値が新しいスレッドのデ\n"
+"フォルトのスタックサイズとなる。\n"
+"B<pthread_attr_setstacksize>(3) を使って、スレッドを作成する際の\n"
+"I<attr> 引き数に明示的にスタックサイズ属性を設定することで、\n"
+"デフォルト値以外のスタックサイズを得ることができる。"
+
+#. type: Plain text
+#: build/C/man3/pthread_create.3:200
+msgid ""
+"In the obsolete LinuxThreads implementation, each of the threads in a "
+"process has a different process ID.  This is in violation of the POSIX "
+"threads specification, and is the source of many other nonconformances to "
+"the standard; see B<pthreads>(7)."
+msgstr ""
+"廃止予定の LinuxThreads 実装では、プロセス内の各スレッドは異なる\n"
+"プロセス ID を持つ。これは POSIX スレッドの規格に違反しており、\n"
+"他の多くの標準非準拠の点の原因になっている。\n"
+"B<pthreads>(7) を参照のこと。"
 
 #. type: Plain text
-#: build/C/man3/pthread_create.3:198
+#: build/C/man3/pthread_create.3:204
 msgid ""
 "The program below demonstrates the use of B<pthread_create>(), as well as a "
 "number of other functions in the pthreads API."
 msgstr ""
+"以下のプログラムは、 B<pthread_create>() や\n"
+"pthreads API の他のいろいろな関数の使用例を示している。"
 
 #. type: Plain text
-#: build/C/man3/pthread_create.3:203
+#: build/C/man3/pthread_create.3:209
 msgid ""
 "In the following run, on a system providing the NPTL threading "
 "implementation, the stack size defaults to the value given by the \"stack "
 "size\" resource limit:"
 msgstr ""
+"以下の実行例は、 NPTL スレッド実装が提供されているシステムでのもので、\n"
+"スタックサイズがデフォルト値の \"stack size\" リソース上限で指定される値\n"
+"になる。"
 
 #. type: Plain text
-#: build/C/man3/pthread_create.3:215
+#: build/C/man3/pthread_create.3:221
 #, no-wrap
 msgid ""
 "$B< ulimit -s>\n"
@@ -3887,16 +4832,28 @@ msgid ""
 "Joined with thread 2; returned value was SALUT\n"
 "Joined with thread 3; returned value was SERVUS\n"
 msgstr ""
-
+"$B< ulimit -s>\n"
+"8192            # The stack size limit is 8 MB (0x80000 bytes)\n"
+"$B< ./a.out hola salut servus>\n"
+"Thread 1: top of stack near 0xb7dd03b8; argv_string=hola\n"
+"Thread 2: top of stack near 0xb75cf3b8; argv_string=salut\n"
+"Thread 3: top of stack near 0xb6dce3b8; argv_string=servus\n"
+"Joined with thread 1; returned value was HOLA\n"
+"Joined with thread 2; returned value was SALUT\n"
+"Joined with thread 3; returned value was SERVUS\n"
+
 #. type: Plain text
-#: build/C/man3/pthread_create.3:221
+#: build/C/man3/pthread_create.3:227
 msgid ""
 "In the next run, the program explicitly sets a stack size of 1MB (using "
 "B<pthread_attr_setstacksize>(3))  for the created threads:"
 msgstr ""
+"次の実行例では、プログラム内で、作成されるスレッドに対して\n"
+"(B<pthread_attr_setstacksize>(3) を使って1MB のスタックサイズを\n"
+"明示的に設定している。"
 
 #. type: Plain text
-#: build/C/man3/pthread_create.3:231
+#: build/C/man3/pthread_create.3:237
 #, no-wrap
 msgid ""
 "$B< ./a.out -s 0x100000 hola salut servus>\n"
@@ -3907,9 +4864,16 @@ msgid ""
 "Joined with thread 2; returned value was SALUT\n"
 "Joined with thread 3; returned value was SERVUS\n"
 msgstr ""
+"$B< ./a.out -s 0x100000 hola salut servus>\n"
+"Thread 1: top of stack near 0xb7d723b8; argv_string=hola\n"
+"Thread 2: top of stack near 0xb7c713b8; argv_string=salut\n"
+"Thread 3: top of stack near 0xb7b703b8; argv_string=servus\n"
+"Joined with thread 1; returned value was HOLA\n"
+"Joined with thread 2; returned value was SALUT\n"
+"Joined with thread 3; returned value was SERVUS\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_create.3:243
+#: build/C/man3/pthread_create.3:249
 #, no-wrap
 msgid ""
 "#include E<lt>pthread.hE<gt>\n"
@@ -3920,17 +4884,26 @@ msgid ""
 "#include E<lt>errno.hE<gt>\n"
 "#include E<lt>ctype.hE<gt>\n"
 msgstr ""
+"#include E<lt>pthread.hE<gt>\n"
+"#include E<lt>string.hE<gt>\n"
+"#include E<lt>stdio.hE<gt>\n"
+"#include E<lt>stdlib.hE<gt>\n"
+"#include E<lt>unistd.hE<gt>\n"
+"#include E<lt>errno.hE<gt>\n"
+"#include E<lt>ctype.hE<gt>\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_create.3:249 build/C/man3/pthread_getcpuclockid.3:107
+#: build/C/man3/pthread_create.3:255 build/C/man3/pthread_getcpuclockid.3:108
 #, no-wrap
 msgid ""
 "#define handle_error(msg) \\e\n"
 "        do { perror(msg); exit(EXIT_FAILURE); } while (0)\n"
 msgstr ""
+"#define handle_error(msg) \\e\n"
+"        do { perror(msg); exit(EXIT_FAILURE); } while (0)\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_create.3:255
+#: build/C/man3/pthread_create.3:261
 #, no-wrap
 msgid ""
 "struct thread_info {    /* Used as argument to thread_start() */\n"
@@ -3939,17 +4912,24 @@ msgid ""
 "    char     *argv_string;      /* From command-line argument */\n"
 "};\n"
 msgstr ""
+"struct thread_info {    /* Used as argument to thread_start() */\n"
+"    pthread_t thread_id;        /* ID returned by pthread_create() */\n"
+"    int       thread_num;       /* Application-defined thread # */\n"
+"    char     *argv_string;      /* From command-line argument */\n"
+"};\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_create.3:258
+#: build/C/man3/pthread_create.3:264
 #, no-wrap
 msgid ""
 "/* Thread start function: display address near top of our stack,\n"
 "   and return upper-cased copy of argv_string */\n"
 msgstr ""
+"/* Thread start function: display address near top of our stack,\n"
+"   and return upper-cased copy of argv_string */\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_create.3:264
+#: build/C/man3/pthread_create.3:270
 #, no-wrap
 msgid ""
 "static void *\n"
@@ -3958,42 +4938,56 @@ msgid ""
 "    struct thread_info *tinfo = (struct thread_info *) arg;\n"
 "    char *uargv, *p;\n"
 msgstr ""
+"static void *\n"
+"thread_start(void *arg)\n"
+"{\n"
+"    struct thread_info *tinfo = (struct thread_info *) arg;\n"
+"    char *uargv, *p;\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_create.3:267
+#: build/C/man3/pthread_create.3:273
 #, no-wrap
 msgid ""
 "    printf(\"Thread %d: top of stack near %p; argv_string=%s\\en\",\n"
 "            tinfo-E<gt>thread_num, &p, tinfo-E<gt>argv_string);\n"
 msgstr ""
+"    printf(\"Thread %d: top of stack near %p; argv_string=%s\\en\",\n"
+"            tinfo-E<gt>thread_num, &p, tinfo-E<gt>argv_string);\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_create.3:271
+#: build/C/man3/pthread_create.3:277
 #, no-wrap
 msgid ""
 "    uargv = strdup(tinfo-E<gt>argv_string);\n"
 "    if (uargv == NULL)\n"
 "        handle_error(\"strdup\");\n"
 msgstr ""
+"    uargv = strdup(tinfo-E<gt>argv_string);\n"
+"    if (uargv == NULL)\n"
+"        handle_error(\"strdup\");\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_create.3:274
+#: build/C/man3/pthread_create.3:280
 #, no-wrap
 msgid ""
 "    for (p = uargv; *p != \\(aq\\e0\\(aq; p++)\n"
 "        *p = toupper(*p);\n"
 msgstr ""
+"    for (p = uargv; *p != \\(aq\\e0\\(aq; p++)\n"
+"        *p = toupper(*p);\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_create.3:277
+#: build/C/man3/pthread_create.3:283
 #, no-wrap
 msgid ""
 "    return uargv;\n"
 "}\n"
 msgstr ""
+"    return uargv;\n"
+"}\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_create.3:286
+#: build/C/man3/pthread_create.3:292
 #, no-wrap
 msgid ""
 "int\n"
@@ -4005,15 +4999,23 @@ msgid ""
 "    int stack_size;\n"
 "    void *res;\n"
 msgstr ""
+"int\n"
+"main(int argc, char *argv[])\n"
+"{\n"
+"    int s, tnum, opt, num_threads;\n"
+"    struct thread_info *tinfo;\n"
+"    pthread_attr_t attr;\n"
+"    int stack_size;\n"
+"    void *res;\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_create.3:288
+#: build/C/man3/pthread_create.3:294
 #, no-wrap
 msgid "    /* The \"-s\" option specifies a stack size for our threads */\n"
-msgstr ""
+msgstr "    /* The \"-s\" option specifies a stack size for our threads */\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_create.3:295
+#: build/C/man3/pthread_create.3:301
 #, no-wrap
 msgid ""
 "    stack_size = -1;\n"
@@ -4023,9 +5025,15 @@ msgid ""
 "            stack_size = strtoul(optarg, NULL, 0);\n"
 "            break;\n"
 msgstr ""
+"    stack_size = -1;\n"
+"    while ((opt = getopt(argc, argv, \"s:\")) != -1) {\n"
+"        switch (opt) {\n"
+"        case \\(aqs\\(aq:\n"
+"            stack_size = strtoul(optarg, NULL, 0);\n"
+"            break;\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_create.3:302
+#: build/C/man3/pthread_create.3:308
 #, no-wrap
 msgid ""
 "        default:\n"
@@ -4035,30 +5043,39 @@ msgid ""
 "        }\n"
 "    }\n"
 msgstr ""
+"        default:\n"
+"            fprintf(stderr, \"Usage: %s [-s stack-size] arg...\\en\",\n"
+"                    argv[0]);\n"
+"            exit(EXIT_FAILURE);\n"
+"        }\n"
+"    }\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_create.3:304
+#: build/C/man3/pthread_create.3:310
 #, no-wrap
 msgid "    num_threads = argc - optind;\n"
-msgstr ""
+msgstr "    num_threads = argc - optind;\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_create.3:306
+#: build/C/man3/pthread_create.3:312
 #, no-wrap
 msgid "    /* Initialize thread creation attributes */\n"
-msgstr ""
+msgstr "    /* Initialize thread creation attributes */\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_create.3:310
+#: build/C/man3/pthread_create.3:316
 #, no-wrap
 msgid ""
 "    s = pthread_attr_init(&attr);\n"
 "    if (s != 0)\n"
 "        handle_error_en(s, \"pthread_attr_init\");\n"
 msgstr ""
+"    s = pthread_attr_init(&attr);\n"
+"    if (s != 0)\n"
+"        handle_error_en(s, \"pthread_attr_init\");\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_create.3:316
+#: build/C/man3/pthread_create.3:322
 #, no-wrap
 msgid ""
 "    if (stack_size E<gt> 0) {\n"
@@ -4067,47 +5084,60 @@ msgid ""
 "            handle_error_en(s, \"pthread_attr_setstacksize\");\n"
 "    }\n"
 msgstr ""
+"    if (stack_size E<gt> 0) {\n"
+"        s = pthread_attr_setstacksize(&attr, stack_size);\n"
+"        if (s != 0)\n"
+"            handle_error_en(s, \"pthread_attr_setstacksize\");\n"
+"    }\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_create.3:318
+#: build/C/man3/pthread_create.3:324
 #, no-wrap
 msgid "    /* Allocate memory for pthread_create() arguments */\n"
-msgstr ""
+msgstr "    /* Allocate memory for pthread_create() arguments */\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_create.3:322
+#: build/C/man3/pthread_create.3:328
 #, no-wrap
 msgid ""
 "    tinfo = calloc(num_threads, sizeof(struct thread_info));\n"
 "    if (tinfo == NULL)\n"
 "        handle_error(\"calloc\");\n"
 msgstr ""
+"    tinfo = calloc(num_threads, sizeof(struct thread_info));\n"
+"    if (tinfo == NULL)\n"
+"        handle_error(\"calloc\");\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_create.3:324
+#: build/C/man3/pthread_create.3:330
 #, no-wrap
 msgid "    /* Create one thread for each command-line argument */\n"
-msgstr ""
+msgstr "    /* Create one thread for each command-line argument */\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_create.3:328
+#: build/C/man3/pthread_create.3:334
 #, no-wrap
 msgid ""
 "    for (tnum = 0; tnum E<lt> num_threads; tnum++) {\n"
 "        tinfo[tnum].thread_num = tnum + 1;\n"
 "        tinfo[tnum].argv_string = argv[optind + tnum];\n"
 msgstr ""
+"    for (tnum = 0; tnum E<lt> num_threads; tnum++) {\n"
+"        tinfo[tnum].thread_num = tnum + 1;\n"
+"        tinfo[tnum].argv_string = argv[optind + tnum];\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_create.3:331
+#: build/C/man3/pthread_create.3:337
 #, no-wrap
 msgid ""
 "        /* The pthread_create() call stores the thread ID into\n"
 "           corresponding element of tinfo[] */\n"
 msgstr ""
+"        /* The pthread_create() call stores the thread ID into\n"
+"           corresponding element of tinfo[] */\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_create.3:337
+#: build/C/man3/pthread_create.3:343
 #, no-wrap
 msgid ""
 "        s = pthread_create(&tinfo[tnum].thread_id, &attr,\n"
@@ -4116,32 +5146,42 @@ msgid ""
 "            handle_error_en(s, \"pthread_create\");\n"
 "    }\n"
 msgstr ""
+"        s = pthread_create(&tinfo[tnum].thread_id, &attr,\n"
+"                           &thread_start, &tinfo[tnum]);\n"
+"        if (s != 0)\n"
+"            handle_error_en(s, \"pthread_create\");\n"
+"    }\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_create.3:340
+#: build/C/man3/pthread_create.3:346
 #, no-wrap
 msgid ""
 "    /* Destroy the thread attributes object, since it is no\n"
 "       longer needed */\n"
 msgstr ""
+"    /* Destroy the thread attributes object, since it is no\n"
+"       longer needed */\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_create.3:344 build/C/man3/pthread_setschedparam.3:420
+#: build/C/man3/pthread_create.3:350 build/C/man3/pthread_setschedparam.3:421
 #, no-wrap
 msgid ""
 "    s = pthread_attr_destroy(&attr);\n"
 "    if (s != 0)\n"
 "        handle_error_en(s, \"pthread_attr_destroy\");\n"
 msgstr ""
+"    s = pthread_attr_destroy(&attr);\n"
+"    if (s != 0)\n"
+"        handle_error_en(s, \"pthread_attr_destroy\");\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_create.3:346
+#: build/C/man3/pthread_create.3:352
 #, no-wrap
 msgid "    /* Now join with each thread, and display its returned value */\n"
-msgstr ""
+msgstr "    /* Now join with each thread, and display its returned value */\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_create.3:351
+#: build/C/man3/pthread_create.3:357
 #, no-wrap
 msgid ""
 "    for (tnum = 0; tnum E<lt> num_threads; tnum++) {\n"
@@ -4149,9 +5189,13 @@ msgid ""
 "        if (s != 0)\n"
 "            handle_error_en(s, \"pthread_join\");\n"
 msgstr ""
+"    for (tnum = 0; tnum E<lt> num_threads; tnum++) {\n"
+"        s = pthread_join(tinfo[tnum].thread_id, &res);\n"
+"        if (s != 0)\n"
+"            handle_error_en(s, \"pthread_join\");\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_create.3:356
+#: build/C/man3/pthread_create.3:362
 #, no-wrap
 msgid ""
 "        printf(\"Joined with thread %d; returned value was %s\\en\",\n"
@@ -4159,24 +5203,22 @@ msgid ""
 "        free(res);      /* Free memory allocated by thread */\n"
 "    }\n"
 msgstr ""
+"        printf(\"Joined with thread %d; returned value was %s\\en\",\n"
+"                tinfo[tnum].thread_num, (char *) res);\n"
+"        free(res);      /* Free memory allocated by thread */\n"
+"    }\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_create.3:360
+#: build/C/man3/pthread_create.3:366
 #, no-wrap
 msgid ""
 "    free(tinfo);\n"
 "    exit(EXIT_SUCCESS);\n"
 "}\n"
 msgstr ""
-
-#. type: Plain text
-#: build/C/man3/pthread_create.3:367
-msgid ""
-"In the obsolete LinuxThreads implementation, each of the threads in a "
-"process has a different process ID.  This is in violation of the POSIX "
-"threads specification, and is the source of many other nonconformances to "
-"the standard; see B<pthreads>(7)."
-msgstr ""
+"    free(tinfo);\n"
+"    exit(EXIT_SUCCESS);\n"
+"}\n"
 
 #. type: Plain text
 #: build/C/man3/pthread_create.3:378
@@ -4186,29 +5228,33 @@ msgid ""
 "B<pthread_getattr_np>(3), B<pthread_join>(3), B<pthread_self>(3), B<pthreads>"
 "(7)"
 msgstr ""
+"B<getrlimit>(2), B<pthread_attr_init>(3), B<pthread_cancel>(3), "
+"B<pthread_detach>(3), B<pthread_equal>(3), B<pthread_exit>(3), "
+"B<pthread_getattr_np>(3), B<pthread_join>(3), B<pthread_self>(3), B<pthreads>"
+"(7)"
 
 #. type: TH
 #: build/C/man3/pthread_detach.3:24
 #, no-wrap
 msgid "PTHREAD_DETACH"
-msgstr ""
+msgstr "PTHREAD_DETACH"
 
 #. type: TH
 #: build/C/man3/pthread_detach.3:24 build/C/man3/pthread_join.3:24
 #, no-wrap
 msgid "2008-11-27"
-msgstr ""
+msgstr "2008-11-27"
 
 #. type: Plain text
 #: build/C/man3/pthread_detach.3:27
 msgid "pthread_detach - detach a thread"
-msgstr ""
+msgstr "pthread_detach - スレッドを切り離す (detach する)"
 
 #. type: Plain text
 #: build/C/man3/pthread_detach.3:32
 #, no-wrap
 msgid "B<int pthread_detach(pthread_t >I<thread>B<);>\n"
-msgstr ""
+msgstr "B<int pthread_detach(pthread_t >I<thread>B<);>\n"
 
 #. type: Plain text
 #: build/C/man3/pthread_detach.3:44
@@ -4218,6 +5264,11 @@ msgid ""
 "automatically released back to the system without the need for another "
 "thread to join with the terminated thread."
 msgstr ""
+"B<pthread_detach>() 関数は I<thread> で識別されるスレッドに\n"
+"detached (切り離された状態) という印を付ける。\n"
+"detached 状態のスレッドが終了すると、\n"
+"別のスレッドが終了されたスレッドを join しなくても、\n"
+"そのスレッドのリソースは自動的に解放されてシステムに戻される。"
 
 #. type: Plain text
 #: build/C/man3/pthread_detach.3:47
@@ -4225,6 +5276,8 @@ msgid ""
 "Attempting to detach an already detached thread results in unspecified "
 "behavior."
 msgstr ""
+"すでに detach 状態のスレッドを detach しようとした場合に\n"
+"どのような結果となるかは規定されていない。"
 
 #. type: Plain text
 #: build/C/man3/pthread_detach.3:52
@@ -4232,11 +5285,13 @@ msgid ""
 "On success, B<pthread_detach>()  returns 0; on error, it returns an error "
 "number."
 msgstr ""
+"成功すると、B<pthread_detach>() は 0 を返す。\n"
+"エラーの場合、エラー番号を返す。"
 
 #. type: Plain text
 #: build/C/man3/pthread_detach.3:57 build/C/man3/pthread_join.3:87
 msgid "I<thread> is not a joinable thread."
-msgstr ""
+msgstr "I<thread> が join 可能なスレッドではない。"
 
 #. type: Plain text
 #: build/C/man3/pthread_detach.3:68
@@ -4244,6 +5299,9 @@ msgid ""
 "Once a thread has been detached, it can't be joined with B<pthread_join>(3)  "
 "or be made joinable again."
 msgstr ""
+"いったんスレッドを detached 状態にすると、\n"
+"そのスレッドを B<pthread_join>(3) で join したり、\n"
+"もう一度 join 可能にしたりすることはできない。"
 
 #. type: Plain text
 #: build/C/man3/pthread_detach.3:75
@@ -4252,6 +5310,9 @@ msgid ""
 "B<pthread_attr_setdetachstate>(3)  to set the detached attribute of the "
 "I<attr> argument of B<pthread_create>(3)."
 msgstr ""
+"B<pthread_attr_setdetachstate>(3) を使って\n"
+"B<pthread_create>(3) の I<attr> 引き数の detached 属性を設定することで、\n"
+"新しいスレッドを detached 状態で作成することができる。"
 
 #. type: Plain text
 #: build/C/man3/pthread_detach.3:82
@@ -4261,6 +5322,10 @@ msgid ""
 "the process terminates using B<exit>(3)  (or equivalently, if the main "
 "thread returns)."
 msgstr ""
+"detached 属性は、スレッドが終了した際のシステムの動作を決めるだけである。\n"
+"プロセスが B<exit>(3) を使って終了した場合に、そのスレッドが終了され\n"
+"なくなるようなことはない (なお、メインスレッドが return した場合も\n"
+"プロセスが B<exit>(3) を使って終了した場合と全く同じである)。 "
 
 #. type: Plain text
 #: build/C/man3/pthread_detach.3:91
@@ -4270,17 +5335,21 @@ msgid ""
 "can be released.  (But note that the resources of all threads are freed when "
 "the process terminates.)"
 msgstr ""
+"アプリケーションが作成した各スレッドについて、そのスレッドが使用して\n"
+"いるシステムリソースを解放できるように、B<pthread_join>(3) か\n"
+"B<pthread_detach>() のどちらかを呼び出すべきである (ただし、プロセスが\n"
+"終了するときには、全てのスレッドのリソースが解放される)。"
 
 #. type: Plain text
 #: build/C/man3/pthread_detach.3:93
 msgid "The following statement detaches the calling thread:"
-msgstr ""
+msgstr "以下の文は、呼び出したスレッド自身を detach する。"
 
 #. type: Plain text
 #: build/C/man3/pthread_detach.3:95
 #, no-wrap
 msgid "    pthread_detach(pthread_self());\n"
-msgstr ""
+msgstr "    pthread_detach(pthread_self());\n"
 
 #. type: Plain text
 #: build/C/man3/pthread_detach.3:102
@@ -4288,90 +5357,102 @@ msgid ""
 "B<pthread_attr_setdetachstate>(3), B<pthread_cancel>(3), B<pthread_create>"
 "(3), B<pthread_exit>(3), B<pthread_join>(3), B<pthreads>(7)"
 msgstr ""
+"B<pthread_attr_setdetachstate>(3), B<pthread_cancel>(3), B<pthread_create>"
+"(3), B<pthread_exit>(3), B<pthread_join>(3), B<pthreads>(7)"
 
 #. type: TH
 #: build/C/man3/pthread_equal.3:24
 #, no-wrap
 msgid "PTHREAD_EQUAL"
-msgstr ""
+msgstr "PTHREAD_EQUAL"
 
 #. type: TH
 #: build/C/man3/pthread_equal.3:24 build/C/man3/pthread_exit.3:24
 #, no-wrap
 msgid "2009-03-30"
-msgstr ""
+msgstr "2009-03-30"
 
 #. type: Plain text
 #: build/C/man3/pthread_equal.3:27
 msgid "pthread_equal - compare thread IDs"
-msgstr ""
+msgstr "pthread_equal - スレッド ID を比較する"
 
 #. type: Plain text
 #: build/C/man3/pthread_equal.3:32
 #, no-wrap
 msgid "B<int pthread_equal(pthread_t >I<t1>B<, pthread_t >I<t2>B<);>\n"
-msgstr ""
+msgstr "B<int pthread_equal(pthread_t >I<t1>B<, pthread_t >I<t2>B<);>\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_equal.3:38
+#: build/C/man3/pthread_equal.3:39
 msgid "The B<pthread_equal>()  function compares two thread identifiers."
-msgstr ""
+msgstr "B<pthread_equal>() 関数は 2 つのスレッド識別子の比較を行う。"
 
 #. type: Plain text
-#: build/C/man3/pthread_equal.3:42
+#: build/C/man3/pthread_equal.3:43
 msgid ""
 "If the two thread IDs are equal, B<pthread_equal>()  returns a nonzero "
 "value; otherwise, it returns 0."
 msgstr ""
+"B<pthread_equal>() は、2 つのスレッド ID が等しければ 0 以外の値を返し、\n"
+"そうでなければ 0 を返す。"
 
 #.  SH VERSIONS
 #.  Available since glibc 2.0
 #. type: Plain text
-#: build/C/man3/pthread_equal.3:44 build/C/man3/pthread_exit.3:72
-#: build/C/man3/pthread_self.3:47 build/C/man3/pthread_testcancel.3:55
+#: build/C/man3/pthread_equal.3:45 build/C/man3/pthread_exit.3:73
+#: build/C/man3/pthread_self.3:48 build/C/man3/pthread_testcancel.3:56
 msgid "This function always succeeds."
-msgstr ""
+msgstr "この関数は常に成功する。"
 
 #. type: Plain text
-#: build/C/man3/pthread_equal.3:53
+#: build/C/man3/pthread_equal.3:54
 msgid ""
 "The B<pthread_equal>()  function is necessary because thread IDs should be "
 "considered opaque: there is no portable way for applications to directly "
 "compare two I<pthread_t> values."
 msgstr ""
+"B<pthread_equal>() 関数が必要なのは、\n"
+"スレッド ID はその内部構造を意識すべきではないためである。\n"
+"アプリケーションが 2 つの I<pthread_t> の値を直接比較する場合、\n"
+"移植性を確保できる形で比較する方法はない。"
 
 #. type: Plain text
-#: build/C/man3/pthread_equal.3:57
+#: build/C/man3/pthread_equal.3:58
 msgid "B<pthread_create>(3), B<pthread_self>(3), B<pthreads>(7)"
-msgstr ""
+msgstr "B<pthread_create>(3), B<pthread_self>(3), B<pthreads>(7)"
 
 #. type: TH
 #: build/C/man3/pthread_exit.3:24
 #, no-wrap
 msgid "PTHREAD_EXIT"
-msgstr ""
+msgstr "PTHREAD_EXIT"
 
 #. type: Plain text
 #: build/C/man3/pthread_exit.3:27
 msgid "pthread_exit - terminate calling thread"
-msgstr ""
+msgstr "pthread_exit - 呼び出したスレッドを終了する"
 
 #. type: Plain text
 #: build/C/man3/pthread_exit.3:32
 #, no-wrap
 msgid "B<void pthread_exit(void *>I<retval>B<);>\n"
-msgstr ""
+msgstr "B<void pthread_exit(void *>I<retval>B<);>\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_exit.3:42
+#: build/C/man3/pthread_exit.3:43
 msgid ""
 "The B<pthread_exit>()  function terminates the calling thread and returns a "
 "value via I<retval> that (if the thread is joinable)  is available to "
 "another thread in the same process that calls B<pthread_join>(3)."
 msgstr ""
+"B<pthread_exit>() 関数は、呼び出したスレッドを終了し、\n"
+"I<retval> 経由で値を返す。\n"
+"この値は (そのスレッドが join 可能な場合に) B<pthread_join>(3) を\n"
+"呼び出した同じプロセス内の別のスレッドが参照できる値と同じである。"
 
 #. type: Plain text
-#: build/C/man3/pthread_exit.3:52
+#: build/C/man3/pthread_exit.3:53
 msgid ""
 "Any clean-up handlers established by B<pthread_cleanup_push>(3)  that have "
 "not yet been popped, are popped (in the reverse of the order in which they "
@@ -4379,58 +5460,79 @@ msgid ""
 "then, after the clean-up handlers have been executed, the corresponding "
 "destructor functions are called, in an unspecified order."
 msgstr ""
+"B<pthread_cleanup_push>(3) で設定されたクリーンアップハンドラのうち、\n"
+"まだ pop (取り出されていない) ハンドラを (push されたのと逆の順序で)\n"
+"取り出して実行する。そのスレッドがスレッド固有のデータを持っている\n"
+"場合は、クリーンアップハンドラが実行された後に、スレッド固有のデータ\n"
+"に対応するデストラクタ (destructor) 関数が呼び出される (呼び出し順序\n"
+"は規定されていない)。"
 
 #. type: Plain text
-#: build/C/man3/pthread_exit.3:59
+#: build/C/man3/pthread_exit.3:60
 msgid ""
 "When a thread terminates, process-shared resources (e.g., mutexes, condition "
 "variables, semaphores, and file descriptors) are not released, and functions "
 "registered using B<atexit>(3)  are not called."
 msgstr ""
+"スレッドが終了する際に、プロセスの共有リソース (例えば、mutex、状態変数\n"
+"(condition variables)、セマフォ、ファイルディスクリプタ)が解放される。\n"
+"B<atexit>(3) を使って登録された関数は呼び出されない。"
 
 #. type: Plain text
-#: build/C/man3/pthread_exit.3:68
+#: build/C/man3/pthread_exit.3:69
 msgid ""
 "After the last thread in a process terminates, the process terminates as by "
 "calling B<exit>(3)  with an exit status of zero; thus, process-shared "
 "resources are released and functions registered using B<atexit>(3)  are "
 "called."
 msgstr ""
+"プロセスの最後のスレッドが終了すると、そのプロセスは、終了ステータス 0\n"
+"で B<exit>(3) を呼び出した場合と全く同じように終了する。したがって、\n"
+"プロセスの共有リソースは解放され、B<atexit>(3) を使って登録された関数\n"
+"が呼び出される。"
 
 #. type: Plain text
-#: build/C/man3/pthread_exit.3:70
+#: build/C/man3/pthread_exit.3:71
 msgid "This function does not return to the caller."
-msgstr ""
+msgstr "この関数は呼び出し側には返らない。"
 
 #. type: Plain text
-#: build/C/man3/pthread_exit.3:79
+#: build/C/man3/pthread_exit.3:80
 msgid ""
 "Performing a return from the start function of any thread other than the "
 "main thread results in an implicit call to B<pthread_exit>(), using the "
 "function's return value as the thread's exit status."
 msgstr ""
+"メインスレッド以外のスレッドの開始関数 (start function) がreturn を\n"
+"行うと、暗黙のうちに B<pthread_exit>() が呼び出され、\n"
+"関数の返り値がスレッドの終了ステータスとして使用される。"
 
 #. type: Plain text
-#: build/C/man3/pthread_exit.3:85
+#: build/C/man3/pthread_exit.3:86
 msgid ""
 "To allow other threads to continue execution, the main thread should "
 "terminate by calling B<pthread_exit>()  rather than B<exit>(3)."
 msgstr ""
+"他のスレッドが実行を継続できるように、メインスレッドは B<exit>(3) では\n"
+"なく B<pthread_exit>() を呼び出して終了すべきである。"
 
 #. type: Plain text
-#: build/C/man3/pthread_exit.3:90
+#: build/C/man3/pthread_exit.3:91
 msgid ""
 "The value pointed to by I<retval> should not be located on the calling "
 "thread's stack, since the contents of that stack are undefined after the "
 "thread terminates."
 msgstr ""
+"I<retval> が指す値は、呼び出したスレッドのスタックに置くべきではない。\n"
+"呼び出したスレッドが終了した後は、そのスタックの内容が不定となるから\n"
+"である。"
 
 #.  Linux 2.6.27
 #.  FIXME . review a later kernel to see if this gets fixed
 #.  http://thread.gmane.org/gmane.linux.kernel/611611
 #.  http://marc.info/?l=linux-kernel&m=122525468300823&w=2
 #. type: Plain text
-#: build/C/man3/pthread_exit.3:102
+#: build/C/man3/pthread_exit.3:103
 msgid ""
 "Currently, there are limitations in the kernel implementation logic for "
 "B<wait>(2)ing on a stopped thread group with a dead thread group leader.  "
@@ -4438,120 +5540,160 @@ msgid ""
 "sent to a foreground process whose thread group leader has already called "
 "B<pthread_exit>()."
 msgstr ""
+"現在のところ、停止 (stop) されたスレッドグループを、すでに終了した\n"
+"(dead) スレッドグループリーダーで B<wait>(2) する場合の、\n"
+"カーネル実装の論理には制限がある。\n"
+"この制限は、すでにスレッドグループリーダーが B<pthread_exit>() を\n"
+"呼び出しているようなフォアグラウンドプロセスにストップシグナルが送信\n"
+"された場合に、端末がロックされてしまう、といった問題として表に見える\n"
+"場合がある。"
 
 #. type: Plain text
-#: build/C/man3/pthread_exit.3:106
+#: build/C/man3/pthread_exit.3:107
 msgid "B<pthread_create>(3), B<pthread_join>(3), B<pthreads>(7)"
-msgstr ""
+msgstr "B<pthread_create>(3), B<pthread_join>(3), B<pthreads>(7)"
 
 #. type: TH
 #: build/C/man3/pthread_getattr_np.3:24
 #, no-wrap
 msgid "PTHREAD_GETATTR_NP"
-msgstr ""
+msgstr "PTHREAD_GETATTR_NP"
 
 #. type: Plain text
 #: build/C/man3/pthread_getattr_np.3:27
 msgid "pthread_getattr_np - get attributes of created thread"
-msgstr ""
+msgstr "pthread_getattr_np - 作成されたスレッドの属性を取得する"
 
 #. type: Plain text
 #: build/C/man3/pthread_getattr_np.3:33
 #, no-wrap
 msgid "B<int pthread_getattr_np(pthread_t >I<thread>B<, pthread_attr_t *>I<attr>B<);>\n"
-msgstr ""
+msgstr "B<int pthread_getattr_np(pthread_t >I<thread>B<, pthread_attr_t *>I<attr>B<);>\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_getattr_np.3:42
+#: build/C/man3/pthread_getattr_np.3:43
 msgid ""
 "The B<pthread_getattr_np>()  function initializes the thread attributes "
 "object referred to by I<attr> so that it contains actual attribute values "
 "describing the running thread I<thread>."
 msgstr ""
+"B<pthread_getattr_np>() 関数は、\n"
+"I<attr> が参照するスレッド属性オブジェクトを初期化し、\n"
+"そのオブジェクトに実行中のスレッド I<thread> の実際の属性値を\n"
+"格納して返す。"
 
 #. type: Plain text
-#: build/C/man3/pthread_getattr_np.3:49
+#: build/C/man3/pthread_getattr_np.3:50
 msgid ""
 "The returned attribute values may differ from the corresponding attribute "
 "values passed in the I<attr> object that was used to create the thread using "
 "B<pthread_create>(3).  In particular, the following attributes may differ:"
 msgstr ""
+"返される属性値は、B<pthread_create>(3) でスレッドを作成する際に\n"
+"使われたI<attr> オブジェクトで渡された属性値と異なる場合がある。\n"
+"特に、以下の属性は異なる場合がある。"
 
 #. type: Plain text
-#: build/C/man3/pthread_getattr_np.3:52
+#: build/C/man3/pthread_getattr_np.3:53
 msgid ""
 "the detach state, since a joinable thread may have detached itself after "
 "creation;"
 msgstr ""
+"detach state. join 可能なスレッドは作成後に自分自身を\n"
+"切り離す (detach する) ことができるからである。"
 
 #. type: Plain text
-#: build/C/man3/pthread_getattr_np.3:55
+#: build/C/man3/pthread_getattr_np.3:56
 msgid ""
 "the stack size, which the implementation may align to a suitable boundary."
 msgstr ""
+"スタックサイズ。\n"
+"スレッドの実装によって適切な境界に揃えられる可能があるためである。"
 
 #. type: Plain text
-#: build/C/man3/pthread_getattr_np.3:60
+#: build/C/man3/pthread_getattr_np.3:61
 msgid ""
 "and the guard size, which the implementation may round upward to a multiple "
 "of the page size, or ignore (i.e., treat as 0), if the application is "
 "allocating its own stack."
 msgstr ""
+"guard size.\n"
+"スレッドの実装によりページサイズの倍数に切り上げられたり、\n"
+"アプリケーションが自分でスタックを割り当てる場合には無視される\n"
+"(0 として扱われる) ことがあるからである。"
 
 #. type: Plain text
-#: build/C/man3/pthread_getattr_np.3:65
+#: build/C/man3/pthread_getattr_np.3:66
 msgid ""
 "Furthermore, if the stack address attribute was not set in the thread "
 "attributes object used to create the thread, then the returned thread "
 "attributes object will report the actual stack address that the "
 "implementation selected for the thread."
 msgstr ""
+"さらに、スレッドを作成する際に使用されたスレッド属性オブジェクトで\n"
+"スタックアドレスが設定されていなかった場合、\n"
+"返されたスレッド属性オブジェクトではスレッドの実装がそのスレッドに\n"
+"割り当てた実際のスタックアドレスが報告される。"
 
 #. type: Plain text
-#: build/C/man3/pthread_getattr_np.3:70
+#: build/C/man3/pthread_getattr_np.3:71
 msgid ""
 "When the thread attributes object returned by B<pthread_getattr_np>()  is no "
 "longer required, it should be destroyed using B<pthread_attr_destroy>(3)."
 msgstr ""
+"B<pthread_getattr_np>() が返したスレッド属性オブジェクトが\n"
+"必要なくなった際には、  B<pthread_attr_destroy>(3) を使って\n"
+"そのオブジェクトを破棄すべきである。"
 
 #. type: Plain text
-#: build/C/man3/pthread_getattr_np.3:73
-#: build/C/man3/pthread_getcpuclockid.3:46
+#: build/C/man3/pthread_getattr_np.3:74
+#: build/C/man3/pthread_getcpuclockid.3:47
 msgid ""
 "On success, this function returns 0; on error, it returns a nonzero error "
 "number."
 msgstr ""
+"成功すると、この関数は 0 を返す。\n"
+"エラーの場合、 0 以外のエラー番号を返す。"
 
 #.  Can happen (but unlikely) while trying to allocate memory for cpuset
 #. type: Plain text
-#: build/C/man3/pthread_getattr_np.3:78
+#: build/C/man3/pthread_getattr_np.3:79
 msgid "Insufficient memory."
-msgstr ""
+msgstr "メモリが十分になかった。"
 
 #. type: Plain text
-#: build/C/man3/pthread_getattr_np.3:93
+#: build/C/man3/pthread_getattr_np.3:94
 msgid ""
 "In addition, if I<thread> refers to the main thread, then "
 "B<pthread_getattr_np>()  can fail because of errors from various underlying "
 "calls: B<fopen>(3), if I</proc/self/maps> can't be opened; and B<getrlimit>"
 "(2), if the B<RLIMIT_STACK> resource limit is not supported."
 msgstr ""
+"さらに、 I<thread> がメインスレッドを参照している場合には、\n"
+"B<pthread_getattr_np>() は内部で行われる様々な呼び出しでの\n"
+"エラーで失敗する可能性がある。\n"
+"I</proc/self/maps> がオープンできない場合には B<fopen>(3)\n"
+"でエラーが発生し、リソース上限 B<RLIMIT_STACK> が\n"
+"サポートされていない場合には B<getrlimit>(2) でエラーが発生する。"
 
 #. type: Plain text
-#: build/C/man3/pthread_getattr_np.3:95
+#: build/C/man3/pthread_getattr_np.3:96
 msgid "This function is available in glibc since version 2.2.3."
-msgstr ""
+msgstr "この関数は glibc バージョン 2.2.3 以降で利用できる。"
 
 #. type: Plain text
-#: build/C/man3/pthread_getattr_np.3:98
+#: build/C/man3/pthread_getattr_np.3:99
 #: build/C/man3/pthread_kill_other_threads_np.3:48
 msgid ""
 "This function is a nonstandard GNU extension; hence the suffix \"_np"
 "\" (nonportable) in the name."
 msgstr ""
+"この関数は非標準の GNU による拡張である。\n"
+"そのため、名前に \"_np\" (nonportable; 移植性がない) という接尾辞が\n"
+"付いている。"
 
 #. type: Plain text
-#: build/C/man3/pthread_getattr_np.3:108
+#: build/C/man3/pthread_getattr_np.3:109
 msgid ""
 "The program below demonstrates the use of B<pthread_getattr_np>().  The "
 "program creates a thread that then uses B<pthread_getattr_np>()  to retrieve "
@@ -4560,16 +5702,25 @@ msgid ""
 "than the default when creating the thread.  The shell sessions below "
 "demonstrate the use of the program."
 msgstr ""
+"以下のプログラムは B<pthread_getattr_np>() の使用例を示したものである。\n"
+"このプログラムは、スレッドを作成し、それから\n"
+"B<pthread_getattr_np>() を使ってそのスレッドの属性 guard size、\n"
+"スタックアドレス、スタックサイズを取得し表示する。\n"
+"コマンドライン引き数での指定で、スレッドを作成する際に\n"
+"上記の属性にデフォルト値以外の値を設定することができる。\n"
+"下記のシェルのセッションはこのプログラムの使用例である。"
 
 #. type: Plain text
-#: build/C/man3/pthread_getattr_np.3:111
+#: build/C/man3/pthread_getattr_np.3:112
 msgid ""
 "In the first run, on an x86-32 system, a thread is created using default "
 "attributes:"
 msgstr ""
+"最初の実行例は、デフォルトの属性でスレッドが作成されている\n"
+"(x86-32 システム上で実行)。"
 
 #. type: Plain text
-#: build/C/man3/pthread_getattr_np.3:121
+#: build/C/man3/pthread_getattr_np.3:122
 #, no-wrap
 msgid ""
 "$B< ulimit -s>      # No stack limit ==E<gt> default stack size is 2MB\n"
@@ -4580,17 +5731,27 @@ msgid ""
 "        Stack address       = 0x40196000 (EOS = 0x40397000)\n"
 "        Stack size          = 0x201000 (2101248) bytes\n"
 msgstr ""
+"$B< ulimit -s>      # No stack limit ==E<gt> default stack size is 2MB\n"
+"unlimited\n"
+"$B< ./a.out>\n"
+"Attributes of created thread:\n"
+"        Guard size          = 4096 bytes\n"
+"        Stack address       = 0x40196000 (EOS = 0x40397000)\n"
+"        Stack size          = 0x201000 (2101248) bytes\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_getattr_np.3:127
+#: build/C/man3/pthread_getattr_np.3:128
 msgid ""
 "In the following run, we see that if a guard size is specified, it is "
 "rounded up to the next multiple of the system page size (4096 bytes on "
 "x86-32):"
 msgstr ""
+"次の実行例では、guard size が指定された場合、\n"
+"guard size はシステムのページサイズの倍数に切り上げられることが分かる\n"
+"(x86-32 ではシステムのページサイズは 4096 バイトである)。"
 
 #. type: Plain text
-#: build/C/man3/pthread_getattr_np.3:135
+#: build/C/man3/pthread_getattr_np.3:136
 #, no-wrap
 msgid ""
 "$B< ./a.out -g 4097>\n"
@@ -4599,9 +5760,14 @@ msgid ""
 "        Stack address       = (nil)\n"
 "        Stack size          = 0x0 (0) bytes\n"
 msgstr ""
+"$B< ./a.out -g 4097>\n"
+"Thread attributes object after initializations:\n"
+"        Guard size          = 4097 bytes\n"
+"        Stack address       = (nil)\n"
+"        Stack size          = 0x0 (0) bytes\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_getattr_np.3:140
+#: build/C/man3/pthread_getattr_np.3:141
 #, no-wrap
 msgid ""
 "Attributes of created thread:\n"
@@ -4609,6 +5775,10 @@ msgid ""
 "        Stack address       = 0x40196000 (EOS = 0x40397000)\n"
 "        Stack size          = 0x201000 (2101248) bytes\n"
 msgstr ""
+"Attributes of created thread:\n"
+"        Guard size          = 8192 bytes\n"
+"        Stack address       = 0x40196000 (EOS = 0x40397000)\n"
+"        Stack size          = 0x201000 (2101248) bytes\n"
 
 #. .in +4n
 #. .nf
@@ -4624,22 +5794,26 @@ msgstr ""
 #. .fi
 #. .in
 #. type: Plain text
-#: build/C/man3/pthread_getattr_np.3:159
+#: build/C/man3/pthread_getattr_np.3:160
 msgid ""
 "In the last run, the program manually allocates a stack for the thread.  In "
 "this case, the guard size attribute is ignored."
 msgstr ""
+"最後の実行例では、プログラムでスレッド用のスタックを手動で割り当てている。\n"
+"この場合には、guard size 属性は無視される。"
 
 #. type: Plain text
-#: build/C/man3/pthread_getattr_np.3:164
+#: build/C/man3/pthread_getattr_np.3:165
 #, no-wrap
 msgid ""
 "$B< ./a.out -g 4096 -s 0x8000 -a>\n"
 "Allocated thread stack at 0x804d000\n"
 msgstr ""
+"$B< ./a.out -g 4096 -s 0x8000 -a>\n"
+"Allocated thread stack at 0x804d000\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_getattr_np.3:169
+#: build/C/man3/pthread_getattr_np.3:170
 #, no-wrap
 msgid ""
 "Thread attributes object after initializations:\n"
@@ -4647,9 +5821,13 @@ msgid ""
 "        Stack address       = 0x804d000 (EOS = 0x8055000)\n"
 "        Stack size          = 0x8000 (32768) bytes\n"
 msgstr ""
+"Thread attributes object after initializations:\n"
+"        Guard size          = 4096 bytes\n"
+"        Stack address       = 0x804d000 (EOS = 0x8055000)\n"
+"        Stack size          = 0x8000 (32768) bytes\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_getattr_np.3:174
+#: build/C/man3/pthread_getattr_np.3:175
 #, no-wrap
 msgid ""
 "Attributes of created thread:\n"
@@ -4657,9 +5835,13 @@ msgid ""
 "        Stack address       = 0x804d000 (EOS = 0x8055000)\n"
 "        Stack size          = 0x8000 (32768) bytes\n"
 msgstr ""
+"Attributes of created thread:\n"
+"        Guard size          = 0 bytes\n"
+"        Stack address       = 0x804d000 (EOS = 0x8055000)\n"
+"        Stack size          = 0x8000 (32768) bytes\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_getattr_np.3:195
+#: build/C/man3/pthread_getattr_np.3:196
 #, no-wrap
 msgid ""
 "static void\n"
@@ -4669,9 +5851,15 @@ msgid ""
 "    size_t stack_size, guard_size;\n"
 "    void *stack_addr;\n"
 msgstr ""
+"static void\n"
+"display_stack_related_attributes(pthread_attr_t *attr, char *prefix)\n"
+"{\n"
+"    int s;\n"
+"    size_t stack_size, guard_size;\n"
+"    void *stack_addr;\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_getattr_np.3:200
+#: build/C/man3/pthread_getattr_np.3:201
 #, no-wrap
 msgid ""
 "    s = pthread_attr_getguardsize(attr, &guard_size);\n"
@@ -4679,9 +5867,13 @@ msgid ""
 "        handle_error_en(s, \"pthread_attr_getguardsize\");\n"
 "    printf(\"%sGuard size          = %d bytes\\en\", prefix, guard_size);\n"
 msgstr ""
+"    s = pthread_attr_getguardsize(attr, &guard_size);\n"
+"    if (s != 0)\n"
+"        handle_error_en(s, \"pthread_attr_getguardsize\");\n"
+"    printf(\"%sGuard size          = %d bytes\\en\", prefix, guard_size);\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_getattr_np.3:211
+#: build/C/man3/pthread_getattr_np.3:212
 #, no-wrap
 msgid ""
 "    s = pthread_attr_getstack(attr, &stack_addr, &stack_size);\n"
@@ -4695,9 +5887,19 @@ msgid ""
 "            prefix, stack_size, stack_size);\n"
 "}\n"
 msgstr ""
+"    s = pthread_attr_getstack(attr, &stack_addr, &stack_size);\n"
+"    if (s != 0)\n"
+"        handle_error_en(s, \"pthread_attr_getstack\");\n"
+"    printf(\"%sStack address       = %p\", prefix, stack_addr);\n"
+"    if (stack_size E<gt> 0)\n"
+"        printf(\" (EOS = %p)\", (char *) stack_addr + stack_size);\n"
+"    printf(\"\\en\");\n"
+"    printf(\"%sStack size          = 0x%x (%d) bytes\\en\",\n"
+"            prefix, stack_size, stack_size);\n"
+"}\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_getattr_np.3:217
+#: build/C/man3/pthread_getattr_np.3:218
 #, no-wrap
 msgid ""
 "static void\n"
@@ -4706,24 +5908,32 @@ msgid ""
 "    int s;\n"
 "    pthread_attr_t attr;\n"
 msgstr ""
+"static void\n"
+"display_thread_attributes(pthread_t thread, char *prefix)\n"
+"{\n"
+"    int s;\n"
+"    pthread_attr_t attr;\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_getattr_np.3:221
+#: build/C/man3/pthread_getattr_np.3:222
 #, no-wrap
 msgid ""
 "    s = pthread_getattr_np(thread, &attr);\n"
 "    if (s != 0)\n"
 "        handle_error_en(s, \"pthread_getattr_np\");\n"
 msgstr ""
+"    s = pthread_getattr_np(thread, &attr);\n"
+"    if (s != 0)\n"
+"        handle_error_en(s, \"pthread_getattr_np\");\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_getattr_np.3:223
+#: build/C/man3/pthread_getattr_np.3:224
 #, no-wrap
 msgid "    display_stack_related_attributes(&attr, prefix);\n"
-msgstr ""
+msgstr "    display_stack_related_attributes(&attr, prefix);\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_getattr_np.3:228
+#: build/C/man3/pthread_getattr_np.3:229
 #, no-wrap
 msgid ""
 "    s = pthread_attr_destroy(&attr);\n"
@@ -4731,9 +5941,13 @@ msgid ""
 "        handle_error_en(s, \"pthread_attr_destroy\");\n"
 "}\n"
 msgstr ""
+"    s = pthread_attr_destroy(&attr);\n"
+"    if (s != 0)\n"
+"        handle_error_en(s, \"pthread_attr_destroy\");\n"
+"}\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_getattr_np.3:234
+#: build/C/man3/pthread_getattr_np.3:235
 #, no-wrap
 msgid ""
 "static void *           /* Start function for thread we create */\n"
@@ -4742,9 +5956,14 @@ msgid ""
 "    printf(\"Attributes of created thread:\\en\");\n"
 "    display_thread_attributes(pthread_self(), \"\\et\");\n"
 msgstr ""
+"static void *           /* Start function for thread we create */\n"
+"thread_start(void *arg)\n"
+"{\n"
+"    printf(\"Attributes of created thread:\\en\");\n"
+"    display_thread_attributes(pthread_self(), \"\\et\");\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_getattr_np.3:248
+#: build/C/man3/pthread_getattr_np.3:249
 #, no-wrap
 msgid ""
 "static void\n"
@@ -4758,9 +5977,19 @@ msgid ""
 "    exit(EXIT_FAILURE);\n"
 "}\n"
 msgstr ""
+"static void\n"
+"usage(char *pname, char *msg)\n"
+"{\n"
+"    if (msg != NULL)\n"
+"        fputs(msg, stderr);\n"
+"    fprintf(stderr, \"Usage: %s [-s stack-size [-a]]\"\n"
+"            \" [-g guard-size]\\en\", pname);\n"
+"    fprintf(stderr, \"\\et\\et-a means program should allocate stack\\en\");\n"
+"    exit(EXIT_FAILURE);\n"
+"}\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_getattr_np.3:261
+#: build/C/man3/pthread_getattr_np.3:262
 #, no-wrap
 msgid ""
 "static pthread_attr_t *   /* Get thread attributes from command line */\n"
@@ -4776,9 +6005,21 @@ msgid ""
 "    stack_size = -1;\n"
 "    guard_size = -1;\n"
 msgstr ""
+"static pthread_attr_t *   /* Get thread attributes from command line */\n"
+"get_thread_attributes_from_cl(int argc, char *argv[],\n"
+"                              pthread_attr_t *attrp)\n"
+"{\n"
+"    int s, opt, allocate_stack;\n"
+"    long stack_size, guard_size;\n"
+"            void *stack_addr;\n"
+"    pthread_attr_t *ret_attrp = NULL;   /* Set to attrp if we initialize\n"
+"                                           a thread attributes object */\n"
+"    allocate_stack = 0;\n"
+"    stack_size = -1;\n"
+"    guard_size = -1;\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_getattr_np.3:270
+#: build/C/man3/pthread_getattr_np.3:271
 #, no-wrap
 msgid ""
 "    while ((opt = getopt(argc, argv, \"ag:s:\")) != -1) {\n"
@@ -4790,33 +6031,47 @@ msgid ""
 "        }\n"
 "    }\n"
 msgstr ""
+"    while ((opt = getopt(argc, argv, \"ag:s:\")) != -1) {\n"
+"        switch (opt) {\n"
+"        case \\(aqa\\(aq:   allocate_stack = 1;                     break;\n"
+"        case \\(aqg\\(aq:   guard_size = strtoul(optarg, NULL, 0);  break;\n"
+"        case \\(aqs\\(aq:   stack_size = strtoul(optarg, NULL, 0);  break;\n"
+"        default:    usage(argv[0], NULL);\n"
+"        }\n"
+"    }\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_getattr_np.3:273
+#: build/C/man3/pthread_getattr_np.3:274
 #, no-wrap
 msgid ""
 "    if (allocate_stack && stack_size == -1)\n"
 "        usage(argv[0], \"Specifying -a without -s makes no sense\\en\");\n"
 msgstr ""
+"    if (allocate_stack && stack_size == -1)\n"
+"        usage(argv[0], \"Specifying -a without -s makes no sense\\en\");\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_getattr_np.3:276
+#: build/C/man3/pthread_getattr_np.3:277
 #, no-wrap
 msgid ""
 "    if (argc E<gt> optind)\n"
 "        usage(argv[0], \"Extraneous command-line arguments\\en\");\n"
 msgstr ""
+"    if (argc E<gt> optind)\n"
+"        usage(argv[0], \"Extraneous command-line arguments\\en\");\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_getattr_np.3:279
+#: build/C/man3/pthread_getattr_np.3:280
 #, no-wrap
 msgid ""
 "    if (stack_size E<gt>= 0 || guard_size E<gt> 0) {\n"
 "        ret_attrp = attrp;\n"
 msgstr ""
+"    if (stack_size E<gt>= 0 || guard_size E<gt> 0) {\n"
+"        ret_attrp = attrp;\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_getattr_np.3:284
+#: build/C/man3/pthread_getattr_np.3:285
 #, no-wrap
 msgid ""
 "        s = pthread_attr_init(attrp);\n"
@@ -4824,9 +6079,13 @@ msgid ""
 "            handle_error_en(s, \"pthread_attr_init\");\n"
 "    }\n"
 msgstr ""
+"        s = pthread_attr_init(attrp);\n"
+"        if (s != 0)\n"
+"            handle_error_en(s, \"pthread_attr_init\");\n"
+"    }\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_getattr_np.3:296
+#: build/C/man3/pthread_getattr_np.3:297
 #, no-wrap
 msgid ""
 "    if (stack_size E<gt>= 0) {\n"
@@ -4841,9 +6100,20 @@ msgid ""
 "                handle_error_en(s, \"posix_memalign\");\n"
 "            printf(\"Allocated thread stack at %p\\en\\en\", stack_addr);\n"
 msgstr ""
+"    if (stack_size E<gt>= 0) {\n"
+"        if (!allocate_stack) {\n"
+"            s = pthread_attr_setstacksize(attrp, stack_size);\n"
+"            if (s != 0)\n"
+"                handle_error_en(s, \"pthread_attr_setstacksize\");\n"
+"        } else {\n"
+"            s = posix_memalign(&stack_addr, sysconf(_SC_PAGESIZE),\n"
+"                               stack_size);\n"
+"            if (s != 0)\n"
+"                handle_error_en(s, \"posix_memalign\");\n"
+"            printf(\"Allocated thread stack at %p\\en\\en\", stack_addr);\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_getattr_np.3:302
+#: build/C/man3/pthread_getattr_np.3:303
 #, no-wrap
 msgid ""
 "            s = pthread_attr_setstack(attrp, stack_addr, stack_size);\n"
@@ -4852,9 +6122,14 @@ msgid ""
 "        }\n"
 "    }\n"
 msgstr ""
+"            s = pthread_attr_setstack(attrp, stack_addr, stack_size);\n"
+"            if (s != 0)\n"
+"                handle_error_en(s, \"pthread_attr_setstacksize\");\n"
+"        }\n"
+"    }\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_getattr_np.3:308
+#: build/C/man3/pthread_getattr_np.3:309
 #, no-wrap
 msgid ""
 "    if (guard_size E<gt>= 0) {\n"
@@ -4863,19 +6138,35 @@ msgid ""
 "            handle_error_en(s, \"pthread_attr_setstacksize\");\n"
 "    }\n"
 msgstr ""
+"    if (guard_size E<gt>= 0) {\n"
+"        s = pthread_attr_setguardsize(attrp, guard_size);\n"
+"        if (s != 0)\n"
+"            handle_error_en(s, \"pthread_attr_setstacksize\");\n"
+"    }\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_getattr_np.3:311
+#: build/C/man3/pthread_getattr_np.3:312
 #, no-wrap
 msgid ""
 "    return ret_attrp;\n"
 "}\n"
 msgstr ""
-
-#. type: Plain text
-#: build/C/man3/pthread_getattr_np.3:320
-#, no-wrap
-msgid ""
+"    return ret_attrp;\n"
+"}\n"
+
+#. type: Plain text
+#: build/C/man3/pthread_getattr_np.3:321
+#, no-wrap
+msgid ""
+"int\n"
+"main(int argc, char *argv[])\n"
+"{\n"
+"    int s;\n"
+"    pthread_t thr;\n"
+"    pthread_attr_t attr;\n"
+"    pthread_attr_t *attrp = NULL;    /* Set to &attr if we initialize\n"
+"                                        a thread attributes object */\n"
+msgstr ""
 "int\n"
 "main(int argc, char *argv[])\n"
 "{\n"
@@ -4884,16 +6175,15 @@ msgid ""
 "    pthread_attr_t attr;\n"
 "    pthread_attr_t *attrp = NULL;    /* Set to &attr if we initialize\n"
 "                                        a thread attributes object */\n"
-msgstr ""
 
 #. type: Plain text
-#: build/C/man3/pthread_getattr_np.3:322
+#: build/C/man3/pthread_getattr_np.3:323
 #, no-wrap
 msgid "    attrp = get_thread_attributes_from_cl(argc, argv, &attr);\n"
-msgstr ""
+msgstr "    attrp = get_thread_attributes_from_cl(argc, argv, &attr);\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_getattr_np.3:328
+#: build/C/man3/pthread_getattr_np.3:329
 #, no-wrap
 msgid ""
 "    if (attrp != NULL) {\n"
@@ -4902,9 +6192,14 @@ msgid ""
 "        printf(\"\\en\");\n"
 "    }\n"
 msgstr ""
+"    if (attrp != NULL) {\n"
+"        printf(\"Thread attributes object after initializations:\\en\");\n"
+"        display_stack_related_attributes(attrp, \"\\et\");\n"
+"        printf(\"\\en\");\n"
+"    }\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_getattr_np.3:356
+#: build/C/man3/pthread_getattr_np.3:357
 msgid ""
 "B<pthread_attr_getaffinity_np>(3), B<pthread_attr_getdetachstate>(3), "
 "B<pthread_attr_getguardsize>(3), B<pthread_attr_getinheritsched>(3), "
@@ -4913,23 +6208,29 @@ msgid ""
 "B<pthread_attr_getstackaddr>(3), B<pthread_attr_getstacksize>(3), "
 "B<pthread_attr_init>(3), B<pthread_create>(3), B<pthreads>(7)"
 msgstr ""
+"B<pthread_attr_getaffinity_np>(3), B<pthread_attr_getdetachstate>(3), "
+"B<pthread_attr_getguardsize>(3), B<pthread_attr_getinheritsched>(3), "
+"B<pthread_attr_getschedparam>(3), B<pthread_attr_getschedpolicy>(3), "
+"B<pthread_attr_getscope>(3), B<pthread_attr_getstack>(3), "
+"B<pthread_attr_getstackaddr>(3), B<pthread_attr_getstacksize>(3), "
+"B<pthread_attr_init>(3), B<pthread_create>(3), B<pthreads>(7)"
 
 #. type: TH
 #: build/C/man3/pthread_getcpuclockid.3:24
 #, no-wrap
 msgid "PTHREAD_GETCPUCLOCKID"
-msgstr ""
+msgstr "PTHREAD_GETCPUCLOCKID"
 
 #. type: TH
 #: build/C/man3/pthread_getcpuclockid.3:24
 #, no-wrap
 msgid "2009-02-08"
-msgstr ""
+msgstr "2009-02-08"
 
 #. type: Plain text
 #: build/C/man3/pthread_getcpuclockid.3:27
 msgid "pthread_getcpuclockid - retrieve ID of a thread's CPU time clock"
-msgstr ""
+msgstr "pthread_getcpuclockid - スレッドの CPU 時間時計の ID を取得する"
 
 #. type: Plain text
 #: build/C/man3/pthread_getcpuclockid.3:31
@@ -4938,61 +6239,74 @@ msgid ""
 "B<#include E<lt>pthread.hE<gt>>\n"
 "B<#include E<lt>time.hE<gt>>\n"
 msgstr ""
+"B<#include E<lt>pthread.hE<gt>>\n"
+"B<#include E<lt>time.hE<gt>>\n"
 
 #. type: Plain text
 #: build/C/man3/pthread_getcpuclockid.3:33
 #, no-wrap
 msgid "B<int pthread_getcpuclockid(pthread_t >I<thread>B<, clockid_t *>I<clock_id);>\n"
-msgstr ""
+msgstr "B<int pthread_getcpuclockid(pthread_t >I<thread>B<, clockid_t *>I<clock_id);>\n"
 
 #.  The clockid is constructed as follows:
 #.  *clockid = CLOCK_THREAD_CPUTIME_ID | (pd->tid << CLOCK_IDFIELD_SIZE)
 #.  where CLOCK_IDFIELD_SIZE is 3.
 #. type: Plain text
-#: build/C/man3/pthread_getcpuclockid.3:43
+#: build/C/man3/pthread_getcpuclockid.3:44
 msgid ""
 "The B<pthread_getcpuclockid>()  function returns the clock ID for the CPU "
 "time clock of the thread I<thread>."
 msgstr ""
+"B<pthread_getcpuclockid>() 関数は、\n"
+"スレッド I<thread> の CPU 時間時計のクロック ID を返す。"
 
 #. type: TP
-#: build/C/man3/pthread_getcpuclockid.3:47
+#: build/C/man3/pthread_getcpuclockid.3:48
 #, no-wrap
 msgid "B<ENOENT>"
-msgstr ""
+msgstr "B<ENOENT>"
 
 #.  CLOCK_THREAD_CPUTIME_ID not defined
 #.  Looking at nptl/pthread_getcpuclockid.c an ERANGE error would
 #.  be possible if kernel thread IDs took more than 29 bits (which
 #.  they currently cannot).
 #. type: Plain text
-#: build/C/man3/pthread_getcpuclockid.3:55
+#: build/C/man3/pthread_getcpuclockid.3:56
 msgid "Per-thread CPU time clocks are not supported by the system."
-msgstr ""
+msgstr "スレッド単位の CPU 時間時計はこのシステムではサポートされていない。"
 
 #. type: Plain text
-#: build/C/man3/pthread_getcpuclockid.3:62
+#: build/C/man3/pthread_getcpuclockid.3:63
 msgid "This function is available in glibc since version 2.2."
-msgstr ""
+msgstr "この関数は glibc バージョン 2.2 以降で利用できる。"
 
 #. type: Plain text
-#: build/C/man3/pthread_getcpuclockid.3:75
+#: build/C/man3/pthread_getcpuclockid.3:76
 msgid ""
 "When I<thread> refers to the calling thread, this function returns an "
 "identifier that refers to the same clock manipulated by B<clock_gettime>(2)  "
 "and B<clock_settime>(2)  when given the clock ID B<CLOCK_THREAD_CPUTIME_ID>."
 msgstr ""
+"I<thread> が呼び出したスレッドを参照している場合、\n"
+"クロック ID B<CLOCK_THREAD_CPUTIME_ID> が指定されていれば、\n"
+"B<clock_gettime>(2) と B<clock_settime>(2) が操作するのと同じ時計\n"
+"を参照する ID が返される。"
 
 #. type: Plain text
-#: build/C/man3/pthread_getcpuclockid.3:81
+#: build/C/man3/pthread_getcpuclockid.3:82
 msgid ""
 "The program below creates a thread and then uses B<clock_gettime>(2)  to "
 "retrieve the total process CPU time, and the per-thread CPU time consumed by "
 "the two threads.  The following shell session shows an example run:"
 msgstr ""
+"以下のプログラムは、スレッドを作成し、それから\n"
+"B<clock_gettime>(2) を使ってプロセス全体の CPU 時間を取得し、\n"
+"B<pthread_getcpuclockid>(3) を使って 2 つのスレッドが消費した\n"
+"スレッド毎の CPU 時間を取得する。\n"
+"下記のシェルのセッションは実行例である。"
 
 #. type: Plain text
-#: build/C/man3/pthread_getcpuclockid.3:90
+#: build/C/man3/pthread_getcpuclockid.3:91
 #, no-wrap
 msgid ""
 "$ B<./a.out>\n"
@@ -5003,15 +6317,22 @@ msgid ""
 "Main thread CPU time:      0.376\n"
 "Subthread CPU time:        0.992\n"
 msgstr ""
+"$ B<./a.out>\n"
+"Main thread sleeping\n"
+"Subthread starting infinite loop\n"
+"Main thread consuming some CPU time...\n"
+"Process total CPU time:    1.368\n"
+"Main thread CPU time:      0.376\n"
+"Subthread CPU time:        0.992\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_getcpuclockid.3:96
+#: build/C/man3/pthread_getcpuclockid.3:97
 #, no-wrap
 msgid "/* Link with \"-lrt\" */\n"
-msgstr ""
+msgstr "/* \"-lrt\" でリンクする */\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_getcpuclockid.3:104
+#: build/C/man3/pthread_getcpuclockid.3:105
 #, no-wrap
 msgid ""
 "#include E<lt>time.hE<gt>\n"
@@ -5022,9 +6343,16 @@ msgid ""
 "#include E<lt>string.hE<gt>\n"
 "#include E<lt>errno.hE<gt>\n"
 msgstr ""
+"#include E<lt>time.hE<gt>\n"
+"#include E<lt>stdio.hE<gt>\n"
+"#include E<lt>stdlib.hE<gt>\n"
+"#include E<lt>unistd.hE<gt>\n"
+"#include E<lt>pthread.hE<gt>\n"
+"#include E<lt>string.hE<gt>\n"
+"#include E<lt>errno.hE<gt>\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_getcpuclockid.3:118
+#: build/C/man3/pthread_getcpuclockid.3:119
 #, no-wrap
 msgid ""
 "static void *\n"
@@ -5035,9 +6363,16 @@ msgid ""
 "        continue;\n"
 "}\n"
 msgstr ""
+"static void *\n"
+"thread_start(void *arg)\n"
+"{\n"
+"    printf(\"Subthread starting infinite loop\\en\");\n"
+"    for (;;)\n"
+"        continue;\n"
+"}\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_getcpuclockid.3:123
+#: build/C/man3/pthread_getcpuclockid.3:124
 #, no-wrap
 msgid ""
 "static void\n"
@@ -5045,9 +6380,13 @@ msgid ""
 "{\n"
 "    struct timespec ts;\n"
 msgstr ""
+"static void\n"
+"pclock(char *msg, clockid_t cid)\n"
+"{\n"
+"    struct timespec ts;\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_getcpuclockid.3:129
+#: build/C/man3/pthread_getcpuclockid.3:130
 #, no-wrap
 msgid ""
 "    printf(\"%s\", msg);\n"
@@ -5056,9 +6395,14 @@ msgid ""
 "    printf(\"%4ld.%03ld\\en\", ts.tv_sec, ts.tv_nsec / 1000000);\n"
 "}\n"
 msgstr ""
+"    printf(\"%s\", msg);\n"
+"    if (clock_gettime(cid, &ts) == -1)\n"
+"        handle_error(\"clock_gettime\");\n"
+"    printf(\"%4ld.%03ld\\en\", ts.tv_sec, ts.tv_nsec / 1000000);\n"
+"}\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_getcpuclockid.3:136
+#: build/C/man3/pthread_getcpuclockid.3:137
 #, no-wrap
 msgid ""
 "int\n"
@@ -5068,41 +6412,55 @@ msgid ""
 "    clockid_t cid;\n"
 "    int j, s;\n"
 msgstr ""
+"int\n"
+"main(int argc, char *argv[])\n"
+"{\n"
+"    pthread_t thread;\n"
+"    clockid_t cid;\n"
+"    int j, s;\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_getcpuclockid.3:140
+#: build/C/man3/pthread_getcpuclockid.3:141
 #, no-wrap
 msgid ""
 "    s = pthread_create(&thread, NULL, thread_start, NULL);\n"
 "    if (s != 0)\n"
 "        handle_error_en(s, \"pthread_create\");\n"
 msgstr ""
+"    s = pthread_create(&thread, NULL, thread_start, NULL);\n"
+"    if (s != 0)\n"
+"        handle_error_en(s, \"pthread_create\");\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_getcpuclockid.3:143
+#: build/C/man3/pthread_getcpuclockid.3:144
 #, no-wrap
 msgid ""
 "    printf(\"Main thread sleeping\\en\");\n"
 "    sleep(1);\n"
 msgstr ""
+"    printf(\"Main thread sleeping\\en\");\n"
+"    sleep(1);\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_getcpuclockid.3:147
+#: build/C/man3/pthread_getcpuclockid.3:148
 #, no-wrap
 msgid ""
 "    printf(\"Main thread consuming some CPU time...\\en\");\n"
 "    for (j = 0; j E<lt> 2000000; j++)\n"
 "        getppid();\n"
 msgstr ""
+"    printf(\"Main thread consuming some CPU time...\\en\");\n"
+"    for (j = 0; j E<lt> 2000000; j++)\n"
+"        getppid();\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_getcpuclockid.3:149
+#: build/C/man3/pthread_getcpuclockid.3:150
 #, no-wrap
 msgid "    pclock(\"Process total CPU time: \", CLOCK_PROCESS_CPUTIME_ID);\n"
-msgstr ""
+msgstr "    pclock(\"Process total CPU time: \", CLOCK_PROCESS_CPUTIME_ID);\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_getcpuclockid.3:154
+#: build/C/man3/pthread_getcpuclockid.3:155
 #, no-wrap
 msgid ""
 "    s = pthread_getcpuclockid(pthread_self(), &cid);\n"
@@ -5110,17 +6468,23 @@ msgid ""
 "        handle_error_en(s, \"pthread_getcpuclockid\");\n"
 "    pclock(\"Main thread CPU time:   \", cid);\n"
 msgstr ""
+"    s = pthread_getcpuclockid(pthread_self(), &cid);\n"
+"    if (s != 0)\n"
+"        handle_error_en(s, \"pthread_getcpuclockid\");\n"
+"    pclock(\"Main thread CPU time:   \", cid);\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_getcpuclockid.3:157
+#: build/C/man3/pthread_getcpuclockid.3:158
 #, no-wrap
 msgid ""
 "    /* The preceding 4 lines of code could have been replaced by:\n"
 "       pclock(\"Main thread CPU time:   \", CLOCK_THREAD_CPUTIME_ID); */\n"
 msgstr ""
+"    /* The preceding 4 lines of code could have been replaced by:\n"
+"       pclock(\"Main thread CPU time:   \", CLOCK_THREAD_CPUTIME_ID); */\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_getcpuclockid.3:162
+#: build/C/man3/pthread_getcpuclockid.3:163
 #, no-wrap
 msgid ""
 "    s = pthread_getcpuclockid(thread, &cid);\n"
@@ -5128,38 +6492,46 @@ msgid ""
 "        handle_error_en(s, \"pthread_getcpuclockid\");\n"
 "    pclock(\"Subthread CPU time: 1    \", cid);\n"
 msgstr ""
+"    s = pthread_getcpuclockid(thread, &cid);\n"
+"    if (s != 0)\n"
+"        handle_error_en(s, \"pthread_getcpuclockid\");\n"
+"    pclock(\"Subthread CPU time: 1    \", cid);\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_getcpuclockid.3:165
+#: build/C/man3/pthread_getcpuclockid.3:166
 #, no-wrap
 msgid ""
 "    exit(EXIT_SUCCESS);         /* Terminates both threads */\n"
 "}\n"
 msgstr ""
+"    exit(EXIT_SUCCESS);         /* Terminates both threads */\n"
+"}\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_getcpuclockid.3:174
+#: build/C/man3/pthread_getcpuclockid.3:175
 msgid ""
 "B<clock_gettime>(2), B<clock_settime>(2), B<timer_create>(2), "
 "B<clock_getcpuclockid>(3), B<pthread_self>(3), B<pthreads>(7), B<time>(7)"
 msgstr ""
+"B<clock_gettime>(2), B<clock_settime>(2), B<timer_create>(2), "
+"B<clock_getcpuclockid>(3), B<pthread_self>(3), B<pthreads>(7), B<time>(7)"
 
 #. type: TH
 #: build/C/man3/pthread_join.3:24
 #, no-wrap
 msgid "PTHREAD_JOIN"
-msgstr ""
+msgstr "PTHREAD_JOIN"
 
 #. type: Plain text
 #: build/C/man3/pthread_join.3:27
 msgid "pthread_join - join with a terminated thread"
-msgstr ""
+msgstr "pthread_join - 終了したスレッドを join する"
 
 #. type: Plain text
 #: build/C/man3/pthread_join.3:32
 #, no-wrap
 msgid "B<int pthread_join(pthread_t >I<thread>B<, void **>I<retval>B<);>\n"
-msgstr ""
+msgstr "B<int pthread_join(pthread_t >I<thread>B<, void **>I<retval>B<);>\n"
 
 #. type: Plain text
 #: build/C/man3/pthread_join.3:47
@@ -5168,6 +6540,10 @@ msgid ""
 "to terminate.  If that thread has already terminated, then B<pthread_join>"
 "()  returns immediately.  The thread specified by I<thread> must be joinable."
 msgstr ""
+"B<pthread_join>() 関数は、I<thread> で指定されたスレッドが\n"
+"終了するのを待つ。そのスレッドがすでに終了している場合、\n"
+"B<pthread_join>() はすぐに返る。\n"
+"I<thread> で指定されたスレッドは join 可能でなければならない。"
 
 #. type: Plain text
 #: build/C/man3/pthread_join.3:61
@@ -5177,6 +6553,10 @@ msgid ""
 "B<pthread_exit>(3))  into the location pointed to by I<*retval>.  If the "
 "target thread was canceled, then B<PTHREAD_CANCELED> is placed in I<*retval>."
 msgstr ""
+"I<retval> が NULL でない場合、 B<pthread_join>() は対象スレッドの終了\n"
+"ステータス (すなわち、対象スレッドが B<pthread_exit>(3) に渡した値) を\n"
+"I<*retval> が指す場所にコピーする。対象スレッドがキャンセルされた場合、\n"
+"I<*retval> には B<PTHREAD_CANCELED> が格納される。"
 
 #. type: Plain text
 #: build/C/man3/pthread_join.3:68
@@ -5186,6 +6566,10 @@ msgid ""
 "canceled, then the target thread will remain joinable (i.e., it will not be "
 "detached)."
 msgstr ""
+"複数のスレッドが同時に同じスレッドを join しようとした場合、その結果\n"
+"は不定である。B<pthread_join>() を呼び出しているスレッドがキャンセル\n"
+"された場合、対象スレッドは join 可能のままとなる (detached 状態には\n"
+"ならない)。"
 
 #. type: Plain text
 #: build/C/man3/pthread_join.3:73
@@ -5193,12 +6577,14 @@ msgid ""
 "On success, B<pthread_join>()  returns 0; on error, it returns an error "
 "number."
 msgstr ""
+"成功すると、 B<pthread_join>() は 0 を返す。\n"
+"エラーの場合、エラー番号を返す。"
 
 #. type: TP
 #: build/C/man3/pthread_join.3:74
 #, no-wrap
 msgid "B<EDEADLK>"
-msgstr ""
+msgstr "B<EDEADLK>"
 
 #.  The following verified by testing on glibc 2.8/NPTL:
 #.  The following verified by testing on glibc 2.8/NPTL:
@@ -5208,12 +6594,14 @@ msgid ""
 "A deadlock was detected (e.g., two threads tried to join with each other); "
 "or I<thread> specifies the calling thread."
 msgstr ""
+"デッドロックが検出された (例えば、二つのスレッドが互いに join しようと\n"
+"した場合)、または I<thread> に呼び出したスレッドが指定されている。"
 
 #.  POSIX.1-2001 does not specify this error case.
 #. type: Plain text
 #: build/C/man3/pthread_join.3:91
 msgid "Another thread is already waiting to join with this thread."
-msgstr ""
+msgstr "別のスレッドがすでにこのスレッドの join 待ちである。"
 
 #. type: Plain text
 #: build/C/man3/pthread_join.3:102
@@ -5221,13 +6609,15 @@ msgid ""
 "After a successful call to B<pthread_join>(), the caller is guaranteed that "
 "the target thread has terminated."
 msgstr ""
+"B<pthread_join>() の呼び出しが成功した場合は、\n"
+"呼び出し側には、対象スレッドが終了していることが保証される。"
 
 #. type: Plain text
 #: build/C/man3/pthread_join.3:105
 msgid ""
 "Joining with a thread that has previously been joined results in undefined "
 "behavior."
-msgstr ""
+msgstr "すでに join されたスレッドを join した場合の結果は不定である。"
 
 #. type: Plain text
 #: build/C/man3/pthread_join.3:113
@@ -5238,6 +6628,12 @@ msgid ""
 "have accumulated, it will no longer be possible to create new threads (or "
 "processes)."
 msgstr ""
+"join 可能なスレッド (detached 状態でないスレッド) の join に失敗した場合、\n"
+"\"ゾンビスレッド (zombie thread)\" が生成される。\n"
+"各ゾンビスレッドはシステムリソースをいくらかは消費し、\n"
+"ゾンビスレッドがたくさん生成されてしまうと、\n"
+"新しいスレッド (やプロセス) がそれ以上作成できなくなってしまうので、\n"
+"このようなことが起きるのは避けること。"
 
 #. type: Plain text
 #: build/C/man3/pthread_join.3:119
@@ -5246,6 +6642,10 @@ msgid ""
 "\"join with any terminated thread\".  If you believe you need this "
 "functionality, you probably need to rethink your application design."
 msgstr ""
+"pthreads には、 I<waitpid(-1,\\ &status,\\ 0)>、つまり\n"
+"\"終了されたスレッドのどれかを join する\" といった機能はない。\n"
+"この機能が必要だと思うような場合には、おそらく\n"
+"自分のアプリケーションの設計を考え直す必要があるだろう。"
 
 #. type: Plain text
 #: build/C/man3/pthread_join.3:122
@@ -5253,6 +6653,8 @@ msgid ""
 "All of the threads in a process are peers: any thread can join with any "
 "other thread in the process."
 msgstr ""
+"プロセス内の全てのスレッドは対等であり、\n"
+"どのスレッドでもプロセス内の他のスレッドを join できる。"
 
 #. type: Plain text
 #: build/C/man3/pthread_join.3:132
@@ -5260,35 +6662,37 @@ msgid ""
 "B<pthread_cancel>(3), B<pthread_create>(3), B<pthread_detach>(3), "
 "B<pthread_exit>(3), B<pthread_tryjoin_np>(3), B<pthreads>(7)"
 msgstr ""
+"B<pthread_cancel>(3), B<pthread_create>(3), B<pthread_detach>(3), "
+"B<pthread_exit>(3), B<pthread_tryjoin_np>(3), B<pthreads>(7)"
 
 #. type: TH
 #: build/C/man3/pthread_kill.3:24
 #, no-wrap
 msgid "PTHREAD_KILL"
-msgstr ""
+msgstr "PTHREAD_KILL"
 
 #. type: TH
 #: build/C/man3/pthread_kill.3:24
 #, no-wrap
 msgid "2009-01-28"
-msgstr ""
+msgstr "2009-01-28"
 
 #. type: Plain text
 #: build/C/man3/pthread_kill.3:27
 msgid "pthread_kill - send a signal to a thread"
-msgstr ""
+msgstr "pthread_kill - スレッドにシグナルを送信する"
 
 #. type: Plain text
 #: build/C/man3/pthread_kill.3:30 build/C/man3/pthread_sigmask.3:30
 #, no-wrap
 msgid "B<#include E<lt>signal.hE<gt>>\n"
-msgstr ""
+msgstr "B<#include E<lt>signal.hE<gt>>\n"
 
 #. type: Plain text
 #: build/C/man3/pthread_kill.3:32
 #, no-wrap
 msgid "B<int pthread_kill(pthread_t >I<thread>B<, int >I<sig>B<);>\n"
-msgstr ""
+msgstr "B<int pthread_kill(pthread_t >I<thread>B<, int >I<sig>B<);>\n"
 
 #. type: Plain text
 #: build/C/man3/pthread_kill.3:45
@@ -5297,6 +6701,9 @@ msgid ""
 "another thread in the same process as the caller.  The signal is "
 "asynchronously directed to I<thread>."
 msgstr ""
+"B<pthread_kill>() 関数は、呼び出したスレッドと同じプロセスの\n"
+"別のスレッド I<thread> にシグナル I<sig> を送信する。\n"
+"シグナルは非同期に I<thread> へ直接送られる。"
 
 #. type: Plain text
 #: build/C/man3/pthread_kill.3:50
@@ -5304,6 +6711,9 @@ msgid ""
 "If I<sig> is 0, then no signal is sent, but error checking is still "
 "performed; this can be used to check for the existence of a thread ID."
 msgstr ""
+"I<sig> が 0 の場合、シグナルは送信されないが、\n"
+"エラーチェックだけは実行される。\n"
+"これを使うと、スレッド ID が存在するかの確認を行うことができる。"
 
 #. type: Plain text
 #: build/C/man3/pthread_kill.3:55
@@ -5311,11 +6721,13 @@ msgid ""
 "On success, B<pthread_kill>()  returns 0; on error, it returns an error "
 "number, and no signal is sent."
 msgstr ""
+"成功すると、 B<pthread_kill>() は 0 を返す。\n"
+"エラーの場合、エラー番号を返し、シグナルの送信は行わない。"
 
 #. type: Plain text
 #: build/C/man3/pthread_kill.3:59
 msgid "An invalid signal was specified."
-msgstr ""
+msgstr "無効なシグナルが指定された。"
 
 #. type: Plain text
 #: build/C/man3/pthread_kill.3:73
@@ -5325,6 +6737,11 @@ msgid ""
 "the signal is \"stop\", \"continue\", or \"terminate\", this action will "
 "affect the whole process."
 msgstr ""
+"シグナルの配送はプロセス全体で行われる。\n"
+"シグナルハンドラが設定されている場合、\n"
+"そのハンドラがスレッド I<thread> で起動されるが、\n"
+"シグナルの配送が \"stop\", \"continue\", \"terminate\" のいずれかの場合、\n"
+"シグナルに対するアクションはプロセス全体に影響がある。"
 
 #. type: Plain text
 #: build/C/man3/pthread_kill.3:82
@@ -5332,29 +6749,31 @@ msgid ""
 "B<kill>(2)  B<sigaction>(2), B<sigpending>(2), B<pthread_self>(3), "
 "B<pthread_sigmask>(3), B<raise>(3), B<pthreads>(7), B<signal>(7)"
 msgstr ""
+"B<kill>(2)  B<sigaction>(2), B<sigpending>(2), B<pthread_self>(3), "
+"B<pthread_sigmask>(3), B<raise>(3), B<pthreads>(7), B<signal>(7)"
 
 #. type: TH
 #: build/C/man3/pthread_kill_other_threads_np.3:24
 #, no-wrap
 msgid "PTHREAD_KILL_OTHER_THREADS_NP"
-msgstr ""
+msgstr "PTHREAD_KILL_OTHER_THREADS_NP"
 
 #. type: TH
 #: build/C/man3/pthread_kill_other_threads_np.3:24
 #, no-wrap
 msgid "2010-09-09"
-msgstr ""
+msgstr "2010-09-09"
 
 #. type: Plain text
 #: build/C/man3/pthread_kill_other_threads_np.3:27
 msgid "pthread_kill_other_threads_np - terminate all other threads in process"
-msgstr ""
+msgstr "pthread_kill_other_threads_np - プロセス内の他の全スレッドを終了する"
 
 #. type: Plain text
 #: build/C/man3/pthread_kill_other_threads_np.3:32
 #, no-wrap
 msgid "B<void pthread_kill_other_threads_np(void);>\n"
-msgstr ""
+msgstr "B<void pthread_kill_other_threads_np(void);>\n"
 
 #.  .SH VERSIONS
 #.  Available since glibc 2.0
@@ -5368,6 +6787,12 @@ msgid ""
 "be-terminated threads are ignored, and the cleanup handlers are not called "
 "in those threads."
 msgstr ""
+"B<pthread_kill_other_threads_np>() は、\n"
+"LinuxThreads スレッド実装においてのみ効果がある。\n"
+"LinuxThreads スレッド実装では、この関数を呼び出すと\n"
+"アプリケーション内の全てのスレッドがすぐに終了される。\n"
+"終了対象のスレッドの cancelability state と cancelability type は\n"
+"無視され、それらのスレッドのクリーンアップハンドラは呼び出されない。"
 
 #. type: Plain text
 #: build/C/man3/pthread_kill_other_threads_np.3:57
@@ -5378,6 +6803,12 @@ msgid ""
 "the other threads of an application are not automatically terminated (as "
 "POSIX.1-2001 requires) during B<execve>(2)."
 msgstr ""
+"B<pthread_kill_other_threads_np>() は、\n"
+"スレッドが B<execve>(2) や同様の関数を呼び出す直前に\n"
+"呼ばれることを目的として用意されている。\n"
+"この関数は、(廃止予定の) LinuxThreads スレッド実装における、\n"
+"B<execve>(2) の際にアプリケーションの他のスレッドが自動的に\n"
+"終了されないという制限を解決するために設計された。"
 
 #. type: Plain text
 #: build/C/man3/pthread_kill_other_threads_np.3:64
@@ -5386,6 +6817,9 @@ msgid ""
 "exists, but does nothing.  (Nothing needs to be done, because the "
 "implementation does the right thing during an B<execve>(2).)"
 msgstr ""
+"NPTL スレッド実装では、 B<pthread_kill_other_threads_np>() は存在するが、\n"
+"何もしない(NPTL 実装は B<execve>(2) の際に適切な動作をするので、\n"
+"何もする必要がないということだ)。"
 
 #. type: Plain text
 #: build/C/man3/pthread_kill_other_threads_np.3:70
@@ -5393,39 +6827,44 @@ msgid ""
 "B<execve>(2), B<pthread_cancel>(3), B<pthread_setcancelstate>(3), "
 "B<pthread_setcanceltype>(3), B<pthreads>(7)"
 msgstr ""
+"B<execve>(2), B<pthread_cancel>(3), B<pthread_setcancelstate>(3), "
+"B<pthread_setcanceltype>(3), B<pthreads>(7)"
 
 #. type: TH
 #: build/C/man3/pthread_self.3:24
 #, no-wrap
 msgid "PTHREAD_SELF"
-msgstr ""
+msgstr "PTHREAD_SELF"
 
 #. type: Plain text
 #: build/C/man3/pthread_self.3:27
 msgid "pthread_self - obtain ID of the calling thread"
-msgstr ""
+msgstr "pthread_self - 呼び出したスレッドの ID を取得する"
 
 #. type: Plain text
 #: build/C/man3/pthread_self.3:32
 #, no-wrap
 msgid "B<pthread_t pthread_self(void);>\n"
-msgstr ""
+msgstr "B<pthread_t pthread_self(void);>\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_self.3:43
+#: build/C/man3/pthread_self.3:44
 msgid ""
 "The B<pthread_self>()  function returns the ID of the calling thread.  This "
 "is the same value that is returned in I<*thread> in the B<pthread_create>"
 "(3)  call that created this thread."
 msgstr ""
+"B<pthread_self>() 関数は、呼び出したスレッドの ID を返す。\n"
+"得られる ID は、このスレッドが作成された B<pthread_create>(3) の\n"
+"呼び出しで I<*thread> で返されるのと同じ値である。"
 
 #. type: Plain text
-#: build/C/man3/pthread_self.3:45
+#: build/C/man3/pthread_self.3:46
 msgid "This function always succeeds, returning the calling thread's ID."
-msgstr ""
+msgstr "この関数は常に成功し、呼び出したスレッドの ID を返す。"
 
 #. type: Plain text
-#: build/C/man3/pthread_self.3:60
+#: build/C/man3/pthread_self.3:61
 msgid ""
 "POSIX.1 allows an implementation wide freedom in choosing the type used to "
 "represent a thread ID; for example, representation using either an "
@@ -5433,40 +6872,55 @@ msgid ""
 "I<pthread_t> can't portably be compared using the C equality operator "
 "(B<==>); use B<pthread_equal>(3)  instead."
 msgstr ""
+"POSIX.1 では、スレッド ID を表現するのに使用する型は、\n"
+"スレッド実装が完全に自由に選択してよいことになっている。\n"
+"例えば、スレッド ID を表現するのに数値型を使っても構造体を使ってもよい。\n"
+"そのため、移植性を確保しつつ、 C 言語の等価演算子 (B<==>) を使って、\n"
+"I<pthread_t> 型の変数の比較を行うことはできない。\n"
+"代わりに B<pthread_equal>(3) を使うこと。"
 
 #. type: Plain text
-#: build/C/man3/pthread_self.3:64
+#: build/C/man3/pthread_self.3:65
 msgid ""
 "Thread identifiers should be considered opaque: any attempt to use a thread "
 "ID other than in pthreads calls is nonportable and can lead to unspecified "
 "results."
 msgstr ""
+"スレッド識別子はその内部構造を意識すべきではない。\n"
+"pthreads 関数以外でスレッド ID を利用しようとした場合、\n"
+"移植性がなくなり、どのような結果が得られるかも分からない。"
 
 #. type: Plain text
-#: build/C/man3/pthread_self.3:68
+#: build/C/man3/pthread_self.3:69
 msgid ""
 "Thread IDs are only guaranteed to be unique within a process.  A thread ID "
 "may be reused after a terminated thread has been joined, or a detached "
 "thread has terminated."
 msgstr ""
+"スレッド ID の一意性が保証されるのは、あるプロセス内においてのみである。\n"
+"終了したスレッドが join されたり、\n"
+"切り離された (detached) スレッドが終了されたりした後は、\n"
+"そのスレッド ID は再利用されることがある。"
 
 #. type: Plain text
-#: build/C/man3/pthread_self.3:73
+#: build/C/man3/pthread_self.3:74
 msgid ""
 "The thread ID returned by B<pthread_self>()  is not the same thing as the "
 "kernel thread ID returned by a call to B<gettid>(2)."
 msgstr ""
+"B<pthread_self>() が返すスレッド ID は、\n"
+"B<gettid>(2) が返すカーネルスレッド ID とは違うものである。"
 
 #. type: Plain text
-#: build/C/man3/pthread_self.3:77
+#: build/C/man3/pthread_self.3:78
 msgid "B<pthread_create>(3), B<pthread_equal>(3), B<pthreads>(7)"
-msgstr ""
+msgstr "B<pthread_create>(3), B<pthread_equal>(3), B<pthreads>(7)"
 
 #. type: TH
 #: build/C/man3/pthread_setaffinity_np.3:24
 #, no-wrap
 msgid "PTHREAD_SETAFFINITY_NP"
-msgstr ""
+msgstr "PTHREAD_SETAFFINITY_NP"
 
 #. type: Plain text
 #: build/C/man3/pthread_setaffinity_np.3:28
@@ -5474,6 +6928,8 @@ msgid ""
 "pthread_setaffinity_np, pthread_getaffinity_np - set/get CPU affinity of a "
 "thread"
 msgstr ""
+"pthread_setaffinity_np, pthread_getaffinity_np - スレッドの\n"
+"CPU affinity の設定/取得を行う"
 
 #. type: Plain text
 #: build/C/man3/pthread_setaffinity_np.3:37
@@ -5484,51 +6940,70 @@ msgid ""
 "B<int pthread_getaffinity_np(pthread_t >I<thread>B<, size_t >I<cpusetsize>B<,>\n"
 "B<                           cpu_set_t *>I<cpuset>B<);>\n"
 msgstr ""
+"B<int pthread_setaffinity_np(pthread_t >I<thread>B<, size_t >I<cpusetsize>B<,>\n"
+"B<                           const cpu_set_t *>I<cpuset>B<);>\n"
+"B<int pthread_getaffinity_np(pthread_t >I<thread>B<, size_t >I<cpusetsize>B<,>\n"
+"B<                           cpu_set_t *>I<cpuset>B<);>\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_setaffinity_np.3:51
+#: build/C/man3/pthread_setaffinity_np.3:52
 msgid ""
 "The B<pthread_setaffinity_np>()  function sets the CPU affinity mask of the "
 "thread I<thread> to the CPU set pointed to by I<cpuset>.  If the call is "
 "successful, and the thread is not currently running on one of the CPUs in "
 "I<cpuset>, then it is migrated to one of those CPUs."
 msgstr ""
+"B<pthread_setaffinity_np>() 関数は、スレッド I<thread> の CPU affinity\n"
+"マスクに I<cpuset> が指す CPU 集合を設定する。呼び出しが成功し、\n"
+"そのスレッドが現在 I<cpuset> で指定された CPU 上でが実行されていない\n"
+"場合は、スレッドは指定された CPU のいずれかに移動される。"
 
 #. type: Plain text
-#: build/C/man3/pthread_setaffinity_np.3:58
+#: build/C/man3/pthread_setaffinity_np.3:59
 msgid ""
 "The B<pthread_getaffinity_np>()  function returns the CPU affinity mask of "
 "the thread I<thread> in the buffer pointed to by I<cpuset>."
 msgstr ""
+"B<pthread_getaffinity_np>() 関数は、スレッド I<thread> の CPU affinity\n"
+"マスクを、I<cpuset> が指すバッファに入れて返す。"
 
 #. type: Plain text
-#: build/C/man3/pthread_setaffinity_np.3:74
+#: build/C/man3/pthread_setaffinity_np.3:75
 msgid ""
 "The argument I<cpusetsize> is the length (in bytes) of the buffer pointed to "
 "by I<cpuset>.  Typically, this argument would be specified as I<sizeof"
 "(cpu_set_t)>.  (It may be some other value, if using the macros described in "
 "B<CPU_SET>(3)  for dynamically allocating a CPU set.)"
 msgstr ""
+"引き数 I<cpusetsize> は I<cpuset> が指すバッファの長さ (バイト単位) で\n"
+"ある。通常は、この引き数には I<sizeof(cpu_set_t)> を指定する\n"
+"(B<CPU_SET>(3) に書かれているマクロを使って CPU 集合を動的に\n"
+"割り当てている場合には、別の値になることもある)。"
 
 #. type: TP
-#: build/C/man3/pthread_setaffinity_np.3:78
+#: build/C/man3/pthread_setaffinity_np.3:79
 #, no-wrap
 msgid "B<EFAULT>"
-msgstr ""
+msgstr "B<EFAULT>"
 
 #. type: Plain text
-#: build/C/man3/pthread_setaffinity_np.3:81
+#: build/C/man3/pthread_setaffinity_np.3:82
 msgid "A supplied memory address was invalid."
-msgstr ""
+msgstr "指定されたメモリアドレスが無効である。"
 
 #. type: Plain text
-#: build/C/man3/pthread_setaffinity_np.3:90
+#: build/C/man3/pthread_setaffinity_np.3:91
 msgid ""
 "(B<pthread_setaffinity_np>())  The affinity bit mask I<mask> contains no "
 "processors that are currently physically on the system and permitted to the "
 "thread according to any restrictions that may be imposed by the \"cpuset\" "
 "mechanism described in B<cpuset>(7)."
 msgstr ""
+"(B<pthread_setaffinity_np>()) affinity ビットマスク I<mask> に、\n"
+"その時点でシステム上に物理的に存在して、かつそのスレッドに対して許可\n"
+"されているプロセッサが一つも含まれていない。\n"
+"スレッドに対してどのプロセッサの利用が許可されるかは、B<cpuset>(7) で\n"
+"説明されている \"cpuset\" 機構に適用される制限に基づいて決まる。"
 
 #.  FIXME . ?
 #.  Loic Domaigne commented: it seems that in the future the
@@ -5538,23 +7013,29 @@ msgstr ""
 #.  The raw sched_getaffinity() system call returns the size (in bytes)
 #.  of the cpumask_t type.
 #. type: Plain text
-#: build/C/man3/pthread_setaffinity_np.3:106
+#: build/C/man3/pthread_setaffinity_np.3:107
 msgid ""
 "(B<pthread_setaffinity_np>())  I<cpuset> specified a CPU that was outside "
 "the set supported by the kernel.  (The kernel configuration option "
 "B<CONFIG_NR_CPUS> defines the range of the set supported by the kernel data "
 "type used to represent CPU sets.)"
 msgstr ""
+"(B<pthread_setaffinity_np>()) I<cpuset> が、カーネルがサポートする CPU\n"
+"集合に含まれない CPU を指定していた。(カーネルの設定オプション\n"
+"B<CONFIG_NR_CPUS> により、CPU 集合を表現するのに使われるカーネルの\n"
+"データ型がサポートする CPU 集合の範囲が定義される。)"
 
 #. type: Plain text
-#: build/C/man3/pthread_setaffinity_np.3:111
+#: build/C/man3/pthread_setaffinity_np.3:112
 msgid ""
 "(B<pthread_getaffinity_np>())  I<cpusetsize> is smaller than the size of the "
 "affinity mask used by the kernel."
 msgstr ""
+"(B<pthread_getaffinity_np>()) I<cpusetsize> がカーネルが使用する\n"
+"affinity マスクの大きさよりも小さい。"
 
 #. type: Plain text
-#: build/C/man3/pthread_setaffinity_np.3:134
+#: build/C/man3/pthread_setaffinity_np.3:135
 msgid ""
 "After a call to B<pthread_setaffinity_np>(), the set of CPUs on which the "
 "thread will actually run is the intersection of the set specified in the "
@@ -5564,32 +7045,50 @@ msgid ""
 "restrictions on the actual set of CPUs on which the thread will run are "
 "silently imposed by the kernel."
 msgstr ""
+"B<pthread_setaffinity_np>() を呼び出した後、\n"
+"そのスレッドが実際に実行される CPU 集合は、\n"
+"I<cpuset> 引き数で指定された集合と\n"
+"システムに実際に存在する CPU 集合の共通部分になる。\n"
+"また、 B<cpuset>(7) で説明されている \"cpuset\" 機構が使われている場合\n"
+"には、そのスレッドが実行される CPU 集合がシステムによってさらに制限\n"
+"される場合がある。そのスレッドが実行される実際の CPU 集合に対する\n"
+"これらの制限は、カーネルにより黙って適用される。"
 
 #. type: Plain text
-#: build/C/man3/pthread_setaffinity_np.3:140
+#: build/C/man3/pthread_setaffinity_np.3:141
 msgid ""
 "These functions are implemented on top of the B<sched_setaffinity>(2)  and "
 "B<sched_getaffinity>(2)  system calls."
 msgstr ""
+"これらの関数は、システムコール B<sched_setaffinity>(2) と\n"
+"B<sched_getaffinity>(2) を使って実装されている。"
 
 #. type: Plain text
-#: build/C/man3/pthread_setaffinity_np.3:151
+#: build/C/man3/pthread_setaffinity_np.3:152
 msgid ""
 "A new thread created by B<pthread_create>(3)  inherits a copy of its "
 "creator's CPU affinity mask."
 msgstr ""
+"B<pthread_create>(3) で作成される新しいスレッドは、\n"
+"作成者の CPU affinity マスクを継承する。"
 
 #. type: Plain text
-#: build/C/man3/pthread_setaffinity_np.3:159
+#: build/C/man3/pthread_setaffinity_np.3:160
 msgid ""
 "In the following program, the main thread uses B<pthread_setaffinity_np>()  "
 "to set its CPU affinity mask to include CPUs 0 to 7 (which may not all be "
 "available on the system), and then calls B<pthread_getaffinity_np>()  to "
 "check the resulting CPU affinity mask of the thread."
 msgstr ""
+"以下のプログラムでは、メインスレッドは\n"
+"B<pthread_setaffinity_np>() を使って自分の CPU affinity マスクに\n"
+"CPU 0 から 7 が含まれるように設定し\n"
+"(システム上には 0 から 7 に対応する CPU が全て存在するとは限らない)、\n"
+"その後で B<pthread_getaffinity_np>() を使って\n"
+"スレッドに実際に設定された CPU affinity マスクを確認している。"
 
 #. type: Plain text
-#: build/C/man3/pthread_setaffinity_np.3:166
+#: build/C/man3/pthread_setaffinity_np.3:167
 #, no-wrap
 msgid ""
 "#define _GNU_SOURCE\n"
@@ -5598,9 +7097,14 @@ msgid ""
 "#include E<lt>stdlib.hE<gt>\n"
 "#include E<lt>errno.hE<gt>\n"
 msgstr ""
+"#define _GNU_SOURCE\n"
+"#include E<lt>pthread.hE<gt>\n"
+"#include E<lt>stdio.hE<gt>\n"
+"#include E<lt>stdlib.hE<gt>\n"
+"#include E<lt>errno.hE<gt>\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_setaffinity_np.3:176
+#: build/C/man3/pthread_setaffinity_np.3:177
 #, no-wrap
 msgid ""
 "int\n"
@@ -5610,54 +7114,69 @@ msgid ""
 "    cpu_set_t cpuset;\n"
 "    pthread_t thread;\n"
 msgstr ""
+"int\n"
+"main(int argc, char *argv[])\n"
+"{\n"
+"    int s, j;\n"
+"    cpu_set_t cpuset;\n"
+"    pthread_t thread;\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_setaffinity_np.3:178
+#: build/C/man3/pthread_setaffinity_np.3:179
 #, no-wrap
 msgid "    thread = pthread_self();\n"
-msgstr ""
+msgstr "    thread = pthread_self();\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_setaffinity_np.3:180
+#: build/C/man3/pthread_setaffinity_np.3:181
 #, no-wrap
 msgid "    /* Set affinity mask to include CPUs 0 to 7 */\n"
-msgstr ""
+msgstr "    /* Set affinity mask to include CPUs 0 to 7 */\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_setaffinity_np.3:184
+#: build/C/man3/pthread_setaffinity_np.3:185
 #, no-wrap
 msgid ""
 "    CPU_ZERO(&cpuset);\n"
 "    for (j = 0; j E<lt> 8; j++)\n"
 "        CPU_SET(j, &cpuset);\n"
 msgstr ""
+"    CPU_ZERO(&cpuset);\n"
+"    for (j = 0; j E<lt> 8; j++)\n"
+"        CPU_SET(j, &cpuset);\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_setaffinity_np.3:188
+#: build/C/man3/pthread_setaffinity_np.3:189
 #, no-wrap
 msgid ""
 "    s = pthread_setaffinity_np(thread, sizeof(cpu_set_t), &cpuset);\n"
 "    if (s != 0)\n"
 "        handle_error_en(s, \"pthread_setaffinity_np\");\n"
 msgstr ""
+"    s = pthread_setaffinity_np(thread, sizeof(cpu_set_t), &cpuset);\n"
+"    if (s != 0)\n"
+"        handle_error_en(s, \"pthread_setaffinity_np\");\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_setaffinity_np.3:190
+#: build/C/man3/pthread_setaffinity_np.3:191
 #, no-wrap
 msgid "    /* Check the actual affinity mask assigned to the thread */\n"
-msgstr ""
+msgstr "    /* Check the actual affinity mask assigned to the thread */\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_setaffinity_np.3:194
+#: build/C/man3/pthread_setaffinity_np.3:195
 #, no-wrap
 msgid ""
 "    s = pthread_getaffinity_np(thread, sizeof(cpu_set_t), &cpuset);\n"
 "    if (s != 0)\n"
 "        handle_error_en(s, \"pthread_getaffinity_np\");\n"
 msgstr ""
+"    s = pthread_getaffinity_np(thread, sizeof(cpu_set_t), &cpuset);\n"
+"    if (s != 0)\n"
+"        handle_error_en(s, \"pthread_getaffinity_np\");\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_setaffinity_np.3:199
+#: build/C/man3/pthread_setaffinity_np.3:200
 #, no-wrap
 msgid ""
 "    printf(\"Set returned by pthread_getaffinity_np() contained:\\en\");\n"
@@ -5665,29 +7184,38 @@ msgid ""
 "        if (CPU_ISSET(j, &cpuset))\n"
 "            printf(\"    CPU %d\\en\", j);\n"
 msgstr ""
+"    printf(\"Set returned by pthread_getaffinity_np() contained:\\en\");\n"
+"    for (j = 0; j E<lt> CPU_SETSIZE; j++)\n"
+"        if (CPU_ISSET(j, &cpuset))\n"
+"            printf(\"    CPU %d\\en\", j);\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_setaffinity_np.3:202
-#: build/C/man3/pthread_setschedparam.3:427
+#: build/C/man3/pthread_setaffinity_np.3:203
+#: build/C/man3/pthread_setschedparam.3:428
 #, no-wrap
 msgid ""
 "    exit(EXIT_SUCCESS);\n"
 "}\n"
 msgstr ""
+"    exit(EXIT_SUCCESS);\n"
+"}\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_setaffinity_np.3:211
+#: build/C/man3/pthread_setaffinity_np.3:212
 msgid ""
 "B<sched_setaffinity>(2), B<sched_setscheduler>(2), "
 "B<pthread_attr_setaffinity_np>(3), B<pthread_self>(3), B<sched_getcpu>(3), "
 "B<cpuset>(7), B<pthreads>(7)"
 msgstr ""
+"B<sched_setaffinity>(2), B<sched_setscheduler>(2), "
+"B<pthread_attr_setaffinity_np>(3), B<pthread_self>(3), B<sched_getcpu>(3), "
+"B<cpuset>(7), B<pthreads>(7)"
 
 #. type: TH
 #: build/C/man3/pthread_setcancelstate.3:24
 #, no-wrap
 msgid "PTHREAD_SETCANCELSTATE"
-msgstr ""
+msgstr "PTHREAD_SETCANCELSTATE"
 
 #. type: Plain text
 #: build/C/man3/pthread_setcancelstate.3:28
@@ -5695,6 +7223,8 @@ msgid ""
 "pthread_setcancelstate, pthread_setcanceltype - set cancelability state and "
 "type"
 msgstr ""
+"pthread_setcancelstate, pthread_setcanceltype - cancelability state と "
+"cancelability type を設定する"
 
 #. type: Plain text
 #: build/C/man3/pthread_setcancelstate.3:34
@@ -5703,118 +7233,148 @@ msgid ""
 "B<int pthread_setcancelstate(int >I<state>B<, int *>I<oldstate>B<);>\n"
 "B<int pthread_setcanceltype(int >I<type>B<, int *>I<oldtype>B<);>\n"
 msgstr ""
+"B<int pthread_setcancelstate(int >I<state>B<, int *>I<oldstate>B<);>\n"
+"B<int pthread_setcanceltype(int >I<type>B<, int *>I<oldtype>B<);>\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_setcancelstate.3:48
+#: build/C/man3/pthread_setcancelstate.3:49
 msgid ""
 "The B<pthread_setcancelstate>()  sets the cancelability state of the calling "
 "thread to the value given in I<state>.  The previous cancelability state of "
 "the thread is returned in the buffer pointed to by I<oldstate>.  The "
 "I<state> argument must have one of the following values:"
 msgstr ""
+"B<pthread_setcancelstate>() は、呼び出したスレッドの\n"
+"cancelability state に I<state> で指定された\n"
+"値を設定する。変更前のスレッドの cancelability state は\n"
+"I<oldstate> が指すバッファで返される。\n"
+"I<state> 引き数には以下の値のいずれか一つを指定しなければならない。"
 
 #. type: TP
-#: build/C/man3/pthread_setcancelstate.3:48
+#: build/C/man3/pthread_setcancelstate.3:49
 #, no-wrap
 msgid "B<PTHREAD_CANCEL_ENABLE>"
-msgstr ""
+msgstr "B<PTHREAD_CANCEL_ENABLE>"
 
 #. type: Plain text
-#: build/C/man3/pthread_setcancelstate.3:55
+#: build/C/man3/pthread_setcancelstate.3:56
 msgid ""
 "The thread is cancelable.  This is the default cancelability state in all "
 "new threads, including the initial thread.  The thread's cancelability type "
 "determines when a cancelable thread will respond to a cancellation request."
 msgstr ""
+"スレッドは取り消し可能 (cancelable) である。\n"
+"これが全ての新しく作成されるスレッドでのデフォルトの\n"
+"cancelability state である。これには最初のスレッドも含まれる。\n"
+"スレッドの cancelability type により、取り消し可能なスレッドが\n"
+"取り消し要求にいつ反応するかが決まる。"
 
 #. type: TP
-#: build/C/man3/pthread_setcancelstate.3:55
+#: build/C/man3/pthread_setcancelstate.3:56
 #, no-wrap
 msgid "B<PTHREAD_CANCEL_DISABLE>"
-msgstr ""
+msgstr "B<PTHREAD_CANCEL_DISABLE>"
 
 #. type: Plain text
-#: build/C/man3/pthread_setcancelstate.3:60
+#: build/C/man3/pthread_setcancelstate.3:61
 msgid ""
 "The thread is not cancelable.  If a cancellation request is received, it is "
 "blocked until cancelability is enabled."
 msgstr ""
+"スレッドは取り消しできない。取り消し要求を受信した際は、\n"
+"取り消し可能に設定されるまでその要求はブロックされる。"
 
 #. type: Plain text
-#: build/C/man3/pthread_setcancelstate.3:72
+#: build/C/man3/pthread_setcancelstate.3:73
 msgid ""
 "The B<pthread_setcanceltype>()  sets the cancelability type of the calling "
 "thread to the value given in I<type>.  The previous cancelability type of "
 "the thread is returned in the buffer pointed to by I<oldtype>.  The I<type> "
 "argument must have one of the following values:"
 msgstr ""
+"B<pthread_setcanceltype>() は、呼び出したスレッドの\n"
+"cancelability type に I<type> で指定された値を設定する。\n"
+"変更前のスレッドの cancelability type は\n"
+"I<oldtype> が指すバッファで返される。\n"
+"I<type> 引き数には以下の値のいずれか一つを指定しなければならない。"
 
 #. type: TP
-#: build/C/man3/pthread_setcancelstate.3:72
+#: build/C/man3/pthread_setcancelstate.3:73
 #, no-wrap
 msgid "B<PTHREAD_CANCEL_DEFERRED>"
-msgstr ""
+msgstr "B<PTHREAD_CANCEL_DEFERRED>"
 
 #. type: Plain text
-#: build/C/man3/pthread_setcancelstate.3:79
+#: build/C/man3/pthread_setcancelstate.3:80
 msgid ""
 "A cancellation request is deferred until the thread next calls a function "
 "that is a cancellation point (see B<pthreads>(7)).  This is the default "
 "cancelability type in all new threads, including the initial thread."
 msgstr ""
+"そのスレッドが次に取り消しポイント (cancellation point) の関数を\n"
+"呼び出すまで取り消し要求が遅延される。これが全ての新しく作成される\n"
+"スレッドでのデフォルトの cancelability type である。\n"
+"これには最初のスレッドも含まれる。"
 
 #. type: TP
-#: build/C/man3/pthread_setcancelstate.3:79
+#: build/C/man3/pthread_setcancelstate.3:80
 #, no-wrap
 msgid "B<PTHREAD_CANCEL_ASYNCHRONOUS>"
-msgstr ""
+msgstr "B<PTHREAD_CANCEL_ASYNCHRONOUS>"
 
 #. type: Plain text
-#: build/C/man3/pthread_setcancelstate.3:85
+#: build/C/man3/pthread_setcancelstate.3:86
 msgid ""
 "The thread can be canceled at any time.  (Typically, it will be canceled "
 "immediately upon receiving a cancellation request, but the system doesn't "
 "guarantee this.)"
 msgstr ""
+"スレッドはいつでも取り消すことができる (通常はすぐにキャンセルされるが、\n"
+"システムがそのことを保証しているわけではない)。"
 
 #. type: Plain text
-#: build/C/man3/pthread_setcancelstate.3:89
+#: build/C/man3/pthread_setcancelstate.3:90
 msgid ""
 "The set-and-get operation performed by each of these functions is atomic "
 "with respect to other threads in the process calling the same function."
 msgstr ""
+"これらの関数により実行される「設定と取得」操作 (set-and-get operation) は、\n"
+"同じ関数を呼び出したプロセス内の他のスレッドがあっても、\n"
+"アトミックに行われる。"
 
 #. type: Plain text
-#: build/C/man3/pthread_setcancelstate.3:96
+#: build/C/man3/pthread_setcancelstate.3:97
 msgid "The B<pthread_setcancelstate>()  can fail with the following error:"
-msgstr ""
+msgstr "B<pthread_setcancelstate>() は以下のエラーで失敗する場合がある。"
 
 #. type: Plain text
-#: build/C/man3/pthread_setcancelstate.3:100
+#: build/C/man3/pthread_setcancelstate.3:101
 msgid "Invalid value for I<state>."
-msgstr ""
+msgstr "I<state> に無効な値が指定された。"
 
 #. type: Plain text
-#: build/C/man3/pthread_setcancelstate.3:104
+#: build/C/man3/pthread_setcancelstate.3:105
 msgid "The B<pthread_setcanceltype>()  can fail with the following error:"
-msgstr ""
+msgstr "B<pthread_setcanceltype>() は以下のエラーで失敗する場合がある。"
 
 #.  .SH VERSIONS
 #.  Available since glibc 2.0
 #. type: Plain text
-#: build/C/man3/pthread_setcancelstate.3:110
+#: build/C/man3/pthread_setcancelstate.3:111
 msgid "Invalid value for I<type>."
-msgstr ""
+msgstr "I<type> に無効な値が指定された。"
 
 #. type: Plain text
-#: build/C/man3/pthread_setcancelstate.3:115
+#: build/C/man3/pthread_setcancelstate.3:116
 msgid ""
 "For details of what happens when a thread is canceled, see B<pthread_cancel>"
 "(3)."
 msgstr ""
+"スレッドが取り消された場合に何が起こるかの詳細については\n"
+"B<pthread_cancel>(3) を参照。"
 
 #. type: Plain text
-#: build/C/man3/pthread_setcancelstate.3:122
+#: build/C/man3/pthread_setcancelstate.3:123
 msgid ""
 "Briefly disabling cancelability is useful if a thread performs some critical "
 "action that must not be interrupted by a cancellation request.  Beware of "
@@ -5822,9 +7382,15 @@ msgid ""
 "block for long periods, since that will render the thread unresponsive to "
 "cancellation requests."
 msgstr ""
+"取り消し要求により中断されてはならない重要なアクションをスレッドが\n"
+"実行する場合、短い時間だけ cancelability を無効にするのは有用である。\n"
+"長い時間 cancelability を無効にしたり、長い時間停止 (block) される\n"
+"可能性のある操作の前後で cancelability を無効にしたりする際には\n"
+"注意すること。なぜなら、無効にしてしまうと、キャンセル要求に対して\n"
+"スレッドが応答しない状態になってしまうからである。"
 
 #. type: Plain text
-#: build/C/man3/pthread_setcancelstate.3:153
+#: build/C/man3/pthread_setcancelstate.3:154
 msgid ""
 "Setting the cancelability type to B<PTHREAD_CANCEL_ASYNCHRONOUS> is rarely "
 "useful.  Since the thread could be canceled at I<any> time, it cannot safely "
@@ -5845,10 +7411,29 @@ msgid ""
 "which asynchronous cancelability is useful is for cancellation of a thread "
 "that is in a pure compute-bound loop."
 msgstr ""
+"cancelability type を B<PTHREAD_CANCEL_ASYNCHRONOUS> に設定して役に立つ\n"
+"ことはめったにない。スレッドはI<いつでも>キャンセルすることができること\n"
+"になるので、スレッドが安全にリソースの確保 (例えば B<malloc>(3) で\n"
+"メモリを割り当てる) や mutex、セマフォ、ロックなどの獲得を行うことがで\n"
+"きない。アプリケーションは、スレッドがキャンセルされる際に、これらのリ\n"
+"ソースがどのような状態にあるかを知る術はないので、リソースの確保が安全\n"
+"ではなくなる。つまり、キャンセルが起こったのが、リソースの確保前なのか、\n"
+"確保中なのか、確保後なのかが分からない。さらに、関数呼び出しの最中に\n"
+"キャンセルが発生すると、いくつかの内部データ構造 (例えば、B<malloc>(3)\n"
+"関連の関数が管理している未使用ブロックのリンクリスト) が一貫性のない\n"
+"状態のままになってしまう可能性がある。その結果、クリーンアップハンドラ\n"
+"が役に立たないものになってしまう。\n"
+"非同期で安全にキャンセルできる関数は I<async-cancel-safe functions> と\n"
+"呼ばれる。 POSIX.1-2001 で、非同期で安全にキャンセルできるように求めら\n"
+"れている関数は B<pthread_cancel>(3), B<pthread_setcancelstate>(),\n"
+"B<pthread_setcanceltype>() だけである。一般的には、それ以外のライブラリ\n"
+"関数は、非同期にキャンセルできるスレッドから安全に呼び出すことはできな\n"
+"い。非同期でのキャンセルが有効な数少ない状況としては、純粋に計算だけを\n"
+"行うループに入っているスレッドをキャンセルするといった場面がある。"
 
 #.  It looks like at least Solaris, FreeBSD and Tru64 support this.
 #. type: Plain text
-#: build/C/man3/pthread_setcancelstate.3:171
+#: build/C/man3/pthread_setcancelstate.3:172
 msgid ""
 "The Linux threading implementations permit the I<oldstate> argument of "
 "B<pthread_setcancelstate>()  to be NULL, in which case the information about "
@@ -5858,30 +7443,41 @@ msgid ""
 "a non-NULL value in I<oldstate>.  A precisely analogous set of statements "
 "applies for the I<oldtype> argument of B<pthread_setcanceltype>()."
 msgstr ""
+"Linux のスレッド実装では、 B<pthread_setcancelstate>() の I<oldstate>\n"
+"引き数に NULL を指定することを認めている。 NULL が指定された場合、\n"
+"変更前の cancelability state の情報が呼び出し側に返されない。\n"
+"他の多くの実装でも I<oldstate> 引き数に NULL を指定することを認めて\n"
+"いるが、 POSIX.1-2001 ではこの点については規定されていない。\n"
+"したがって、移植性が必要なアプリケーションでは常に I<oldstate> に\n"
+"NULL 以外の値を指定するようにすべきである。\n"
+"B<pthread_setcanceltype>() の I<oldtype> 引き数についても、\n"
+"全く同じことが言える。"
 
 #. type: Plain text
-#: build/C/man3/pthread_setcancelstate.3:174
+#: build/C/man3/pthread_setcancelstate.3:175
 msgid "See B<pthread_cancel>(3)."
-msgstr ""
+msgstr "B<pthread_cancel>(3) を参照。"
 
 #. type: Plain text
-#: build/C/man3/pthread_setcancelstate.3:179
+#: build/C/man3/pthread_setcancelstate.3:180
 msgid ""
 "B<pthread_cancel>(3), B<pthread_cleanup_push>(3), B<pthread_testcancel>(3), "
 "B<pthreads>(7)"
 msgstr ""
+"B<pthread_cancel>(3), B<pthread_cleanup_push>(3), B<pthread_testcancel>(3), "
+"B<pthreads>(7)"
 
 #. type: TH
 #: build/C/man3/pthread_setconcurrency.3:23
 #, no-wrap
 msgid "PTHREAD_SETCONCURRENCY"
-msgstr ""
+msgstr "PTHREAD_SETCONCURRENCY"
 
 #. type: TH
 #: build/C/man3/pthread_setconcurrency.3:23 build/C/man3/pthread_yield.3:23
 #, no-wrap
 msgid "2009-04-10"
-msgstr ""
+msgstr "2009-04-10"
 
 #. type: Plain text
 #: build/C/man3/pthread_setconcurrency.3:27
@@ -5889,6 +7485,8 @@ msgid ""
 "pthread_setconcurrency, pthread_getconcurrency - set/get the concurrency "
 "level"
 msgstr ""
+"pthread_setconcurrency, pthread_getconcurrency - 並列処理レベルの設定/取得を"
+"行う"
 
 #. type: Plain text
 #: build/C/man3/pthread_setconcurrency.3:33
@@ -5897,9 +7495,11 @@ msgid ""
 "B<int pthread_setconcurrency(int >I<new_level>B<);>\n"
 "B<int pthread_getconcurrency(void);>\n"
 msgstr ""
+"B<int pthread_setconcurrency(int >I<new_level>B<);>\n"
+"B<int pthread_getconcurrency(void);>\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_setconcurrency.3:45
+#: build/C/man3/pthread_setconcurrency.3:46
 msgid ""
 "The B<pthread_setconcurrency>()  function informs the implementation of the "
 "application's desired concurrency level, specified in I<new_level>.  The "
@@ -5907,65 +7507,84 @@ msgid ""
 "of concurrency that should be provided as a result of calling "
 "B<pthread_setconcurrency>()."
 msgstr ""
+"B<pthread_setconcurrency>() 関数は、アプリケーションが希望する\n"
+"並列処理レベル (concurrency level) をスレッド実装に通知する。\n"
+"希望する並列処理レベルは I<new_level> で指定する。\n"
+"スレッド実装はこの情報を参考情報として利用する。\n"
+"POSIX.1 では、 B<pthread_setconcurrency>() の呼び出した結果、\n"
+"どのような並列度になるべきかは規定されていない。"
 
 #. type: Plain text
-#: build/C/man3/pthread_setconcurrency.3:50
+#: build/C/man3/pthread_setconcurrency.3:51
 msgid ""
 "Specifying I<new_level> as 0 instructs the implementation to manage the "
 "concurrency level as it deems appropriate."
 msgstr ""
+"I<new_level> に 0 を指定すると、スレッド実装は並列処理レベルを\n"
+"実装側で適切とみなしたレベルに設定するようになる。"
 
 #. type: Plain text
-#: build/C/man3/pthread_setconcurrency.3:53
+#: build/C/man3/pthread_setconcurrency.3:54
 msgid ""
 "B<pthread_getconcurrency>()  returns the current value of the concurrency "
 "level for this process."
 msgstr ""
+"B<pthread_getconcurrency>() は、このプロセスの concurrency level\n"
+"の現在値を返す。"
 
 #. type: Plain text
-#: build/C/man3/pthread_setconcurrency.3:58
+#: build/C/man3/pthread_setconcurrency.3:59
 msgid ""
 "On success, B<pthread_setconcurrency>()  returns 0; on error, it returns a "
 "nonzero error number."
 msgstr ""
+"成功すると、 B<pthread_setconcurrency>() は 0 を返す。\n"
+"エラーの場合、 0 以外のエラー番号を返す。"
 
 #. type: Plain text
-#: build/C/man3/pthread_setconcurrency.3:65
+#: build/C/man3/pthread_setconcurrency.3:66
 msgid ""
 "B<pthread_getconcurrency>()  always succeeds, returning the concurrency "
 "level set by a previous call to B<pthread_setconcurrency>(), or 0, if "
 "B<pthread_setconcurrency>()  has not previously been called."
 msgstr ""
+"B<pthread_getconcurrency>() は常に成功し、最後の\n"
+"B<pthread_getconcurrency>() の呼び出しで設定された \n"
+"concurrency level を返す。 B<pthread_getconcurrency>() が\n"
+"それまでに一度も呼び出されていない場合は 0 が返る。"
 
 #. type: Plain text
-#: build/C/man3/pthread_setconcurrency.3:68
+#: build/C/man3/pthread_setconcurrency.3:69
 msgid "B<pthread_setconcurrency>()  can fail with the following error:"
-msgstr ""
+msgstr "B<pthread_setconcurrency>() は以下のエラーで失敗する場合がある。"
 
 #. type: Plain text
-#: build/C/man3/pthread_setconcurrency.3:72
+#: build/C/man3/pthread_setconcurrency.3:73
 msgid "I<new_level> is negative."
-msgstr ""
+msgstr "I<new_level> が負である。"
 
 #. type: Plain text
-#: build/C/man3/pthread_setconcurrency.3:78
+#: build/C/man3/pthread_setconcurrency.3:79
 msgid ""
 "POSIX.1-2001 also documents an B<EAGAIN> error (\"the value specified by "
 "I<new_level> would cause a system resource to be exceeded\")."
 msgstr ""
+"POSIX.1-2001 には、エラー B<EAGAIN> も記載されている\n"
+"(「I<new_level> に指定された値を適用すると、システムリソースが\n"
+"超過してしまう」)。"
 
 #. type: Plain text
-#: build/C/man3/pthread_setconcurrency.3:80
+#: build/C/man3/pthread_setconcurrency.3:81
 msgid "These functions are available in glibc since version 2.1."
-msgstr ""
+msgstr "これらの関数は glibc バージョン 2.1 以降で利用できる。"
 
 #. type: Plain text
-#: build/C/man3/pthread_setconcurrency.3:84
+#: build/C/man3/pthread_setconcurrency.3:85
 msgid "The default concurrency level is 0."
-msgstr ""
+msgstr "デフォルトの concurrency level は 0 である。"
 
 #. type: Plain text
-#: build/C/man3/pthread_setconcurrency.3:91
+#: build/C/man3/pthread_setconcurrency.3:92
 msgid ""
 "Concurrency levels are only meaningful for M:N threading implementations, "
 "where at any moment a subset of a process's set of user-level threads may be "
@@ -5974,26 +7593,38 @@ msgid ""
 "number of kernel-scheduling entities that should be provided for efficient "
 "execution of the application."
 msgstr ""
+"並列処理レベルが意味を持つのは M:N スレッド実装の場合のみである。\n"
+"M:N スレッド実装では、ある瞬間において、あるプロセスのユーザレベルスレッ\n"
+"ドの集合のサブ集合が、そのサブ集合のサイズよりも少ない数のカーネルの\n"
+"スケジューリング実体 (kernel-scheduling entity) に結び付けられる。\n"
+"並列処理レベルを設定すると、そのアプリケーションの効率的な実行に必要な\n"
+"カーネルのスケジューリング実体の数のヒントを、アプリケーションはシステ\n"
+"ムに伝えることができる。"
 
 #. type: Plain text
-#: build/C/man3/pthread_setconcurrency.3:97
+#: build/C/man3/pthread_setconcurrency.3:98
 msgid ""
 "Both LinuxThreads and NPTL are 1:1 threading implementations, so setting the "
 "concurrency level has no meaning.  In other words, on Linux these functions "
 "merely exist for compatibility with other systems, and they have no effect "
 "on the execution of a program."
 msgstr ""
+"LinuxThreads と NPTL のどちらも 1:1 スレッド実装であり、\n"
+"並列処理レベルを設定しても何の意味もない。\n"
+"言い換えると、 Linux では、これらの関数は、\n"
+"他のシステムとの互換性のためだけに存在し、\n"
+"プログラムの実行には何の影響も与えないということである。"
 
 #. type: Plain text
-#: build/C/man3/pthread_setconcurrency.3:100
+#: build/C/man3/pthread_setconcurrency.3:101
 msgid "B<pthread_attr_setscope>(3), B<pthreads>(7)"
-msgstr ""
+msgstr "B<pthread_attr_setscope>(3), B<pthreads>(7)"
 
 #. type: TH
 #: build/C/man3/pthread_setschedparam.3:24
 #, no-wrap
 msgid "PTHREAD_SETSCHEDPARAM"
-msgstr ""
+msgstr "PTHREAD_SETSCHEDPARAM"
 
 #. type: Plain text
 #: build/C/man3/pthread_setschedparam.3:28
@@ -6001,6 +7632,8 @@ msgid ""
 "pthread_setschedparam, pthread_getschedparam - set/get scheduling policy and "
 "parameters of a thread"
 msgstr ""
+"pthread_setschedparam, pthread_getschedparam - スレッドの\n"
+"スケジューリングポリシーとパラメータを設定/取得する"
 
 #. type: Plain text
 #: build/C/man3/pthread_setschedparam.3:36
@@ -6011,32 +7644,43 @@ msgid ""
 "B<pthread_getschedparam(pthread_t >I<thread>B<, int *>I<policy>B<,>\n"
 "B<                      struct sched_param *>I<param>B<);>\n"
 msgstr ""
+"B<pthread_setschedparam(pthread_t >I<thread>B<, int >I<policy>B<,>\n"
+"B<                      const struct sched_param *>I<param>B<);>\n"
+"B<pthread_getschedparam(pthread_t >I<thread>B<, int *>I<policy>B<,>\n"
+"B<                      struct sched_param *>I<param>B<);>\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_setschedparam.3:43
+#: build/C/man3/pthread_setschedparam.3:44
 msgid ""
 "The B<pthread_setschedparam>()  function sets the scheduling policy and "
 "parameters of the thread I<thread>."
 msgstr ""
+"B<pthread_setschedparam>() 関数は、スレッド I<thread> の\n"
+"スケジューリングポリシーとスケジューリングパラメータを設定する。"
 
 #.  FIXME . pthread_setschedparam() places no restriction on the policy,
 #.  but pthread_attr_setschedpolicy() restricts policy to RR/FIFO/OTHER
 #.  http://sourceware.org/bugzilla/show_bug.cgi?id=7013
 #. type: Plain text
-#: build/C/man3/pthread_setschedparam.3:54
+#: build/C/man3/pthread_setschedparam.3:55
 msgid ""
 "I<policy> specifies the new scheduling policy for I<thread>.  The supported "
 "values for I<policy>, and their semantics, are described in "
 "B<sched_setscheduler>(2)."
 msgstr ""
+"I<policy> は I<thread> の新しいスケジューリングポリシーを指定する。\n"
+"I<policy> に指定できる値とその意味は B<sched_setscheduler>(2) で\n"
+"説明されている。"
 
 #. type: Plain text
-#: build/C/man3/pthread_setschedparam.3:60
+#: build/C/man3/pthread_setschedparam.3:61
 msgid ""
 "The structure pointed to by I<param> specifies the new scheduling parameters "
 "for I<thread>.  Scheduling parameters are maintained in the following "
 "structure:"
 msgstr ""
+"I<param> が指す構造体は I<thread> の新しいスケジューリングパラメータを\n"
+"指定する。スケジューリングパラメータは以下の構造体で管理される。"
 
 #.  FIXME . nptl/pthread_setschedparam.c has the following
 #.    /* If the thread should have higher priority because of some
@@ -6044,7 +7688,7 @@ msgstr ""
 #.  Eventually (perhaps after writing the mutexattr pages), we
 #.  may want to add something on the topic to this page.
 #. type: Plain text
-#: build/C/man3/pthread_setschedparam.3:101
+#: build/C/man3/pthread_setschedparam.3:102
 msgid ""
 "The B<pthread_getschedparam>()  function returns the scheduling policy and "
 "parameters of the thread I<thread>, in the buffers pointed to by I<policy> "
@@ -6056,69 +7700,96 @@ msgid ""
 "B<pthread_mutexattr_setprioceiling>(3)  and B<pthread_mutexattr_setprotocol>"
 "(3))."
 msgstr ""
+"B<pthread_getschedparam>() 関数は、スレッド I<thread> の\n"
+"スケジューリングポリシーとパラメータを、\n"
+"それぞれ I<policy> と I<param> が指すバッファに入れて返す。\n"
+"返された優先度の値は、最も最近実行した I<thread> に影響を与える\n"
+"B<pthread_setschedparam>(), B<pthread_setschedprio>,\n"
+"B<pthread_create> で設定された値となる。\n"
+"返された優先度は、優先度の継承や優先度の上限を設定する関数\n"
+"(例えば B<pthread_mutexattr_setprioceiling>(3) や\n"
+"B<pthread_mutexattr_setprotocol>(3) を参照) の呼び出しの結果\n"
+"行われる一時的な優先度の調整の影響を受けない。"
 
 #. type: Plain text
-#: build/C/man3/pthread_setschedparam.3:109
+#: build/C/man3/pthread_setschedparam.3:110
 msgid ""
 "On success, these functions return 0; on error, they return a nonzero error "
 "number.  If B<pthread_setschedparam>()  fails, the scheduling policy and "
 "parameters of I<thread> are not changed."
 msgstr ""
+"成功すると、これらの関数は 0 を返す。\n"
+"エラーの場合、0 以外のエラー番号を返す。\n"
+"B<pthread_setschedparam>() が失敗した場合、 I<thread> の\n"
+"スケジューリングポリシーとパラメータは変更されない。"
 
 #. type: Plain text
-#: build/C/man3/pthread_setschedparam.3:111
+#: build/C/man3/pthread_setschedparam.3:112
 msgid "Both of these functions can fail with the following error:"
-msgstr ""
+msgstr "これらの関数はどちらも以下のエラーで失敗する場合がある。"
 
 #. type: Plain text
-#: build/C/man3/pthread_setschedparam.3:119
+#: build/C/man3/pthread_setschedparam.3:120
 msgid ""
 "B<pthread_setschedparam>()  may additionally fail with the following errors:"
-msgstr ""
+msgstr "B<pthread_setschedparam>() はさらに以下のエラーで失敗する場合がある。"
 
 #. type: Plain text
-#: build/C/man3/pthread_setschedparam.3:126
+#: build/C/man3/pthread_setschedparam.3:127
 msgid ""
 "I<policy> is not a recognized policy, or I<param> does not make sense for "
 "the I<policy>."
 msgstr ""
+"I<policy> が認識できないポリシーであるか、\n"
+"I<param> が I<policy> では意味を持たない値である。"
 
 #. type: Plain text
-#: build/C/man3/pthread_setschedparam.3:130
+#: build/C/man3/pthread_setschedparam.3:131
 msgid ""
 "The caller does not have appropriate privileges to set the specified "
 "scheduling policy and parameters."
 msgstr ""
+"呼び出し側が、指定されたスケジューリングポリシーやパラメータを設定する\n"
+"のに必要な特権を持たない。"
 
 #.  .SH VERSIONS
 #.  Available since glibc 2.0
 #. type: Plain text
-#: build/C/man3/pthread_setschedparam.3:138
+#: build/C/man3/pthread_setschedparam.3:139
 msgid ""
 "POSIX.1-2001 also documents an B<ENOTSUP> (\"attempt was made to set the "
 "policy or scheduling parameters to an unsupported value\") error for "
 "B<pthread_setschedparam>()."
 msgstr ""
+"POSIX.1-2001 では、 B<pthread_setschedparam>() に関して\n"
+"エラー B<ENOTSUP> (\"サポートされていない値をスケジューリングポリシーや\n"
+"パラメータに設定しようとした\") も追加で規定されている。"
 
 #. type: Plain text
-#: build/C/man3/pthread_setschedparam.3:146
+#: build/C/man3/pthread_setschedparam.3:147
 msgid ""
 "For a description of the permissions required to, and the effect of, "
 "changing a thread's scheduling policy and priority, and details of the "
 "permitted ranges for priorities in each scheduling policy, see "
 "B<sched_setscheduler>(2)."
 msgstr ""
+"スレッドのスケジューリングポリシーや優先度を変更するために必要な許可や\n"
+"変更した場合の影響、および各スケジューリングポリシーで認められる優先度\n"
+"の範囲の詳細については、 B<sched_setscheduler>(2) を参照。"
 
 #. type: Plain text
-#: build/C/man3/pthread_setschedparam.3:153
+#: build/C/man3/pthread_setschedparam.3:154
 msgid ""
 "The program below demonstrates the use of B<pthread_setschedparam>()  and "
 "B<pthread_getschedparam>(), as well as the use of a number of other "
 "scheduling-related pthreads functions."
 msgstr ""
+"以下のプログラムは B<pthread_setschedparam>() と\n"
+"B<pthread_getschedparam>() やスケジューリングに関連する pthreads の\n"
+"他のいろいろな関数の使用例を示すものである。"
 
 #. type: Plain text
-#: build/C/man3/pthread_setschedparam.3:169
+#: build/C/man3/pthread_setschedparam.3:170
 msgid ""
 "In the following run, the main thread sets its scheduling policy to "
 "B<SCHED_FIFO> with a priority of 10, and initializes a thread attributes "
@@ -6131,9 +7802,20 @@ msgid ""
 "the thread attributes object, and that thread displays its scheduling policy "
 "and priority."
 msgstr ""
+"以下の実行例では、メインスレッドは、自分のスケジューリングポリシーを\n"
+"優先度 10 の B<SCHED_FIFO> を設定し、スレッド属性オブジェクトを\n"
+"スケジューリングポリシー属性 B<SCHED_RR> とスケジューリング優先度\n"
+"属性 20 で初期化する。\n"
+"次に、このプログラムは (B<pthread_attr_setinheritsched>(3) を使って) \n"
+"そのスレッド属性オブジェクトの inherit scheduler 属性に\n"
+"B<PTHREAD_EXPLICIT_SCHED> を設定する。B<PTHREAD_EXPLICIT_SCHED> は、\n"
+"そのスレッド属性オブジェクトを使って作成されたスレッドはスレッド属性\n"
+"オブジェクトからスケジューリング属性を取得して使うことを意味する。\n"
+"それから、このスレッド属性オブジェクトを使ってスレッドを作成し、\n"
+"作成したスレッドのスケジューリングポリシーと優先度を表示する。"
 
 #. type: Plain text
-#: build/C/man3/pthread_setschedparam.3:177
+#: build/C/man3/pthread_setschedparam.3:178
 #, no-wrap
 msgid ""
 "$ B<su>      # Need privilege to set real-time scheduling policies\n"
@@ -6142,33 +7824,45 @@ msgid ""
 "Scheduler settings of main thread\n"
 "    policy=SCHED_FIFO, priority=10\n"
 msgstr ""
+"$ B<su>      # Need privilege to set real-time scheduling policies\n"
+"Password:\n"
+"# B<./a.out -mf10 -ar20 -i e>\n"
+"Scheduler settings of main thread\n"
+"    policy=SCHED_FIFO, priority=10\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_setschedparam.3:181
+#: build/C/man3/pthread_setschedparam.3:182
 #, no-wrap
 msgid ""
 "Scheduler settings in \\(aqattr\\(aq\n"
 "    policy=SCHED_RR, priority=20\n"
 "    inheritsched is EXPLICIT\n"
 msgstr ""
+"Scheduler settings in \\(aqattr\\(aq\n"
+"    policy=SCHED_RR, priority=20\n"
+"    inheritsched is EXPLICIT\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_setschedparam.3:184
+#: build/C/man3/pthread_setschedparam.3:185
 #, no-wrap
 msgid ""
 "Scheduler attributes of new thread\n"
 "    policy=SCHED_RR, priority=20\n"
 msgstr ""
+"Scheduler attributes of new thread\n"
+"    policy=SCHED_RR, priority=20\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_setschedparam.3:189
+#: build/C/man3/pthread_setschedparam.3:190
 msgid ""
 "In the above output, one can see that the scheduling policy and priority "
 "were taken from the values specified in the thread attributes object."
 msgstr ""
+"上記の出力では、スケジューリングポリシーと優先度がスレッド属性\n"
+"オブジェクトで指定された値から取られていることが分かる。"
 
 #. type: Plain text
-#: build/C/man3/pthread_setschedparam.3:196
+#: build/C/man3/pthread_setschedparam.3:197
 msgid ""
 "The next run is the same as the previous, except that the inherit scheduler "
 "attribute is set to B<PTHREAD_INHERIT_SCHED>, meaning that threads created "
@@ -6176,57 +7870,77 @@ msgid ""
 "specified in the attributes object and instead take their scheduling "
 "attributes from the creating thread."
 msgstr ""
+"次の実行例は前のものと同じだが、 inherit scheduler 属性が \n"
+"B<PTHREAD_INHERIT_SCHED> に設定される点が異なる。\n"
+"B<PTHREAD_INHERIT_SCHED> は、そのスレッド属性オブジェクトを使って作成\n"
+"されたスレッドは、スレッド属性オブジェクトからスケジューリング属性を\n"
+"無視し、代わりに呼び出したスレッドからスケジューリング属性を取得する\n"
+"ことを意味する。"
 
 #. type: Plain text
-#: build/C/man3/pthread_setschedparam.3:202
+#: build/C/man3/pthread_setschedparam.3:203
 #, no-wrap
 msgid ""
 "# B<./a.out -mf10 -ar20 -i i>\n"
 "Scheduler settings of main thread\n"
 "    policy=SCHED_FIFO, priority=10\n"
 msgstr ""
+"# B<./a.out -mf10 -ar20 -i i>\n"
+"Scheduler settings of main thread\n"
+"    policy=SCHED_FIFO, priority=10\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_setschedparam.3:206
+#: build/C/man3/pthread_setschedparam.3:207
 #, no-wrap
 msgid ""
 "Scheduler settings in \\(aqattr\\(aq\n"
 "    policy=SCHED_RR, priority=20\n"
 "    inheritsched is INHERIT\n"
 msgstr ""
+"Scheduler settings in \\(aqattr\\(aq\n"
+"    policy=SCHED_RR, priority=20\n"
+"    inheritsched is INHERIT\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_setschedparam.3:209
+#: build/C/man3/pthread_setschedparam.3:210
 #, no-wrap
 msgid ""
 "Scheduler attributes of new thread\n"
 "    policy=SCHED_FIFO, priority=10\n"
 msgstr ""
+"Scheduler attributes of new thread\n"
+"    policy=SCHED_FIFO, priority=10\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_setschedparam.3:215
+#: build/C/man3/pthread_setschedparam.3:216
 msgid ""
 "In the above output, one can see that the scheduling policy and priority "
 "were taken from the creating thread, rather than the thread attributes "
 "object."
 msgstr ""
+"上記の出力では、スケジューリングポリシーと優先度が、\n"
+"スレッド属性オブジェクトからではなく、\n"
+"スレッドを作成したスレッドから取れれていることが分かる。"
 
 #. type: Plain text
-#: build/C/man3/pthread_setschedparam.3:221
+#: build/C/man3/pthread_setschedparam.3:222
 msgid ""
 "Note that if we had omitted the I<-i\\ i> option, the output would have been "
 "the same, since B<PTHREAD_INHERIT_SCHED> is the default for the inherit "
 "scheduler attribute."
 msgstr ""
+"なお、 I<-i\\ i> を省略した場合でも、\n"
+"B<PTHREAD_INHERIT_SCHED> が inherit scheduler 属性のデフォルト値なので、\n"
+"出力は同じになる。"
 
 #. type: Plain text
-#: build/C/man3/pthread_setschedparam.3:225
+#: build/C/man3/pthread_setschedparam.3:226
 #, no-wrap
 msgid "/* pthreads_sched_test.c */\n"
-msgstr ""
+msgstr "/* pthreads_sched_test.c */\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_setschedparam.3:231
+#: build/C/man3/pthread_setschedparam.3:232
 #, no-wrap
 msgid ""
 "#include E<lt>pthread.hE<gt>\n"
@@ -6235,9 +7949,14 @@ msgid ""
 "#include E<lt>unistd.hE<gt>\n"
 "#include E<lt>errno.hE<gt>\n"
 msgstr ""
+"#include E<lt>pthread.hE<gt>\n"
+"#include E<lt>stdio.hE<gt>\n"
+"#include E<lt>stdlib.hE<gt>\n"
+"#include E<lt>unistd.hE<gt>\n"
+"#include E<lt>errno.hE<gt>\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_setschedparam.3:240
+#: build/C/man3/pthread_setschedparam.3:241
 #, no-wrap
 msgid ""
 "static void\n"
@@ -6246,9 +7965,14 @@ msgid ""
 "    if (msg != NULL)\n"
 "        fputs(msg, stderr);\n"
 msgstr ""
+"static void\n"
+"usage(char *prog_name, char *msg)\n"
+"{\n"
+"    if (msg != NULL)\n"
+"        fputs(msg, stderr);\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_setschedparam.3:257
+#: build/C/man3/pthread_setschedparam.3:258
 #, no-wrap
 msgid ""
 "    fprintf(stderr, \"Usage: %s [options]\\en\", prog_name);\n"
@@ -6268,9 +7992,25 @@ msgid ""
 "    exit(EXIT_FAILURE);\n"
 "}\n"
 msgstr ""
+"    fprintf(stderr, \"Usage: %s [options]\\en\", prog_name);\n"
+"    fprintf(stderr, \"Options are:\\en\");\n"
+"#define fpe(msg) fprintf(stderr, \"\\et%s\", msg);          /* Shorter */\n"
+"    fpe(\"-aE<lt>policyE<gt>E<lt>prioE<gt> Set scheduling policy and priority in\\en\");\n"
+"    fpe(\"                 thread attributes object\\en\");\n"
+"    fpe(\"                 E<lt>policyE<gt> can be\\en\");\n"
+"    fpe(\"                     f  SCHED_FIFO\\en\");\n"
+"    fpe(\"                     r  SCHED_RR\\en\");\n"
+"    fpe(\"                     o  SCHED_OTHER\\en\");\n"
+"    fpe(\"-A               Use default thread attributes object\\en\");\n"
+"    fpe(\"-i {e|s}         Set inherit scheduler attribute to\\en\");\n"
+"    fpe(\"                 \\(aqexplicit\\(aq or \\(aqinherit\\(aq\\en\");\n"
+"    fpe(\"-mE<lt>policyE<gt>E<lt>prioE<gt> Set scheduling policy and priority on\\en\");\n"
+"    fpe(\"                 main thread before pthread_create() call\\en\");\n"
+"    exit(EXIT_FAILURE);\n"
+"}\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_setschedparam.3:268
+#: build/C/man3/pthread_setschedparam.3:269
 #, no-wrap
 msgid ""
 "static int\n"
@@ -6284,11 +8024,32 @@ msgid ""
 "    }\n"
 "}\n"
 msgstr ""
-
-#. type: Plain text
-#: build/C/man3/pthread_setschedparam.3:279
-#, no-wrap
-msgid ""
+"static int\n"
+"get_policy(char p, int *policy)\n"
+"{\n"
+"    switch (p) {\n"
+"    case \\(aqf\\(aq: *policy = SCHED_FIFO;     return 1;\n"
+"    case \\(aqr\\(aq: *policy = SCHED_RR;       return 1;\n"
+"    case \\(aqo\\(aq: *policy = SCHED_OTHER;    return 1;\n"
+"    default:  return 0;\n"
+"    }\n"
+"}\n"
+
+#. type: Plain text
+#: build/C/man3/pthread_setschedparam.3:280
+#, no-wrap
+msgid ""
+"static void\n"
+"display_sched_attr(int policy, struct sched_param *param)\n"
+"{\n"
+"    printf(\"    policy=%s, priority=%d\\en\",\n"
+"            (policy == SCHED_FIFO)  ? \"SCHED_FIFO\" :\n"
+"            (policy == SCHED_RR)    ? \"SCHED_RR\" :\n"
+"            (policy == SCHED_OTHER) ? \"SCHED_OTHER\" :\n"
+"            \"???\",\n"
+"            param-E<gt>sched_priority);\n"
+"}\n"
+msgstr ""
 "static void\n"
 "display_sched_attr(int policy, struct sched_param *param)\n"
 "{\n"
@@ -6299,10 +8060,9 @@ msgid ""
 "            \"???\",\n"
 "            param-E<gt>sched_priority);\n"
 "}\n"
-msgstr ""
 
 #. type: Plain text
-#: build/C/man3/pthread_setschedparam.3:285
+#: build/C/man3/pthread_setschedparam.3:286
 #, no-wrap
 msgid ""
 "static void\n"
@@ -6311,27 +8071,38 @@ msgid ""
 "    int policy, s;\n"
 "    struct sched_param param;\n"
 msgstr ""
+"static void\n"
+"display_thread_sched_attr(char *msg)\n"
+"{\n"
+"    int policy, s;\n"
+"    struct sched_param param;\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_setschedparam.3:289
+#: build/C/man3/pthread_setschedparam.3:290
 #, no-wrap
 msgid ""
 "    s = pthread_getschedparam(pthread_self(), &policy, &param);\n"
 "    if (s != 0)\n"
 "        handle_error_en(s, \"pthread_getschedparam\");\n"
 msgstr ""
+"    s = pthread_getschedparam(pthread_self(), &policy, &param);\n"
+"    if (s != 0)\n"
+"        handle_error_en(s, \"pthread_getschedparam\");\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_setschedparam.3:293
+#: build/C/man3/pthread_setschedparam.3:294
 #, no-wrap
 msgid ""
 "    printf(\"%s\\en\", msg);\n"
 "    display_sched_attr(policy, &param);\n"
 "}\n"
 msgstr ""
+"    printf(\"%s\\en\", msg);\n"
+"    display_sched_attr(policy, &param);\n"
+"}\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_setschedparam.3:298
+#: build/C/man3/pthread_setschedparam.3:299
 #, no-wrap
 msgid ""
 "static void *\n"
@@ -6339,17 +8110,23 @@ msgid ""
 "{\n"
 "    display_thread_sched_attr(\"Scheduler attributes of new thread\");\n"
 msgstr ""
+"static void *\n"
+"thread_start(void *arg)\n"
+"{\n"
+"    display_thread_sched_attr(\"Scheduler attributes of new thread\");\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_setschedparam.3:301
+#: build/C/man3/pthread_setschedparam.3:302
 #, no-wrap
 msgid ""
 "    return NULL;\n"
 "}\n"
 msgstr ""
+"    return NULL;\n"
+"}\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_setschedparam.3:311
+#: build/C/man3/pthread_setschedparam.3:312
 #, no-wrap
 msgid ""
 "int\n"
@@ -6362,15 +8139,24 @@ msgid ""
 "    char *attr_sched_str, *main_sched_str, *inheritsched_str;\n"
 "    struct sched_param param;\n"
 msgstr ""
+"int\n"
+"main(int argc, char *argv[])\n"
+"{\n"
+"    int s, opt, inheritsched, use_null_attrib, policy;\n"
+"    pthread_t thread;\n"
+"    pthread_attr_t attr;\n"
+"    pthread_attr_t *attrp;\n"
+"    char *attr_sched_str, *main_sched_str, *inheritsched_str;\n"
+"    struct sched_param param;\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_setschedparam.3:313
+#: build/C/man3/pthread_setschedparam.3:314
 #, no-wrap
 msgid "    /* Process command-line options */\n"
-msgstr ""
+msgstr "    /* Process command-line options */\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_setschedparam.3:318
+#: build/C/man3/pthread_setschedparam.3:319
 #, no-wrap
 msgid ""
 "    use_null_attrib = 0;\n"
@@ -6378,9 +8164,13 @@ msgid ""
 "    main_sched_str = NULL;\n"
 "    inheritsched_str = NULL;\n"
 msgstr ""
+"    use_null_attrib = 0;\n"
+"    attr_sched_str = NULL;\n"
+"    main_sched_str = NULL;\n"
+"    inheritsched_str = NULL;\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_setschedparam.3:328
+#: build/C/man3/pthread_setschedparam.3:329
 #, no-wrap
 msgid ""
 "    while ((opt = getopt(argc, argv, \"a:Ai:m:\")) != -1) {\n"
@@ -6393,26 +8183,40 @@ msgid ""
 "        }\n"
 "    }\n"
 msgstr ""
+"    while ((opt = getopt(argc, argv, \"a:Ai:m:\")) != -1) {\n"
+"        switch (opt) {\n"
+"        case \\(aqa\\(aq: attr_sched_str = optarg;      break;\n"
+"        case \\(aqA\\(aq: use_null_attrib = 1;          break;\n"
+"        case \\(aqi\\(aq: inheritsched_str = optarg;    break;\n"
+"        case \\(aqm\\(aq: main_sched_str = optarg;      break;\n"
+"        default:  usage(argv[0], \"Unrecognized option\\en\");\n"
+"        }\n"
+"    }\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_setschedparam.3:332
+#: build/C/man3/pthread_setschedparam.3:333
 #, no-wrap
 msgid ""
 "    if (use_null_attrib &&\n"
 "            (inheritsched_str != NULL || attr_sched_str != NULL))\n"
 "        usage(argv[0], \"Can\\(aqt specify -A with -i or -a\\en\");\n"
 msgstr ""
+"    if (use_null_attrib &&\n"
+"            (inheritsched_str != NULL || attr_sched_str != NULL))\n"
+"        usage(argv[0], \"Can\\(aqt specify -A with -i or -a\\en\");\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_setschedparam.3:335
+#: build/C/man3/pthread_setschedparam.3:336
 #, no-wrap
 msgid ""
 "    /* Optionally set scheduling attributes of main thread,\n"
 "       and display the attributes */\n"
 msgstr ""
+"    /* Optionally set scheduling attributes of main thread,\n"
+"       and display the attributes */\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_setschedparam.3:340
+#: build/C/man3/pthread_setschedparam.3:341
 #, no-wrap
 msgid ""
 "    if (main_sched_str != NULL) {\n"
@@ -6420,9 +8224,13 @@ msgid ""
 "            usage(argv[0], \"Bad policy for main thread (-s)\\en\");\n"
 "        param.sched_priority = strtol(&main_sched_str[1], NULL, 0);\n"
 msgstr ""
+"    if (main_sched_str != NULL) {\n"
+"        if (!get_policy(main_sched_str[0], &policy))\n"
+"            usage(argv[0], \"Bad policy for main thread (-s)\\en\");\n"
+"        param.sched_priority = strtol(&main_sched_str[1], NULL, 0);\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_setschedparam.3:345
+#: build/C/man3/pthread_setschedparam.3:346
 #, no-wrap
 msgid ""
 "        s = pthread_setschedparam(pthread_self(), policy, &param);\n"
@@ -6430,23 +8238,29 @@ msgid ""
 "            handle_error_en(s, \"pthread_setschedparam\");\n"
 "    }\n"
 msgstr ""
+"        s = pthread_setschedparam(pthread_self(), policy, &param);\n"
+"        if (s != 0)\n"
+"            handle_error_en(s, \"pthread_setschedparam\");\n"
+"    }\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_setschedparam.3:348
+#: build/C/man3/pthread_setschedparam.3:349
 #, no-wrap
 msgid ""
 "    display_thread_sched_attr(\"Scheduler settings of main thread\");\n"
 "    printf(\"\\en\");\n"
 msgstr ""
+"    display_thread_sched_attr(\"Scheduler settings of main thread\");\n"
+"    printf(\"\\en\");\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_setschedparam.3:350
+#: build/C/man3/pthread_setschedparam.3:351
 #, no-wrap
 msgid "    /* Initialize thread attributes object according to options */\n"
-msgstr ""
+msgstr "    /* Initialize thread attributes object according to options */\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_setschedparam.3:359
+#: build/C/man3/pthread_setschedparam.3:360
 #, no-wrap
 msgid ""
 "    if (!use_null_attrib) {\n"
@@ -6456,9 +8270,15 @@ msgid ""
 "        attrp = &attr;\n"
 "    }\n"
 msgstr ""
+"    if (!use_null_attrib) {\n"
+"        s = pthread_attr_init(&attr);\n"
+"        if (s != 0)\n"
+"            handle_error_en(s, \"pthread_attr_init\");\n"
+"        attrp = &attr;\n"
+"    }\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_setschedparam.3:367
+#: build/C/man3/pthread_setschedparam.3:368
 #, no-wrap
 msgid ""
 "    if (inheritsched_str != NULL) {\n"
@@ -6469,9 +8289,16 @@ msgid ""
 "        else\n"
 "            usage(argv[0], \"Value for -i must be \\(aqe\\(aq or \\(aqi\\(aq\\en\");\n"
 msgstr ""
+"    if (inheritsched_str != NULL) {\n"
+"        if (inheritsched_str[0] == \\(aqe\\(aq)\n"
+"            inheritsched = PTHREAD_EXPLICIT_SCHED;\n"
+"        else if (inheritsched_str[0] == \\(aqi\\(aq)\n"
+"            inheritsched = PTHREAD_INHERIT_SCHED;\n"
+"        else\n"
+"            usage(argv[0], \"Value for -i must be \\(aqe\\(aq or \\(aqi\\(aq\\en\");\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_setschedparam.3:372
+#: build/C/man3/pthread_setschedparam.3:373
 #, no-wrap
 msgid ""
 "        s = pthread_attr_setinheritsched(&attr, inheritsched);\n"
@@ -6479,9 +8306,13 @@ msgid ""
 "            handle_error_en(s, \"pthread_attr_setinheritsched\");\n"
 "    }\n"
 msgstr ""
+"        s = pthread_attr_setinheritsched(&attr, inheritsched);\n"
+"        if (s != 0)\n"
+"            handle_error_en(s, \"pthread_attr_setinheritsched\");\n"
+"    }\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_setschedparam.3:378
+#: build/C/man3/pthread_setschedparam.3:379
 #, no-wrap
 msgid ""
 "    if (attr_sched_str != NULL) {\n"
@@ -6490,9 +8321,14 @@ msgid ""
 "                    \"Bad policy for \\(aqattr\\(aq (-a)\\en\");\n"
 "        param.sched_priority = strtol(&attr_sched_str[1], NULL, 0);\n"
 msgstr ""
+"    if (attr_sched_str != NULL) {\n"
+"        if (!get_policy(attr_sched_str[0], &policy))\n"
+"            usage(argv[0],\n"
+"                    \"Bad policy for \\(aqattr\\(aq (-a)\\en\");\n"
+"        param.sched_priority = strtol(&attr_sched_str[1], NULL, 0);\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_setschedparam.3:386
+#: build/C/man3/pthread_setschedparam.3:387
 #, no-wrap
 msgid ""
 "        s = pthread_attr_setschedpolicy(&attr, policy);\n"
@@ -6503,17 +8339,26 @@ msgid ""
 "            handle_error_en(s, \"pthread_attr_setschedparam\");\n"
 "    }\n"
 msgstr ""
+"        s = pthread_attr_setschedpolicy(&attr, policy);\n"
+"        if (s != 0)\n"
+"            handle_error_en(s, \"pthread_attr_setschedpolicy\");\n"
+"        s = pthread_attr_setschedparam(&attr, &param);\n"
+"        if (s != 0)\n"
+"            handle_error_en(s, \"pthread_attr_setschedparam\");\n"
+"    }\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_setschedparam.3:389
+#: build/C/man3/pthread_setschedparam.3:390
 #, no-wrap
 msgid ""
 "    /* If we initialized a thread attributes object, display\n"
 "       the scheduling attributes that were set in the object */\n"
 msgstr ""
+"    /* If we initialized a thread attributes object, display\n"
+"       the scheduling attributes that were set in the object */\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_setschedparam.3:397
+#: build/C/man3/pthread_setschedparam.3:398
 #, no-wrap
 msgid ""
 "    if (attrp != NULL) {\n"
@@ -6524,17 +8369,26 @@ msgid ""
 "        if (s != 0)\n"
 "            handle_error_en(s, \"pthread_attr_getschedpolicy\");\n"
 msgstr ""
+"    if (attrp != NULL) {\n"
+"        s = pthread_attr_getschedparam(&attr, &param);\n"
+"        if (s != 0)\n"
+"            handle_error_en(s, \"pthread_attr_getschedparam\");\n"
+"        s = pthread_attr_getschedpolicy(&attr, &policy);\n"
+"        if (s != 0)\n"
+"            handle_error_en(s, \"pthread_attr_getschedpolicy\");\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_setschedparam.3:400
+#: build/C/man3/pthread_setschedparam.3:401
 #, no-wrap
 msgid ""
 "        printf(\"Scheduler settings in \\(aqattr\\(aq\\en\");\n"
 "        display_sched_attr(policy, &param);\n"
 msgstr ""
+"        printf(\"Scheduler settings in \\(aqattr\\(aq\\en\");\n"
+"        display_sched_attr(policy, &param);\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_setschedparam.3:408
+#: build/C/man3/pthread_setschedparam.3:409
 #, no-wrap
 msgid ""
 "        s = pthread_attr_getinheritsched(&attr, &inheritsched);\n"
@@ -6545,39 +8399,52 @@ msgid ""
 "        printf(\"\\en\");\n"
 "    }\n"
 msgstr ""
+"        s = pthread_attr_getinheritsched(&attr, &inheritsched);\n"
+"        printf(\"    inheritsched is %s\\en\",\n"
+"                (inheritsched == PTHREAD_INHERIT_SCHED)  ? \"INHERIT\" :\n"
+"                (inheritsched == PTHREAD_EXPLICIT_SCHED) ? \"EXPLICIT\" :\n"
+"                \"???\");\n"
+"        printf(\"\\en\");\n"
+"    }\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_setschedparam.3:410
+#: build/C/man3/pthread_setschedparam.3:411
 #, no-wrap
 msgid "    /* Create a thread that will display its scheduling attributes */\n"
-msgstr ""
+msgstr "    /* Create a thread that will display its scheduling attributes */\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_setschedparam.3:414
+#: build/C/man3/pthread_setschedparam.3:415
 #, no-wrap
 msgid ""
 "    s = pthread_create(&thread, attrp, &thread_start, NULL);\n"
 "    if (s != 0)\n"
 "        handle_error_en(s, \"pthread_create\");\n"
 msgstr ""
+"    s = pthread_create(&thread, attrp, &thread_start, NULL);\n"
+"    if (s != 0)\n"
+"        handle_error_en(s, \"pthread_create\");\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_setschedparam.3:416
+#: build/C/man3/pthread_setschedparam.3:417
 #, no-wrap
 msgid "    /* Destroy unneeded thread attributes object */\n"
-msgstr ""
+msgstr "    /* Destroy unneeded thread attributes object */\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_setschedparam.3:424
+#: build/C/man3/pthread_setschedparam.3:425
 #, no-wrap
 msgid ""
 "    s = pthread_join(thread, NULL);\n"
 "    if (s != 0)\n"
 "        handle_error_en(s, \"pthread_join\");\n"
 msgstr ""
+"    s = pthread_join(thread, NULL);\n"
+"    if (s != 0)\n"
+"        handle_error_en(s, \"pthread_join\");\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_setschedparam.3:440
+#: build/C/man3/pthread_setschedparam.3:441
 msgid ""
 "B<getrlimit>(2), B<sched_get_priority_min>(2), B<sched_setscheduler>(2), "
 "B<pthread_attr_init>(3), B<pthread_attr_setinheritsched>(3), "
@@ -6585,29 +8452,34 @@ msgid ""
 "B<pthread_create>(3), B<pthread_self>(3), B<pthread_setschedprio>(3), "
 "B<pthreads>(7)"
 msgstr ""
+"B<getrlimit>(2), B<sched_get_priority_min>(2), B<sched_setscheduler>(2), "
+"B<pthread_attr_init>(3), B<pthread_attr_setinheritsched>(3), "
+"B<pthread_attr_setschedparam>(3), B<pthread_attr_setschedpolicy>(3), "
+"B<pthread_create>(3), B<pthread_self>(3), B<pthread_setschedprio>(3), "
+"B<pthreads>(7)"
 
 #. type: TH
 #: build/C/man3/pthread_setschedprio.3:24
 #, no-wrap
 msgid "PTHREAD_SETSCHEDPRIO"
-msgstr ""
+msgstr "PTHREAD_SETSCHEDPRIO"
 
 #. type: TH
 #: build/C/man3/pthread_setschedprio.3:24
 #, no-wrap
 msgid "2008-11-06"
-msgstr ""
+msgstr "2008-11-06"
 
 #. type: Plain text
 #: build/C/man3/pthread_setschedprio.3:27
 msgid "pthread_setschedprio - set scheduling priority of a thread"
-msgstr ""
+msgstr "pthread_setschedprio - スレッドのスケジューリング優先度を設定する"
 
 #. type: Plain text
 #: build/C/man3/pthread_setschedprio.3:32
 #, no-wrap
 msgid "B<pthread_setschedprio(pthread_t >I<thread>B<, int >I<prio>B<);>\n"
-msgstr ""
+msgstr "B<pthread_setschedprio(pthread_t >I<thread>B<, int >I<prio>B<);>\n"
 
 #.  FIXME . nptl/pthread_setschedprio.c has the following
 #.    /* If the thread should have higher priority because of some
@@ -6616,56 +8488,71 @@ msgstr ""
 #.  may want to add something on the topic to this page.
 #.  nptl/pthread_setschedparam.c has a similar case.
 #. type: Plain text
-#: build/C/man3/pthread_setschedprio.3:50
+#: build/C/man3/pthread_setschedprio.3:51
 msgid ""
 "The B<pthread_setschedprio>()  function sets the scheduling priority of the "
 "thread I<thread> to the value specified in I<prio>.  (By contrast "
 "B<pthread_setschedparam>(3)  changes both the scheduling policy and priority "
 "of a thread.)"
 msgstr ""
+"B<pthread_setschedprio>() 関数は、スレッド I<thread> のスケジューリング\n"
+"優先度に I<prio> で指定された値を設定する\n"
+"(一方、B<pthread_setschedparam>(3) はスレッドのスケジューリングポリシー\n"
+"と優先度の両方を変更する)。"
 
 #. type: Plain text
-#: build/C/man3/pthread_setschedprio.3:58
+#: build/C/man3/pthread_setschedprio.3:59
 msgid ""
 "On success, this function returns 0; on error, it returns a nonzero error "
 "number.  If B<pthread_setschedprio>()  fails, the scheduling priority of "
 "I<thread> is not changed."
 msgstr ""
+"成功すると、この関数は 0 を返す。\n"
+"エラーの場合、0 以外のエラー番号を返す。\n"
+"B<pthread_setschedprio>() が失敗した場合、 I<thread> の\n"
+"スケジューリング優先度は変更されない。"
 
 #. type: Plain text
-#: build/C/man3/pthread_setschedprio.3:63
+#: build/C/man3/pthread_setschedprio.3:64
 msgid "I<prio> is not valid for the scheduling policy of the specified thread."
 msgstr ""
+"指定されたスレッドのスケジューリングポリシーでは、 I<prio> は無効である。"
 
 #. type: Plain text
-#: build/C/man3/pthread_setschedprio.3:67
+#: build/C/man3/pthread_setschedprio.3:68
 msgid ""
 "The caller does not have appropriate privileges to set the specified "
 "priority."
-msgstr ""
+msgstr "呼び出し側が、指定された優先度を設定するのに必要な特権を持っていない。"
 
 #. type: Plain text
-#: build/C/man3/pthread_setschedprio.3:78
+#: build/C/man3/pthread_setschedprio.3:79
 msgid ""
 "POSIX.1-2001 also documents an B<ENOTSUP> (\"attempt was made to set the "
 "priority to an unsupported value\") error for B<pthread_setschedparam>(3)."
 msgstr ""
+"POSIX.1-2001 では、 B<pthread_setschedprio>() に関して\n"
+"エラー B<ENOTSUP> (\"サポートされていない値を優先度\n"
+"に設定しようとした\") も追加で規定されている。"
 
 #. type: Plain text
-#: build/C/man3/pthread_setschedprio.3:80
+#: build/C/man3/pthread_setschedprio.3:81
 msgid "This function is available in glibc since version 2.3.4."
-msgstr ""
+msgstr "この関数は glibc バージョン 2.3.4 以降で利用できる。"
 
 #. type: Plain text
-#: build/C/man3/pthread_setschedprio.3:88
+#: build/C/man3/pthread_setschedprio.3:89
 msgid ""
 "For a description of the permissions required to, and the effect of, "
 "changing a thread's scheduling priority, and details of the permitted ranges "
 "for priorities in each scheduling policy, see B<sched_setscheduler>(2)."
 msgstr ""
+"スレッドのスケジューリング優先度を変更するために必要な許可や\n"
+"変更した場合の影響、および各スケジューリングポリシーで認められる優先度\n"
+"の範囲の詳細については、 B<sched_setscheduler>(2) を参照。"
 
 #. type: Plain text
-#: build/C/man3/pthread_setschedprio.3:100
+#: build/C/man3/pthread_setschedprio.3:101
 msgid ""
 "B<getrlimit>(2), B<sched_get_priority_min>(2), B<sched_setscheduler>(2), "
 "B<pthread_attr_init>(3), B<pthread_attr_setinheritsched>(3), "
@@ -6673,29 +8560,34 @@ msgid ""
 "B<pthread_create>(3), B<pthread_self>(3), B<pthread_setschedparam>(3), "
 "B<pthreads>(7)"
 msgstr ""
+"B<getrlimit>(2), B<sched_get_priority_min>(2), B<sched_setscheduler>(2), "
+"B<pthread_attr_init>(3), B<pthread_attr_setinheritsched>(3), "
+"B<pthread_attr_setschedparam>(3), B<pthread_attr_setschedpolicy>(3), "
+"B<pthread_create>(3), B<pthread_self>(3), B<pthread_setschedparam>(3), "
+"B<pthreads>(7)"
 
 #. type: TH
 #: build/C/man3/pthread_sigmask.3:24
 #, no-wrap
 msgid "PTHREAD_SIGMASK"
-msgstr ""
+msgstr "PTHREAD_SIGMASK"
 
 #. type: TH
 #: build/C/man3/pthread_sigmask.3:24
 #, no-wrap
-msgid "2009-01-25"
-msgstr ""
+msgid "2011-10-16"
+msgstr "2011-10-16"
 
 #. type: Plain text
 #: build/C/man3/pthread_sigmask.3:27
 msgid "pthread_sigmask - examine and change mask of blocked signals"
-msgstr ""
+msgstr "pthread_sigmask - 禁止するシグナルマスクの確認と変更を行う"
 
 #. type: Plain text
 #: build/C/man3/pthread_sigmask.3:33
 #, no-wrap
 msgid "B<int pthread_sigmask(int >I<how>B<, const sigset_t *>I<set>B<, sigset_t *>I<oldset>B<);>\n"
-msgstr ""
+msgstr "B<int pthread_sigmask(int >I<how>B<, const sigset_t *>I<set>B<, sigset_t *>I<oldset>B<);>\n"
 
 #. type: Plain text
 #: build/C/man3/pthread_sigmask.3:44
@@ -6704,13 +8596,16 @@ msgid ""
 "difference that its use in multithreaded programs is explicitly specified by "
 "POSIX.1-2001.  Other differences are noted in this page."
 msgstr ""
+"B<pthread_sigmask>() 関数は B<sigprocmask>(2) と全く同様だが、\n"
+"マルチスレッドプログラムでの利用が POSIX.1-2001 で明示的に規定されて\n"
+"いる点が異なる。他の違いはこのマニュアルページで説明する。"
 
 #. type: Plain text
 #: build/C/man3/pthread_sigmask.3:47
 msgid ""
 "For a description of the arguments and operation of this function, see "
 "B<sigprocmask>(2)."
-msgstr ""
+msgstr "この関数の引き数と動作の説明は B<sigprocmask>(2) を参照。"
 
 #. type: Plain text
 #: build/C/man3/pthread_sigmask.3:52
@@ -6718,16 +8613,20 @@ msgid ""
 "On success, B<pthread_sigmask>()  returns 0; on error, it returns an error "
 "number."
 msgstr ""
+"成功すると、 B<pthread_sigmask>() は 0 を返す。\n"
+"エラーの場合、エラー番号を返す。"
 
 #. type: Plain text
 #: build/C/man3/pthread_sigmask.3:55
 msgid "See B<sigprocmask>(2)."
-msgstr ""
+msgstr "B<sigprocmask>(2) を参照。"
 
 #. type: Plain text
 #: build/C/man3/pthread_sigmask.3:59
 msgid "A new thread inherits a copy of its creator's signal mask."
 msgstr ""
+"新しいスレッドは、スレッドを作成したスレッドのシグナルマスクのコピーを\n"
+"継承する。"
 
 #. type: Plain text
 #: build/C/man3/pthread_sigmask.3:64
@@ -6736,6 +8635,10 @@ msgid ""
 "dedicated thread to fetch those signals via B<sigwait>(3).  The following "
 "shell session demonstrates its use:"
 msgstr ""
+"以下のプログラムは、メインスレッドでシグナルのいくつかを禁止 (block)\n"
+"するように設定を行い、 B<sigwait>(3) 経由でそれらのシグナルを集める\n"
+"専用のスレッドを作成する。\n"
+"下記のシェルのセッションはその利用例を示したものである。"
 
 #. type: Plain text
 #: build/C/man3/pthread_sigmask.3:75
@@ -6750,6 +8653,14 @@ msgid ""
 "$B< kill -TERM %1>\n"
 "[1]+  Terminated              ./a.out\n"
 msgstr ""
+"$B< ./a.out &>\n"
+"[1] 5423\n"
+"$B< kill -QUIT %1>\n"
+"Signal handling thread got signal 3\n"
+"$B< kill -USR1 %1>\n"
+"Signal handling thread got signal 10\n"
+"$B< kill -TERM %1>\n"
+"[1]+  Terminated              ./a.out\n"
 
 #. type: Plain text
 #: build/C/man3/pthread_sigmask.3:86
@@ -6762,12 +8673,18 @@ msgid ""
 "#include E<lt>signal.hE<gt>\n"
 "#include E<lt>errno.hE<gt>\n"
 msgstr ""
+"#include E<lt>pthread.hE<gt>\n"
+"#include E<lt>stdio.hE<gt>\n"
+"#include E<lt>stdlib.hE<gt>\n"
+"#include E<lt>unistd.hE<gt>\n"
+"#include E<lt>signal.hE<gt>\n"
+"#include E<lt>errno.hE<gt>\n"
 
 #. type: Plain text
 #: build/C/man3/pthread_sigmask.3:88
 #, no-wrap
 msgid "/* Simple error handling functions */\n"
-msgstr ""
+msgstr "/* Simple error handling functions */\n"
 
 #. type: Plain text
 #: build/C/man3/pthread_sigmask.3:97
@@ -6779,6 +8696,11 @@ msgid ""
 "    sigset_t *set = (sigset_t *) arg;\n"
 "    int s, sig;\n"
 msgstr ""
+"static void *\n"
+"sig_thread(void *arg)\n"
+"{\n"
+"    sigset_t *set = (sigset_t *) arg;\n"
+"    int s, sig;\n"
 
 #. type: Plain text
 #: build/C/man3/pthread_sigmask.3:105
@@ -6792,6 +8714,13 @@ msgid ""
 "    }\n"
 "}\n"
 msgstr ""
+"    for (;;) {\n"
+"        s = sigwait(set, &sig);\n"
+"        if (s != 0)\n"
+"            handle_error_en(s, \"sigwait\");\n"
+"        printf(\"Signal handling thread got signal %d\\en\", sig);\n"
+"    }\n"
+"}\n"
 
 #. type: Plain text
 #: build/C/man3/pthread_sigmask.3:112
@@ -6804,14 +8733,22 @@ msgid ""
 "    sigset_t set;\n"
 "    int s;\n"
 msgstr ""
+"int\n"
+"main(int argc, char *argv[])\n"
+"{\n"
+"    pthread_t thread;\n"
+"    sigset_t set;\n"
+"    int s;\n"
 
 #. type: Plain text
 #: build/C/man3/pthread_sigmask.3:115
 #, no-wrap
 msgid ""
-"    /* Block SIGINT; other threads created by main() will inherit\n"
-"       a copy of the signal mask. */\n"
+"    /* Block SIGQUIT and SIGUSR1; other threads created by main()\n"
+"       will inherit a copy of the signal mask. */\n"
 msgstr ""
+"    /* Block SIGQUIT and SIGUSR1; other threads created by main()\n"
+"       will inherit a copy of the signal mask. */\n"
 
 #. type: Plain text
 #: build/C/man3/pthread_sigmask.3:122
@@ -6824,6 +8761,12 @@ msgid ""
 "    if (s != 0)\n"
 "        handle_error_en(s, \"pthread_sigmask\");\n"
 msgstr ""
+"    sigemptyset(&set);\n"
+"    sigaddset(&set, SIGQUIT);\n"
+"    sigaddset(&set, SIGUSR1);\n"
+"    s = pthread_sigmask(SIG_BLOCK, &set, NULL);\n"
+"    if (s != 0)\n"
+"        handle_error_en(s, \"pthread_sigmask\");\n"
 
 #. type: Plain text
 #: build/C/man3/pthread_sigmask.3:126
@@ -6833,6 +8776,9 @@ msgid ""
 "    if (s != 0)\n"
 "        handle_error_en(s, \"pthread_create\");\n"
 msgstr ""
+"    s = pthread_create(&thread, NULL, &sig_thread, (void *) &set);\n"
+"    if (s != 0)\n"
+"        handle_error_en(s, \"pthread_create\");\n"
 
 #. type: Plain text
 #: build/C/man3/pthread_sigmask.3:129
@@ -6841,6 +8787,8 @@ msgid ""
 "    /* Main thread carries on to create other threads and/or do\n"
 "       other work */\n"
 msgstr ""
+"    /* Main thread carries on to create other threads and/or do\n"
+"       other work */\n"
 
 #. type: Plain text
 #: build/C/man3/pthread_sigmask.3:132
@@ -6849,6 +8797,8 @@ msgid ""
 "    pause();            /* Dummy pause so we can test program */\n"
 "}\n"
 msgstr ""
+"    pause();            /* Dummy pause so we can test program */\n"
+"}\n"
 
 #. type: Plain text
 #: build/C/man3/pthread_sigmask.3:142
@@ -6856,23 +8806,25 @@ msgid ""
 "B<sigaction>(2), B<sigpending>(2), B<sigprocmask>(2)  B<pthread_create>(3), "
 "B<pthread_kill>(3), B<sigsetops>(3), B<pthreads>(7), B<signal>(7)"
 msgstr ""
+"B<sigaction>(2), B<sigpending>(2), B<sigprocmask>(2)  B<pthread_create>(3), "
+"B<pthread_kill>(3), B<sigsetops>(3), B<pthreads>(7), B<signal>(7)"
 
 #. type: TH
 #: build/C/man3/pthread_sigqueue.3:23
 #, no-wrap
 msgid "PTHREAD_SIGQUEUE"
-msgstr ""
+msgstr "PTHREAD_SIGQUEUE"
 
 #. type: TH
 #: build/C/man3/pthread_sigqueue.3:23
 #, no-wrap
 msgid "2011-09-23"
-msgstr ""
+msgstr "2011-09-23"
 
 #. type: Plain text
 #: build/C/man3/pthread_sigqueue.3:26
 msgid "pthread_sigqueue - queue a signal and data to a thread"
-msgstr ""
+msgstr "pthread_sigqueue - スレッドに対するシグナルとデータをキューに入れる"
 
 #. type: Plain text
 #: build/C/man3/pthread_sigqueue.3:32
@@ -6881,11 +8833,13 @@ msgid ""
 "B<int pthread_sigqueue(pthread_t *>I<thread>B<, int >I<sig>B<,>\n"
 "B<                     const union sigval >I<value>B<);>\n"
 msgstr ""
+"B<int pthread_sigqueue(pthread_t *>I<thread>B<, int >I<sig>B<,>\n"
+"B<                     const union sigval >I<value>B<);>\n"
 
 #. type: Plain text
 #: build/C/man3/pthread_sigqueue.3:43
 msgid "B<pthread_sigqueue>(): _GNU_SOURCE"
-msgstr ""
+msgstr "B<pthread_sigqueue>(): _GNU_SOURCE"
 
 #. type: Plain text
 #: build/C/man3/pthread_sigqueue.3:51
@@ -6894,6 +8848,9 @@ msgid ""
 "(3), but, rather than sending a signal to another process, it sends a signal "
 "to another thread in the same process as the calling thread."
 msgstr ""
+"B<pthread_sigqueue>() 関数は B<sigqueue>(3) と同様の処理を実行するが、\n"
+"別のプロセスにシグナルを送信するのではなく、呼び出したスレッドと\n"
+"同じプロセス内の他のスレッドにシグナルを送信する。"
 
 #. type: Plain text
 #: build/C/man3/pthread_sigqueue.3:63
@@ -6903,6 +8860,10 @@ msgid ""
 "I<value> argument specifies data to accompany the signal; see B<sigqueue>"
 "(3)  for details."
 msgstr ""
+"I<thread> 引き数は、呼び出し側と同じプロセスの別のスレッドの ID である。\n"
+"I<sig> 引き数は送信するシグナルを指定する。\n"
+"I<value> 引き数はシグナルと一緒に渡すデータを指定する。\n"
+"詳細は B<sigqueue>(3) を参照。"
 
 #. type: Plain text
 #: build/C/man3/pthread_sigqueue.3:68
@@ -6910,6 +8871,8 @@ msgid ""
 "On success, B<pthread_sigqueue>()  returns 0; on error, it returns an error "
 "number."
 msgstr ""
+"成功すると、 B<pthread_sigmask>() は 0 を返す。\n"
+"エラーの場合、エラー番号を返す。"
 
 #. type: Plain text
 #: build/C/man3/pthread_sigqueue.3:75
@@ -6917,103 +8880,124 @@ msgid ""
 "The limit of signals which may be queued has been reached.  (See B<signal>"
 "(7)  for further information.)"
 msgstr ""
+"キューに入れられるシグナル数が上限に達していた\n"
+"(詳しい情報は (B<signal>(7) を参照)。"
 
 #. type: Plain text
 #: build/C/man3/pthread_sigqueue.3:79
 msgid "I<sig> was invalid."
-msgstr ""
+msgstr "I<sig> が無効であった。"
 
 #. type: TP
 #: build/C/man3/pthread_sigqueue.3:79
 #, no-wrap
 msgid "B<ENOSYS>"
-msgstr ""
+msgstr "B<ENOSYS>"
 
 #. type: Plain text
 #: build/C/man3/pthread_sigqueue.3:83
 msgid "B<pthread_sigqueue>()  is not supported on this system."
-msgstr ""
+msgstr "B<pthread_sigqueue>() がこのシステムではサポートされていない。"
 
 #. type: Plain text
 #: build/C/man3/pthread_sigqueue.3:87
 msgid "I<thread> is not valid."
-msgstr ""
+msgstr "I<thread> が無効である。"
 
 #. type: Plain text
 #: build/C/man3/pthread_sigqueue.3:91
 msgid "The B<pthread_sigqueue>()  function first appeared in glibc 2.11."
-msgstr ""
+msgstr "B<pthread_sigqueue>() 関数は glibc 2.11 で初めて登場した。"
 
 #. type: Plain text
 #: build/C/man3/pthread_sigqueue.3:93
 msgid "This function is a GNU extension."
-msgstr ""
+msgstr "この関数は GNU による拡張である。"
 
 #. type: Plain text
 #: build/C/man3/pthread_sigqueue.3:101
 msgid ""
-"B<rt_tgsigqueueinfo>(2), B<sigaction>(2), B<sigqueue>(3), B<sigwait>(3), "
-"B<pthread_sigmask>(3), B<pthreads>(7), B<signal>(7)"
+"B<rt_tgsigqueueinfo>(2), B<sigaction>(2), B<pthread_sigmask>(3), B<sigqueue>"
+"(3), B<sigwait>(3), B<pthreads>(7), B<signal>(7)"
 msgstr ""
+"B<rt_tgsigqueueinfo>(2), B<sigaction>(2), B<pthread_sigmask>(3), \n"
+"B<sigqueue>(3), B<sigwait>(3), B<pthreads>(7), B<signal>(7)"
 
 #. type: TH
 #: build/C/man3/pthread_testcancel.3:24
 #, no-wrap
 msgid "PTHREAD_TESTCANCEL"
-msgstr ""
+msgstr "PTHREAD_TESTCANCEL"
+
+#. type: TH
+#: build/C/man3/pthread_testcancel.3:24
+#, no-wrap
+msgid "2012-04-14"
+msgstr "2012-04-14"
 
 #. type: Plain text
 #: build/C/man3/pthread_testcancel.3:27
 msgid ""
 "pthread_testcancel - request delivery of any pending cancellation request"
-msgstr ""
+msgstr "pthread_testcancel - 処理待ちの取り消し要求の配送を要求する"
 
 #. type: Plain text
 #: build/C/man3/pthread_testcancel.3:32
 #, no-wrap
 msgid "B<void pthread_testcancel(void);>\n"
-msgstr ""
+msgstr "B<void pthread_testcancel(void);>\n"
 
 #. type: Plain text
-#: build/C/man3/pthread_testcancel.3:40
+#: build/C/man3/pthread_testcancel.3:41
 msgid ""
 "Calling B<pthread_testcancel>()  creates a cancellation point within the "
 "calling thread, so that a thread that is otherwise executing code that "
 "contains no cancellation points will respond to a cancellation request."
 msgstr ""
+"B<pthread_testcancel>() を呼び出すと、呼び出したスレッド内に取り消し\n"
+"ポイント (cancellation point) が作成される。\n"
+"これにより、これ以外には取り消しポイントを含まないコードを実行して\n"
+"いるスレッドが取り消し要求に対応することができるようになる。"
 
 #. type: Plain text
-#: build/C/man3/pthread_testcancel.3:47
+#: build/C/man3/pthread_testcancel.3:48
 msgid ""
 "If cancelability is disabled (using B<pthread_setcancelstate>(3)), or no "
-"cancellation request is pending, then a call to B<pthread_cancel>(3)  has no "
-"effect."
+"cancellation request is pending, then a call to B<pthread_testcancel>(3)  "
+"has no effect."
 msgstr ""
+"(B<pthread_setcancelstate>(3) を使って) キャンセルが無効になっている\n"
+"場合や処理待ちの取り消し要求がない場合は、B<pthread_testcancel>(3) を\n"
+"呼び出しても何の影響もない。"
 
 #. type: Plain text
-#: build/C/man3/pthread_testcancel.3:51
+#: build/C/man3/pthread_testcancel.3:52
 msgid ""
 "This function does not return a value.  If the calling thread is canceled as "
 "a consequence of a call to this function, then the function does not return."
 msgstr ""
+"この関数は値を返さない。この関数の呼び出しの結果、呼び出したスレッドが\n"
+"キャンセルされた場合、この関数が返ることはない。"
 
 #. type: Plain text
-#: build/C/man3/pthread_testcancel.3:60
+#: build/C/man3/pthread_testcancel.3:61
 msgid "See B<pthread_cleanup_push>(3)."
-msgstr ""
+msgstr "B<pthread_cleanup_push>(3) を参照。"
 
 #. type: Plain text
-#: build/C/man3/pthread_testcancel.3:65
+#: build/C/man3/pthread_testcancel.3:66
 msgid ""
 "B<pthread_cancel>(3), B<pthread_cleanup_push>(3), B<pthread_setcancelstate>"
 "(3), B<pthreads>(7)"
 msgstr ""
+"B<pthread_cancel>(3), B<pthread_cleanup_push>(3), B<pthread_setcancelstate>"
+"(3), B<pthreads>(7)"
 
 #. type: TH
 #: build/C/man3/pthread_tryjoin_np.3:24
 #, no-wrap
 msgid "PTHREAD_TRYJOIN_NP"
-msgstr ""
+msgstr "PTHREAD_TRYJOIN_NP"
 
 #. type: Plain text
 #: build/C/man3/pthread_tryjoin_np.3:28
@@ -7021,12 +9005,14 @@ msgid ""
 "pthread_tryjoin_np, pthread_timedjoin_np - try to join with a terminated "
 "thread"
 msgstr ""
+"pthread_tryjoin_np, pthread_timedjoin_np - 終了したスレッドの join を\n"
+"試みる"
 
 #. type: Plain text
 #: build/C/man3/pthread_tryjoin_np.3:34
 #, no-wrap
 msgid "B<int pthread_tryjoin_np(pthread_t >I<thread>B<, void **>I<retval>B<);>\n"
-msgstr ""
+msgstr "B<int pthread_tryjoin_np(pthread_t >I<thread>B<, void **>I<retval>B<);>\n"
 
 #. type: Plain text
 #: build/C/man3/pthread_tryjoin_np.3:37
@@ -7035,6 +9021,8 @@ msgid ""
 "B<int pthread_timedjoin_np(pthread_t >I<thread>B<, void **>I<retval>B<,>\n"
 "B<                         const struct timespec *>I<abstime>B<);>\n"
 msgstr ""
+"B<int pthread_timedjoin_np(pthread_t >I<thread>B<, void **>I<retval>B<,>\n"
+"B<                         const struct timespec *>I<abstime>B<);>\n"
 
 #. type: Plain text
 #: build/C/man3/pthread_tryjoin_np.3:44
@@ -7042,6 +9030,8 @@ msgid ""
 "These functions operate in the same way as B<pthread_join>(3), except for "
 "the differences described on this page."
 msgstr ""
+"これらの関数は B<pthread_join>(3) と同じように動作するが、\n"
+"このページで説明する違いがある。"
 
 #. type: Plain text
 #: build/C/man3/pthread_tryjoin_np.3:56
@@ -7051,6 +9041,10 @@ msgid ""
 "I<thread> has not yet terminated, then instead of blocking, as is done by "
 "B<pthread_join>(3), the call returns an error."
 msgstr ""
+"B<pthread_tryjoin_np>() 関数は、スレッド I<thread> の非停止\n"
+"(nonblocking) での join を実行し、スレッドの終了ステータスを\n"
+"I<*retval> に入れて返す。I<thread> がまだ終了していない場合は、\n"
+"B<pthread_join>(3) のように停止 (block) せずに、エラーを返す。"
 
 #. type: Plain text
 #: build/C/man3/pthread_tryjoin_np.3:74
@@ -7062,6 +9056,11 @@ msgid ""
 "structure of the following form, specifying an absolute time measured since "
 "the Epoch (see B<time>(2)):"
 msgstr ""
+"B<pthread_timedjoin_np>() 関数は、タイムアウト付きの join を行う。\n"
+"I<thread> がまだ終了していない場合、 I<abstime> で指定された最大時間\n"
+"まで停止する。 I<thread> が終了する前にタイムアウト時間が経過した場合は、\n"
+"エラーを返す。I<abstime> 引き数は以下に示す構造体であり、\n"
+"Epoch (時刻紀元; B<time>(2) 参照) から測った絶対時刻を指定する。"
 
 #. type: Plain text
 #: build/C/man3/pthread_tryjoin_np.3:81
@@ -7072,12 +9071,18 @@ msgid ""
 "    long   tv_nsec;    /* nanoseconds */\n"
 "};\n"
 msgstr ""
+"struct timespec {\n"
+"    time_t tv_sec;     /* seconds */\n"
+"    long   tv_nsec;    /* nanoseconds */\n"
+"};\n"
 
 #. type: Plain text
 #: build/C/man3/pthread_tryjoin_np.3:87
 msgid ""
 "On success, these functions return 0; on error, they return an error number."
 msgstr ""
+"成功すると、これらの関数は 0 を返す。\n"
+"エラーの場合、エラー番号を返す。"
 
 #. type: Plain text
 #: build/C/man3/pthread_tryjoin_np.3:92
@@ -7085,49 +9090,51 @@ msgid ""
 "These functions can fail with the same errors as B<pthread_join>(3).  "
 "B<pthread_tryjoin_np>()  can in addition fail with the following error:"
 msgstr ""
+"これらの関数は B<pthread_join>(3) と同じエラーで失敗する。\n"
+"B<pthread_tryjoin_np>() はさらに以下のエラーで失敗する場合がある。"
 
 #. type: TP
 #: build/C/man3/pthread_tryjoin_np.3:92
 #, no-wrap
 msgid "B<EBUSY>"
-msgstr ""
+msgstr "B<EBUSY>"
 
 #. type: Plain text
 #: build/C/man3/pthread_tryjoin_np.3:96
 msgid "I<thread> had not yet terminated at the time of the call."
-msgstr ""
+msgstr "呼び出しを行った時点では I<thread> はまだ終了していない。"
 
 #. type: Plain text
 #: build/C/man3/pthread_tryjoin_np.3:99
 msgid ""
 "B<pthread_timedjoin_np>()  can in addition fail with the following error:"
-msgstr ""
+msgstr "B<pthread_timedjoin_np>() はさらに以下のエラーで失敗する場合がある。"
 
 #. type: TP
 #: build/C/man3/pthread_tryjoin_np.3:99
 #, no-wrap
 msgid "B<ETIMEDOUT>"
-msgstr ""
+msgstr "B<ETIMEDOUT>"
 
 #. type: Plain text
 #: build/C/man3/pthread_tryjoin_np.3:104
 msgid "The call timed out before I<thread> terminated."
-msgstr ""
+msgstr "I<thread> が終了する前に呼び出しがタイムアウトとなった。"
 
 #. type: Plain text
 #: build/C/man3/pthread_tryjoin_np.3:108
 msgid "B<pthread_timedjoin_np>()  never returns the error B<EINTR>."
-msgstr ""
+msgstr "B<pthread_timedjoin_np>() がエラー B<EINTR> を返すことはない。"
 
 #. type: Plain text
 #: build/C/man3/pthread_tryjoin_np.3:110
 msgid "These functions first appeared in glibc in version 2.3.3."
-msgstr ""
+msgstr "これらの関数は glibc バージョン 2.3.3 で初めて登場した。"
 
 #. type: Plain text
 #: build/C/man3/pthread_tryjoin_np.3:115
 msgid "The following code waits to join for up to 5 seconds:"
-msgstr ""
+msgstr "以下のコードは、最大 5 秒まで join を待つ。"
 
 #. type: Plain text
 #: build/C/man3/pthread_tryjoin_np.3:119
@@ -7136,12 +9143,14 @@ msgid ""
 "    struct timespec ts;\n"
 "    int s;\n"
 msgstr ""
+"    struct timespec ts;\n"
+"    int s;\n"
 
 #. type: Plain text
 #: build/C/man3/pthread_tryjoin_np.3:121
 #, no-wrap
 msgid "    ...\n"
-msgstr ""
+msgstr "    ...\n"
 
 #. type: Plain text
 #: build/C/man3/pthread_tryjoin_np.3:125
@@ -7151,12 +9160,15 @@ msgid ""
 "\t/* Handle error */\n"
 "    }\n"
 msgstr ""
+"    if (clock_gettime(CLOCK_REALTIME, &ts) == -1) {\n"
+"\t/* Handle error */\n"
+"    }\n"
 
 #. type: Plain text
 #: build/C/man3/pthread_tryjoin_np.3:127
 #, no-wrap
 msgid "    ts.tv_sec += 5;\n"
-msgstr ""
+msgstr "    ts.tv_sec += 5;\n"
 
 #. type: Plain text
 #: build/C/man3/pthread_tryjoin_np.3:132
@@ -7167,29 +9179,34 @@ msgid ""
 "        /* Handle error */\n"
 "    }\n"
 msgstr ""
+"    s = pthread_timedjoin_np(thread, NULL, &ts);\n"
+"    if (s != 0) {\n"
+"        /* Handle error */\n"
+"    }\n"
 
 #. type: Plain text
 #: build/C/man3/pthread_tryjoin_np.3:138
 msgid ""
 "B<clock_gettime>(2), B<pthread_exit>(3), B<pthread_join>(3), B<pthreads>(7)"
 msgstr ""
+"B<clock_gettime>(2), B<pthread_exit>(3), B<pthread_join>(3), B<pthreads>(7)"
 
 #. type: TH
 #: build/C/man3/pthread_yield.3:23
 #, no-wrap
 msgid "PTHREAD_YIELD"
-msgstr ""
+msgstr "PTHREAD_YIELD"
 
 #. type: Plain text
 #: build/C/man3/pthread_yield.3:26
 msgid "pthread_yield - yield the processor"
-msgstr ""
+msgstr "pthread_yield - プロセッサを明け渡す (yield)"
 
 #. type: Plain text
 #: build/C/man3/pthread_yield.3:31
 #, no-wrap
 msgid "B<int pthread_yield(void);>\n"
-msgstr ""
+msgstr "B<int pthread_yield(void);>\n"
 
 #. type: Plain text
 #: build/C/man3/pthread_yield.3:41
@@ -7199,6 +9216,10 @@ msgid ""
 "another thread is scheduled to run.  For further details, see B<sched_yield>"
 "(2)"
 msgstr ""
+"B<pthread_yield>() を呼び出すと、呼び出したスレッドは CPU を手放す。\n"
+"スレッドはそのスレッドの静的優先度の実行キューの末尾に回り、\n"
+"別のスレッドが実行されるようにスケジューリングされる。\n"
+"詳細は B<sched_yield>(2) を参照。"
 
 #. type: Plain text
 #: build/C/man3/pthread_yield.3:46
@@ -7206,6 +9227,8 @@ msgid ""
 "On success, B<pthread_yield>()  returns 0; on error, it returns an error "
 "number."
 msgstr ""
+"成功すると、 B<pthread_yield>() は 0 を返す。\n"
+"エラーの場合、エラー番号を返す。"
 
 #. type: Plain text
 #: build/C/man3/pthread_yield.3:50
@@ -7213,6 +9236,9 @@ msgid ""
 "On Linux, this call always succeeds (but portable and future-proof "
 "applications should nevertheless handle a possible error return)."
 msgstr ""
+"Linux では、この関数の呼び出しは常に成功する\n"
+"(ただし、移植性や将来も動作することを保証したいアプリケーションでは\n"
+"正のエラーの返り値を処理するようにすべきである)。"
 
 #.  e.g., the BSDs, Tru64, AIX, and Irix.
 #. type: Plain text
@@ -7221,11 +9247,14 @@ msgid ""
 "This call is nonstandard, but present on several other systems.  Use the "
 "standardized B<sched_yield>(2)  instead."
 msgstr ""
+"この関数は非標準だが、他のいくつかのシステムにも存在する。\n"
+"代わりに、標準化されている B<sched_yield>(2) を使うこと。"
 
 #. type: Plain text
 #: build/C/man3/pthread_yield.3:59
 msgid "On Linux, this function is implemented as a call to B<sched_yield>(2)."
 msgstr ""
+"Linux では、この関数は B<sched_yield>(2) を呼び出す形で実装されている。"
 
 #. type: Plain text
 #: build/C/man3/pthread_yield.3:63
@@ -7240,10 +9269,9 @@ msgstr "PTHREADS"
 
 #. type: TH
 #: build/C/man7/pthreads.7:24
-#, fuzzy, no-wrap
-#| msgid "2008-11-11"
+#, no-wrap
 msgid "2010-11-14"
-msgstr "2008-11-11"
+msgstr "2010-11-14"
 
 #. type: Plain text
 #: build/C/man7/pthreads.7:27
@@ -7690,10 +9718,9 @@ msgstr ""
 
 #. type: SS
 #: build/C/man7/pthreads.7:234
-#, fuzzy, no-wrap
-#| msgid "Thread-safe functions"
+#, no-wrap
 msgid "Async-cancel-safe functions"
-msgstr "スレッドセーフな関数"
+msgstr "async-cancel-safe 関数"
 
 #. type: Plain text
 #: build/C/man7/pthreads.7:238
@@ -7702,19 +9729,19 @@ msgid ""
 "application where asynchronous cancelability is enabled (see "
 "B<pthread_setcancelstate>(3))."
 msgstr ""
+"async-cancel-safe 関数は、\n"
+"非同期キャンセル機能が有効になっているアプリケーションで\n"
+"安全に呼び出すことができる関数のことである\n"
+"(B<pthread_setcancelstate>(3) を参照)。"
 
 #. type: Plain text
 #: build/C/man7/pthreads.7:241
-#, fuzzy
-#| msgid ""
-#| "The following functions are required to be cancellation points by "
-#| "POSIX.1-2001 and/or POSIX.1-2008:"
 msgid ""
 "Only the following functions are required to be async-cancel-safe by "
 "POSIX.1-2001 and POSIX.1-2008:"
 msgstr ""
-"POSIX.1-2001 と POSIX.1-2008 の両方、もしくはいずれか一方では、 以下の関数"
-"ã\81¯ã\80\81å\8f\96ã\82\8aæ¶\88ã\81\97ã\83\9dã\82¤ã\83³ã\83\88 (cancellation points) ã\81§ ã\81\82ã\82\8bã\81\93ã\81¨ã\81\8cå¿\85é \88ã\81¨ã\81ªã\81£ている。"
+"以下の関数だけが、POSIX.1-2001 と POSIX.1-2008 で async-cancel-safe で\n"
+"ã\81ªã\81\91ã\82\8cã\81°ã\81ªã\82\89ã\81ªã\81\84ã\81¨ã\81\95ã\82\8cている。"
 
 #. type: Plain text
 #: build/C/man7/pthreads.7:247
@@ -7724,6 +9751,9 @@ msgid ""
 "pthread_setcancelstate()\n"
 "pthread_setcanceltype()\n"
 msgstr ""
+"pthread_cancel()\n"
+"pthread_setcancelstate()\n"
+"pthread_setcanceltype()\n"
 
 #. type: SS
 #: build/C/man7/pthreads.7:249
@@ -8486,8 +10516,8 @@ msgid ""
 "This is the original Pthreads implementation.  Since glibc 2.4, this "
 "implementation is no longer supported."
 msgstr ""
-"最初の Pthreads の実装。 glibc 2.4 以降は、この実装はもはやサポートされていな"
-"い。"
+"最初の Pthreads の実装。\n"
+"glibc 2.4 以降は、この実装はもはやサポートされていない。"
 
 #. type: TP
 #: build/C/man7/pthreads.7:663
@@ -8515,8 +10545,8 @@ msgid ""
 "Both of these are so-called 1:1 implementations, meaning that each thread "
 "maps to a kernel scheduling entity.  Both threading implementations employ "
 "the Linux B<clone>(2)  system call.  In NPTL, thread synchronization "
-"primitives (mutexes, thread joining, etc.) are implemented using the Linux "
-"B<futex>(2)  system call."
+"primitives (mutexes, thread joining, and so on) are implemented using the "
+"Linux B<futex>(2)  system call."
 msgstr ""
 "どちらの実装もいわゆる 1:1 実装、すなわち個々のスレッドが カーネルのスケ"
 "ジューリング実体にマッピングされる。 どちらのスレッドの実装も Linux の "
@@ -8910,16 +10940,6 @@ msgstr ""
 
 #. type: Plain text
 #: build/C/man7/pthreads.7:927
-#, fuzzy
-#| msgid ""
-#| "and various Pthreads manual pages, for example: B<pthread_attr_init>(3), "
-#| "B<pthread_atfork>(3), B<pthread_cancel>(3), B<pthread_cleanup_push>(3), "
-#| "B<pthread_cond_signal>(3), B<pthread_cond_wait>(3), B<pthread_create>(3), "
-#| "B<pthread_detach>(3), B<pthread_equal>(3), B<pthread_exit>(3), "
-#| "B<pthread_key_create>(3), B<pthread_kill>(3), B<pthread_mutex_lock>(3), "
-#| "B<pthread_mutex_unlock>(3), B<pthread_once>(3), B<pthread_setcancelstate>"
-#| "(3), B<pthread_setcanceltype>(3), B<pthread_setspecific>(3), "
-#| "B<pthread_sigmask>(3), and B<pthread_testcancel>(3)"
 msgid ""
 "and various Pthreads manual pages, for example: B<pthread_attr_init>(3), "
 "B<pthread_atfork>(3), B<pthread_cancel>(3), B<pthread_cleanup_push>(3), "
@@ -8930,14 +10950,12 @@ msgid ""
 "(3), B<pthread_setcanceltype>(3), B<pthread_setspecific>(3), "
 "B<pthread_sigmask>(3), B<pthread_sigqueue>(3), and B<pthread_testcancel>(3)"
 msgstr ""
-"および Pthreads の各種マニュアルページ、例えば: B<pthread_attr_init>(3), "
-"B<pthread_atfork>(3), B<pthread_cancel>(3), B<pthread_cleanup_push>(3), "
-"B<pthread_cond_signal>(3), B<pthread_cond_wait>(3), B<pthread_create>(3), "
-"B<pthread_detach>(3), B<pthread_equal>(3), B<pthread_exit>(3), "
-"B<pthread_key_create>(3), B<pthread_kill>(3), B<pthread_mutex_lock>(3), "
-"B<pthread_mutex_unlock>(3), B<pthread_once>(3), B<pthread_setcancelstate>"
-"(3), B<pthread_setcanceltype>(3), B<pthread_setspecific>(3), "
-"B<pthread_sigmask>(3), B<pthread_testcancel>(3)"
-
-#~ msgid "2008-11-18"
-#~ msgstr "2008-11-18"
+"および Pthreads の各種マニュアルページ、例えば: B<pthread_attr_init>(3),\n"
+"B<pthread_atfork>(3), B<pthread_cancel>(3), B<pthread_cleanup_push>(3),\n"
+"B<pthread_cond_signal>(3), B<pthread_cond_wait>(3), B<pthread_create>(3),\n"
+"B<pthread_detach>(3), B<pthread_equal>(3), B<pthread_exit>(3),\n"
+"B<pthread_key_create>(3), B<pthread_kill>(3), B<pthread_mutex_lock>(3),\n"
+"B<pthread_mutex_unlock>(3), B<pthread_once>(3),\n"
+"B<pthread_setcancelstate>(3), B<pthread_setcanceltype>(3),\n"
+"B<pthread_setspecific>(3), B<pthread_sigmask>(3), B<pthread_sigqueue>(3),\n"
+"and B<pthread_testcancel>(3)"