OSDN Git Service

LDP: Address fuzzy changes (semaphore)
authorAkihiro Motoki <amotoki@gmail.com>
Thu, 1 Apr 2021 06:43:57 +0000 (15:43 +0900)
committerAkihiro Motoki <amotoki@gmail.com>
Thu, 1 Apr 2021 06:43:57 +0000 (15:43 +0900)
manual/LDP_man-pages/po4a/semaphore/po/ja.po
manual/LDP_man-pages/stats/semaphore
manual/LDP_man-pages/untrans.html

index 60ccd75..9551528 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: PACKAGE VERSION\n"
 "POT-Creation-Date: 2021-03-12 14:01+0900\n"
-"PO-Revision-Date: 2021-03-26 13:51+0900\n"
+"PO-Revision-Date: 2021-04-01 14:26+0900\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: LANGUAGE <LL@li.org>\n"
 "Language: \n"
@@ -27,7 +27,7 @@ msgstr "SEM_CLOSE"
 #: build/C/man3/sem_post.3:25 build/C/man3/sem_unlink.3:25
 #, no-wrap
 msgid "2020-08-13"
-msgstr ""
+msgstr "2020-08-13"
 
 #. type: TH
 #: build/C/man3/sem_close.3:25 build/C/man3/sem_destroy.3:25
@@ -251,10 +251,8 @@ msgstr "準拠"
 #: build/C/man3/sem_close.3:68 build/C/man3/sem_destroy.3:79
 #: build/C/man3/sem_getvalue.3:81 build/C/man3/sem_open.3:184
 #: build/C/man3/sem_unlink.3:75 build/C/man3/sem_wait.3:158
-#, fuzzy
-#| msgid "SVr4, POSIX.1-2001."
 msgid "POSIX.1-2001, POSIX.1-2008."
-msgstr "SVr4, POSIX.1-2001."
+msgstr "POSIX.1-2001, POSIX.1-2008."
 
 #. type: SH
 #: build/C/man3/sem_close.3:68 build/C/man3/sem_destroy.3:79
@@ -384,7 +382,7 @@ msgstr ""
 #: build/C/man3/sem_destroy.3:75
 #, no-wrap
 msgid "B<sem_destroy>()"
-msgstr ""
+msgstr "B<sem_destroy>()"
 
 #.  But not on NPTL, where sem_destroy () is a no-op..
 #. type: Plain text
@@ -412,10 +410,9 @@ msgstr "SEM_GETVALUE"
 #. type: TH
 #: build/C/man3/sem_getvalue.3:25 build/C/man7/sem_overview.7:25
 #: build/C/man3/sem_wait.3:25
-#, fuzzy, no-wrap
-#| msgid "2013-06-03"
+#, no-wrap
 msgid "2020-06-09"
-msgstr "2013-06-03"
+msgstr "2020-06-09"
 
 #. type: Plain text
 #: build/C/man3/sem_getvalue.3:28
@@ -439,25 +436,13 @@ msgstr ""
 
 #. type: Plain text
 #: build/C/man3/sem_getvalue.3:53
-#, fuzzy
-#| msgid ""
-#| "If one or more processes or threads are blocked waiting to lock the "
-#| "semaphore with B<sem_wait>(3), POSIX.1-2001 permits two possibilities for "
-#| "the value returned in I<sval>: either 0 is returned; or a negative number "
-#| "whose absolute value is the count of the number of processes and threads "
-#| "currently blocked in B<sem_wait>(3).  Linux adopts the former behavior."
 msgid ""
 "If one or more processes or threads are blocked waiting to lock the "
 "semaphore with B<sem_wait>(3), POSIX.1 permits two possibilities for the "
 "value returned in I<sval>: either 0 is returned; or a negative number whose "
 "absolute value is the count of the number of processes and threads currently "
 "blocked in B<sem_wait>(3).  Linux adopts the former behavior."
-msgstr ""
-"POSIX.1-2001 によると、 1つ以上のプロセスかスレッドが B<sem_wait>(3)  でセマ"
-"フォのロック待ちで停止している場合、 I<sval> で返される値は 0 もしくは負の値"
-"のいずれかとなる。 負の値の場合、その絶対値は B<sem_wait>(3)  で現在停止して"
-"いるプロセスかスレッドの合計数に等しい。 Linux は前者の動作 (0 を返す動作) を"
-"採用している。"
+msgstr "POSIX.1 によると、 1つ以上のプロセスかスレッドが B<sem_wait>(3)  でセマフォのロック待ちで停止している場合、 I<sval> で返される値は 0 もしくは負の値のいずれかとなる。 負の値の場合、その絶対値は B<sem_wait>(3)  で現在停止しているプロセスかスレッドの合計数に等しい。 Linux は前者の動作 (0 を返す動作) を採用している。"
 
 #. type: Plain text
 #: build/C/man3/sem_getvalue.3:59
@@ -479,7 +464,7 @@ msgstr ""
 #: build/C/man3/sem_getvalue.3:77
 #, no-wrap
 msgid "B<sem_getvalue>()"
-msgstr ""
+msgstr "B<sem_getvalue>()"
 
 #. type: Plain text
 #: build/C/man3/sem_getvalue.3:85
@@ -598,10 +583,9 @@ msgstr ""
 
 #. type: tbl table
 #: build/C/man3/sem_init.3:104
-#, fuzzy, no-wrap
-#| msgid "See B<sem_wait>(3)."
+#, no-wrap
 msgid "B<sem_init>()"
-msgstr "B<sem_wait>(3)  参照。"
+msgstr "B<sem_init>()"
 
 #. type: Plain text
 #: build/C/man3/sem_init.3:108 build/C/man3/sem_post.3:74
@@ -623,17 +607,14 @@ msgstr ""
 #: build/C/man3/sem_init.3:113 build/C/man7/sem_overview.7:146
 #: build/C/man3/sem_post.3:78 build/C/man3/sem_wait.3:158
 #: build/C/man2/semctl.2:645 build/C/man2/semget.2:316 build/C/man2/semop.2:520
-#, fuzzy, no-wrap
-#| msgid "EXAMPLE"
+#, no-wrap
 msgid "EXAMPLES"
 msgstr "例"
 
 #. type: Plain text
 #: build/C/man3/sem_init.3:118
-#, fuzzy
-#| msgid "See B<sem_wait>(3)."
 msgid "See B<shm_open>(3)  and B<sem_wait>(3)."
-msgstr "B<sem_wait>(3)  参照。"
+msgstr "B<sem_open>(3) と B<sem_wait>(3) を参照。"
 
 #. type: Plain text
 #: build/C/man3/sem_init.3:123
@@ -665,18 +646,14 @@ msgstr ""
 
 #. type: Plain text
 #: build/C/man3/sem_open.3:37
-#, fuzzy, no-wrap
-#| msgid ""
-#| "B<sem_t *sem_open(const char *>I<name>B<, int >I<oflag>B<);>\n"
-#| "B<sem_t *sem_open(const char *>I<name>B<, int >I<oflag>B<, >\n"
-#| "B<                mode_t >I<mode>B<, unsigned int >I<value>B<);>\n"
+#, no-wrap
 msgid ""
 "B<sem_t *sem_open(const char *>I<name>B<, int >I<oflag>B<);>\n"
 "B<sem_t *sem_open(const char *>I<name>B<, int >I<oflag>B<,>\n"
 "B<                mode_t >I<mode>B<, unsigned int >I<value>B<);>\n"
 msgstr ""
 "B<sem_t *sem_open(const char *>I<name>B<, int >I<oflag>B<);>\n"
-"B<sem_t *sem_open(const char *>I<name>B<, int >I<oflag>B<, >\n"
+"B<sem_t *sem_open(const char *>I<name>B<, int >I<oflag>B<,>\n"
 "B<                mode_t >I<mode>B<, unsigned int >I<value>B<);>\n"
 
 #. type: Plain text
@@ -795,12 +772,10 @@ msgstr "B<EMFILE>"
 
 #. type: Plain text
 #: build/C/man3/sem_open.3:143
-#, fuzzy
-#| msgid "The system limit on the total number of open files has been reached."
 msgid ""
 "The per-process limit on the number of open file descriptors has been "
 "reached."
-msgstr "オープンされたファイル総数がシステム全体での上限に達している。"
+msgstr "オープンされたファイルディスクリプターの総数がプロセス単位の上限に達している。"
 
 #. type: TP
 #: build/C/man3/sem_open.3:143 build/C/man3/sem_unlink.3:53
@@ -821,8 +796,6 @@ msgstr "B<ENFILE>"
 
 #. type: Plain text
 #: build/C/man3/sem_open.3:150
-#, fuzzy
-#| msgid "The system limit on the total number of open files has been reached."
 msgid ""
 "The system-wide limit on the total number of open files has been reached."
 msgstr "オープンされたファイル総数がシステム全体での上限に達している。"
@@ -862,7 +835,7 @@ msgstr "十分なメモリーがない。"
 #: build/C/man3/sem_open.3:179
 #, no-wrap
 msgid "B<sem_open>()"
-msgstr ""
+msgstr "B<sem_open>()"
 
 #. type: Plain text
 #: build/C/man3/sem_open.3:191
@@ -1111,19 +1084,11 @@ msgstr ""
 
 #. type: Plain text
 #: build/C/man7/sem_overview.7:160
-#, fuzzy
-#| msgid ""
-#| "B<sem_close>(3), B<sem_destroy>(3), B<sem_getvalue>(3), B<sem_init>(3), "
-#| "B<sem_open>(3), B<sem_post>(3), B<sem_unlink>(3), B<sem_wait>(3), "
-#| "B<pthreads>(7)"
 msgid ""
 "B<sem_close>(3), B<sem_destroy>(3), B<sem_getvalue>(3), B<sem_init>(3), "
 "B<sem_open>(3), B<sem_post>(3), B<sem_unlink>(3), B<sem_wait>(3), "
 "B<pthreads>(7), B<shm_overview>(7)"
-msgstr ""
-"B<sem_close>(3), B<sem_destroy>(3), B<sem_getvalue>(3), B<sem_init>(3), "
-"B<sem_open>(3), B<sem_post>(3), B<sem_unlink>(3), B<sem_wait>(3), "
-"B<pthreads>(7)"
+msgstr "B<sem_close>(3), B<sem_destroy>(3), B<sem_getvalue>(3), B<sem_init>(3), B<sem_open>(3), B<sem_post>(3), B<sem_unlink>(3), B<sem_wait>(3), B<pthreads>(7), B<shm_overview>(7)"
 
 #. type: TH
 #: build/C/man3/sem_post.3:25
@@ -1177,10 +1142,9 @@ msgstr "一つのセマフォで使用できる最大値を超えてしまうと
 
 #. type: tbl table
 #: build/C/man3/sem_post.3:70
-#, fuzzy, no-wrap
-#| msgid "See B<sem_wait>(3)."
+#, no-wrap
 msgid "B<sem_post>()"
-msgstr "B<sem_wait>(3)  参照。"
+msgstr "B<sem_post>()"
 
 #. type: Plain text
 #: build/C/man3/sem_post.3:78
@@ -1193,18 +1157,14 @@ msgstr ""
 
 #. type: Plain text
 #: build/C/man3/sem_post.3:83
-#, fuzzy
-#| msgid "See B<sem_wait>(3)."
 msgid "See B<sem_wait>(3)  and B<shm_open>(3)."
-msgstr "B<sem_wait>(3)  参照。"
+msgstr "B<sem_wait>(3) と B<sem_open>(3) を参照。"
 
 #. type: Plain text
 #: build/C/man3/sem_post.3:88
-#, fuzzy
-#| msgid "B<sem_getvalue>(3), B<sem_wait>(3), B<sem_overview>(7)"
 msgid ""
 "B<sem_getvalue>(3), B<sem_wait>(3), B<sem_overview>(7), B<signal-safety>(7)"
-msgstr "B<sem_getvalue>(3), B<sem_wait>(3), B<sem_overview>(7)"
+msgstr "B<sem_getvalue>(3), B<sem_wait>(3), B<sem_overview>(7), B<signal-safety>(7)"
 
 #. type: TH
 #: build/C/man3/sem_unlink.3:25
@@ -1257,7 +1217,7 @@ msgstr "指定された名前 I<name> のセマフォが存在しない。"
 #: build/C/man3/sem_unlink.3:71
 #, no-wrap
 msgid "B<sem_unlink>()"
-msgstr ""
+msgstr "B<sem_unlink>()"
 
 #. type: Plain text
 #: build/C/man3/sem_unlink.3:81
@@ -1305,14 +1265,8 @@ msgstr "glibc 向けの機能検査マクロの要件 (B<feature_test_macros>(7)
 
 #. type: Plain text
 #: build/C/man3/sem_wait.3:48
-#, fuzzy
-#| msgid ""
-#| "B<sem_timedwait>(): _POSIX_C_SOURCE\\ E<gt>=\\ 200112L || _XOPEN_SOURCE\\ "
-#| "E<gt>=\\ 600"
 msgid "B<sem_timedwait>(): _POSIX_C_SOURCE\\ E<gt>=\\ 200112L"
-msgstr ""
-"B<sem_timedwait>(): _POSIX_C_SOURCE\\ E<gt>=\\ 200112L || _XOPEN_SOURCE\\ "
-"E<gt>=\\ 600"
+msgstr "B<sem_timedwait>(): _POSIX_C_SOURCE\\ E<gt>=\\ 200112L"
 
 #. type: Plain text
 #: build/C/man3/sem_wait.3:58
@@ -1464,13 +1418,15 @@ msgstr "セマフォのロックに成功する前に時間切れとなった。
 
 #. type: tbl table
 #: build/C/man3/sem_wait.3:154
-#, fuzzy, no-wrap
-#| msgid "B<sem_post>(3), B<sem_wait>(3), B<sem_overview>(7)"
+#, no-wrap
 msgid ""
 "B<sem_wait>(),\n"
 "B<sem_trywait>(),\n"
 "B<sem_timedwait>()"
-msgstr "B<sem_post>(3), B<sem_wait>(3), B<sem_overview>(7)"
+msgstr ""
+"B<sem_wait>(),\n"
+"B<sem_trywait>(),\n"
+"B<sem_timedwait>()"
 
 #. type: Plain text
 #: build/C/man3/sem_wait.3:176
@@ -1742,10 +1698,9 @@ msgstr "SEMCTL"
 
 #. type: TH
 #: build/C/man2/semctl.2:42
-#, fuzzy, no-wrap
-#| msgid "2014-12-31"
+#, no-wrap
 msgid "2020-12-21"
-msgstr "2014-12-31"
+msgstr "2020-12-21"
 
 #. type: Plain text
 #: build/C/man2/semctl.2:45
@@ -1823,14 +1778,7 @@ msgstr ""
 
 #. type: Plain text
 #: build/C/man2/semctl.2:95
-#, fuzzy, no-wrap
-#| msgid ""
-#| "struct semid_ds {\n"
-#| "    struct ipc_perm sem_perm;  /* Ownership and permissions */\n"
-#| "    time_t          sem_otime; /* Last semop time */\n"
-#| "    time_t          sem_ctime; /* Last change time */\n"
-#| "    unsigned long   sem_nsems; /* No. of semaphores in set */\n"
-#| "};\n"
+#, no-wrap
 msgid ""
 "struct semid_ds {\n"
 "    struct ipc_perm sem_perm;  /* Ownership and permissions */\n"
@@ -1843,7 +1791,8 @@ msgstr ""
 "struct semid_ds {\n"
 "    struct ipc_perm sem_perm;  /* 所有権と許可 */\n"
 "    time_t          sem_otime; /* 最後の semop の時刻 */\n"
-"    time_t          sem_ctime; /* 最後に変更が行われた時刻 */\n"
+"    time_t          sem_ctime; /* 作成時刻/semctl() により\n"
+"                                  最後に変更が行われた時刻 */\n"
 "    unsigned long   sem_nsems; /* 集合内のセマフォの数 */\n"
 "};\n"
 
@@ -1856,7 +1805,7 @@ msgstr ""
 #: build/C/man2/semctl.2:101
 #, no-wrap
 msgid "I<sem_perm>"
-msgstr ""
+msgstr "I<sem_perm>"
 
 #. type: Plain text
 #: build/C/man2/semctl.2:107
@@ -1867,10 +1816,9 @@ msgstr ""
 
 #. type: TP
 #: build/C/man2/semctl.2:107
-#, fuzzy, no-wrap
-#| msgid "I<sem_otime> is set to 0."
+#, no-wrap
 msgid "I<sem_otime>"
-msgstr "I<sem_otime> に 0 を設定する。"
+msgstr "I<sem_otime>"
 
 #. type: Plain text
 #: build/C/man2/semctl.2:112
@@ -1881,7 +1829,7 @@ msgstr ""
 #: build/C/man2/semctl.2:112
 #, no-wrap
 msgid "I<sem_ctime>"
-msgstr ""
+msgstr "I<sem_ctime>"
 
 #. type: Plain text
 #: build/C/man2/semctl.2:121
@@ -1892,10 +1840,9 @@ msgstr ""
 
 #. type: TP
 #: build/C/man2/semctl.2:121
-#, fuzzy, no-wrap
-#| msgid "sem_t sem;\n"
+#, no-wrap
 msgid "I<sem_nsems>"
-msgstr "sem_t sem;\n"
+msgstr "I<sem_nsems>"
 
 #. type: Plain text
 #: build/C/man2/semctl.2:129
@@ -1949,7 +1896,7 @@ msgstr ""
 #: build/C/man2/semctl.2:158
 #, no-wrap
 msgid "0400"
-msgstr ""
+msgstr "0400"
 
 #. type: tbl table
 #: build/C/man2/semctl.2:158
@@ -1961,7 +1908,7 @@ msgstr ""
 #: build/C/man2/semctl.2:159
 #, no-wrap
 msgid "0200"
-msgstr ""
+msgstr "0200"
 
 #. type: tbl table
 #: build/C/man2/semctl.2:159
@@ -1973,7 +1920,7 @@ msgstr ""
 #: build/C/man2/semctl.2:160
 #, no-wrap
 msgid "0040"
-msgstr ""
+msgstr "0040"
 
 #. type: tbl table
 #: build/C/man2/semctl.2:160
@@ -1985,7 +1932,7 @@ msgstr ""
 #: build/C/man2/semctl.2:161
 #, no-wrap
 msgid "0020"
-msgstr ""
+msgstr "0020"
 
 #. type: tbl table
 #: build/C/man2/semctl.2:161
@@ -1997,7 +1944,7 @@ msgstr ""
 #: build/C/man2/semctl.2:162
 #, no-wrap
 msgid "0004"
-msgstr ""
+msgstr "0004"
 
 #. type: tbl table
 #: build/C/man2/semctl.2:162
@@ -2009,7 +1956,7 @@ msgstr ""
 #: build/C/man2/semctl.2:163
 #, no-wrap
 msgid "0002"
-msgstr ""
+msgstr "0002"
 
 #. type: tbl table
 #: build/C/man2/semctl.2:163
@@ -2209,10 +2156,9 @@ msgstr ""
 
 #. type: TP
 #: build/C/man2/semctl.2:297
-#, fuzzy, no-wrap
-#| msgid "B<SEM_STAT> (Linux-specific)"
+#, no-wrap
 msgid "B<SEM_STAT_ANY> (Linux-specific, since Linux 4.17)"
-msgstr "B<SEM_STAT> (Linux 固有)"
+msgstr "B<SEM_STAT_ANY> (Linux 固有, Linux 4.17 以降)"
 
 #. type: Plain text
 #: build/C/man2/semctl.2:310
@@ -2271,21 +2217,12 @@ msgstr "B<GETPID>"
 
 #. type: Plain text
 #: build/C/man2/semctl.2:340
-#, fuzzy
-#| msgid ""
-#| "Return the value of B<sempid> for the I<semnum>-th semaphore of the set "
-#| "(i.e., the PID of the process that executed the last B<semop>(2)  call "
-#| "for the I<semnum>-th semaphore of the set).  The calling process must "
-#| "have read permission on the semaphore set."
 msgid ""
 "Return the B<sempid> value for the I<semnum>-th semaphore of the set.  This "
 "is the PID of the process that last performed an operation on that semaphore "
 "(but see NOTES).  The calling process must have read permission on the "
 "semaphore set."
-msgstr ""
-"集合の I<semnum> 番目のセマフォの B<sempid> の値 (集合の I<semnum> 番目のセマ"
-"フォに最後に B<semop>(2)  コールを実行したプロセスの PID) を返す。 呼び出した"
-"プロセスはそのセマフォ集合に読み込み許可を持たなければならない。"
+msgstr "集合の I<semnum> 番目のセマフォの B<sempid> の値を返す。この値は、そのセマフォに対して最後に操作を行ったプロセスの PID である (ただし「バグ」を参照)。呼び出したプロセスはそのセマフォ集合に読み込み許可を持たなければならない。"
 
 #. type: TP
 #: build/C/man2/semctl.2:340 build/C/man2/semctl.2:416
@@ -2295,17 +2232,11 @@ msgstr "B<GETVAL>"
 
 #. type: Plain text
 #: build/C/man2/semctl.2:348
-#, fuzzy
-#| msgid ""
-#| "Return the value of B<semval> for the I<semnum>-th semaphore of the set.  "
-#| "The calling process must have read permission on the semaphore set."
 msgid ""
 "Return B<semval> (i.e., the semaphore value) for the I<semnum>-th semaphore "
 "of the set.  The calling process must have read permission on the semaphore "
 "set."
-msgstr ""
-"集合の I<semnum> 番目のセマフォの B<semval> の値を返す。 呼び出したプロセスは"
-"そのセマフォ集合に読み込み許可を持たなければならない。"
+msgstr "集合の I<semnum> 番目のセマフォの B<semval> (セマフォの値) を返す。 呼び出したプロセスはそのセマフォ集合に読み込み許可を持たなければならない。"
 
 #. type: TP
 #: build/C/man2/semctl.2:348 build/C/man2/semctl.2:420
@@ -2315,20 +2246,11 @@ msgstr "B<GETZCNT>"
 
 #. type: Plain text
 #: build/C/man2/semctl.2:357
-#, fuzzy
-#| msgid ""
-#| "Return the value of B<semzcnt> for the I<semnum>-th semaphore of the set "
-#| "(i.e., the number of processes waiting for B<semval> of the I<semnum>-th "
-#| "semaphore of the set to become 0).  The calling process must have read "
-#| "permission on the semaphore set."
 msgid ""
 "Return the B<semzcnt> value for the I<semnum>-th semaphore of the set (i.e., "
 "the number of processes waiting for the semaphore value to become 0).  The "
 "calling process must have read permission on the semaphore set."
-msgstr ""
-"集合の I<semnum> 番目のセマフォの B<semzcnt> の値を返す (集合の I<semnum> 番"
-"目のセマフォの B<semval> の値が 0 になるのを待っているプロセスの数を返す)。 "
-"呼び出したプロセスはそのセマフォ集合に読み込み許可を持たなければならない。"
+msgstr "集合の I<semnum> 番目のセマフォの B<semzcnt> の値 (つまり、そのセマフォの値が 0 になるのを待っているプロセスの数) を返す。呼び出したプロセスはそのセマフォ集合に読み込み許可を持たなければならない。"
 
 #. type: TP
 #: build/C/man2/semctl.2:357
@@ -2338,15 +2260,6 @@ msgstr "B<SETALL>"
 
 #. type: Plain text
 #: build/C/man2/semctl.2:379
-#, fuzzy
-#| msgid ""
-#| "Set B<semval> for all semaphores of the set using I<arg.array>, updating "
-#| "also the I<sem_ctime> member of the I<semid_ds> structure associated with "
-#| "the set.  Undo entries (see B<semop>(2))  are cleared for altered "
-#| "semaphores in all processes.  If the changes to semaphore values would "
-#| "permit blocked B<semop>(2)  calls in other processes to proceed, then "
-#| "those processes are woken up.  The argument I<semnum> is ignored.  The "
-#| "calling process must have alter (write) permission on the semaphore set."
 msgid ""
 "Set the B<semval> values for all semaphores of the set using I<arg.array>, "
 "updating also the I<sem_ctime> member of the I<semid_ds> structure "
@@ -2355,14 +2268,7 @@ msgid ""
 "would permit blocked B<semop>(2)  calls in other processes to proceed, then "
 "those processes are woken up.  The argument I<semnum> is ignored.  The "
 "calling process must have alter (write) permission on the semaphore set."
-msgstr ""
-"集合の全てのセマフォの B<semval> に I<arg.array> で指定された値を設定する。 "
-"その集合に関連する I<semid_ds> 構造体の I<sem_ctime> メンバーの値も更新す"
-"る。 全てのプロセスのセマフォの変更についてのアンドゥエントリー "
-"(B<semop>(2)  を参照) は消去 (clear) される。 セマフォの値の変更により、他の"
-"プロセス内でブロックされている B<semop>(2)  コールの続行が許可されると、それ"
-"らのプロセスは起こされる (wake up)。 I<semnum> 引き数は無視される。 呼び出し"
-"たプロセスはそのセマフォ集合に 変更 (書き込み) 許可を持たなければならない。"
+msgstr "集合の全てのセマフォの B<semval> 値に I<arg.array> で指定された値を設定する。 その集合に関連する I<semid_ds> 構造体の I<sem_ctime> メンバーの値も更新する。 全てのプロセスのセマフォの変更についてのアンドゥエントリー (B<semop>(2)  を参照) は消去 (clear) される。 セマフォの値の変更により、他のプロセス内でブロックされている B<semop>(2)  コールの続行が許可されると、それらのプロセスは起こされる (wake up)。 I<semnum> 引き数は無視される。 呼び出したプロセスはそのセマフォ集合に 変更 (書き込み) 許可を持たなければならない。"
 
 #. type: TP
 #: build/C/man2/semctl.2:379
@@ -2372,15 +2278,6 @@ msgstr "B<SETVAL>"
 
 #. type: Plain text
 #: build/C/man2/semctl.2:397
-#, fuzzy
-#| msgid ""
-#| "Set the value of B<semval> to I<arg.val> for the I<semnum>-th semaphore "
-#| "of the set, updating also the I<sem_ctime> member of the I<semid_ds> "
-#| "structure associated with the set.  Undo entries are cleared for altered "
-#| "semaphores in all processes.  If the changes to semaphore values would "
-#| "permit blocked B<semop>(2)  calls in other processes to proceed, then "
-#| "those processes are woken up.  The calling process must have alter "
-#| "permission on the semaphore set."
 msgid ""
 "Set the semaphore value B<(>semvalB<)> to I<arg.val> for the I<semnum>-th "
 "semaphore of the set, updating also the I<sem_ctime> member of the "
@@ -2389,13 +2286,7 @@ msgid ""
 "would permit blocked B<semop>(2)  calls in other processes to proceed, then "
 "those processes are woken up.  The calling process must have alter "
 "permission on the semaphore set."
-msgstr ""
-"集合の I<semnum> 番目のセマフォの B<semval> に I<arg.val> の値を設定する。そ"
-"の集合に関連する I<semid_ds> 構造体の I<sem_ctime> メンバーの値も更新する。 "
-"全てのプロセスのセマフォの変更についてのアンドゥエントリーは消去される。 セマ"
-"フォの値の変更により、他のプロセス内でブロックされている B<semop>(2)  コール"
-"の続行が許可されると、それらのプロセスは起こされる (wake up)。 呼び出したプロ"
-"セスはそのセマフォ集合に 変更 (書き込み) 許可を持たなければならない。"
+msgstr "集合の I<semnum> 番目のセマフォのセマフォ地 (B<semval>) に I<arg.val> の値を設定する。その集合に関連する I<semid_ds> 構造体の I<sem_ctime> メンバーの値も更新する。 全てのプロセスのセマフォの変更についてのアンドゥエントリーは消去される。 セマフォの値の変更により、他のプロセス内でブロックされている B<semop>(2)  コールの続行が許可されると、それらのプロセスは起こされる (wake up)。 呼び出したプロセスはそのセマフォ集合に 変更 (書き込み) 許可を持たなければならない。"
 
 #. type: Plain text
 #: build/C/man2/semctl.2:404
@@ -2438,21 +2329,12 @@ msgstr "B<IPC_INFO>"
 
 #. type: Plain text
 #: build/C/man2/semctl.2:434
-#, fuzzy
-#| msgid ""
-#| "the index of the highest used entry in the kernel's internal array "
-#| "recording information about all semaphore sets.  (This information can be "
-#| "used with repeated B<SEM_STAT> operations to obtain information about all "
-#| "semaphore sets on the system.)"
 msgid ""
 "the index of the highest used entry in the kernel's internal array recording "
 "information about all semaphore sets.  (This information can be used with "
 "repeated B<SEM_STAT> or B<SEM_STAT_ANY> operations to obtain information "
 "about all semaphore sets on the system.)"
-msgstr ""
-"全てのセマフォ集合に関する情報を管理しているカーネルの内部配列の使用中 エント"
-"リーのインデックスの最大値 (この情報は、システムの全てのセマフォ集合に関する"
-"情報を取得するために B<SEM_STAT> 操作を繰り返し実行する際に使用できる)"
+msgstr "全てのセマフォ集合に関する情報を管理しているカーネルの内部配列の使用中 エントリーのインデックスの最大値 (この情報は、システムの全てのセマフォ集合に関する情報を取得するために操作 B<SEM_STAT> や B<SEM_STAT_ANY> を繰り返し実行する際に使用できる)"
 
 #. type: TP
 #: build/C/man2/semctl.2:434
@@ -2478,17 +2360,14 @@ msgstr "I<semid> で指定されたインデックスを持つセマフォ集合
 
 #. type: TP
 #: build/C/man2/semctl.2:442
-#, fuzzy, no-wrap
-#| msgid "B<SEM_STAT>"
+#, no-wrap
 msgid "B<SEM_STAT_ANY>"
-msgstr "B<SEM_STAT>"
+msgstr "B<SEM_STAT_ANY>"
 
 #. type: Plain text
 #: build/C/man2/semctl.2:446
-#, fuzzy
-#| msgid "B<SEM_STAT>"
 msgid "as for B<SEM_STAT>."
-msgstr "B<SEM_STAT>"
+msgstr "B<SEM_STAT> と同じ。"
 
 #. type: Plain text
 #: build/C/man2/semctl.2:450
@@ -2596,27 +2475,17 @@ msgstr ""
 #. type: Plain text
 #: build/C/man2/semctl.2:529 build/C/man2/semop.2:389
 msgid "POSIX.1-2001, POSIX.1-2008, SVr4."
-msgstr ""
+msgstr "POSIX.1-2001, POSIX.1-2008, SVr4."
 
 #.  POSIX.1-2001, POSIX.1-2008
 #. type: Plain text
 #: build/C/man2/semctl.2:541
-#, fuzzy
-#| msgid ""
-#| "POSIX.1-2001 specifies the I<sem_nsems> field of the I<semid_ds> "
-#| "structure as having the type I<unsigned\\ short>, and the field is so "
-#| "defined on most other systems.  It was also so defined on Linux 2.2 and "
-#| "earlier, but, since Linux 2.4, the field has the type I<unsigned\\ long>."
 msgid ""
 "POSIX.1 specifies the I<sem_nsems> field of the I<semid_ds> structure as "
 "having the type I<unsigned\\ short>, and the field is so defined on most "
 "other systems.  It was also so defined on Linux 2.2 and earlier, but, since "
 "Linux 2.4, the field has the type I<unsigned\\ long>."
-msgstr ""
-"POSIX.1-2001 では I<semid_ds> 構造体の I<sem_nsems> フィールドは I<unsigned"
-"\\ short> 型を持つと規定されており、 他のほとんどのシステムでこのフィールド"
-"は I<unsigned\\ short> 型になっている。 Linux 2.4 以前ではそうなっていたが、 "
-"Linux 2.4 以降ではこのフィールドは I<unsigned\\ long> 型である。"
+msgstr "POSIX.1 では I<semid_ds> 構造体の I<sem_nsems> フィールドは I<unsigned\\ short> 型を持つと規定されており、 他のほとんどのシステムでこのフィールドは I<unsigned\\ short> 型になっている。 Linux 2.4 以前ではそうなっていたが、 Linux 2.4 以降ではこのフィールドは I<unsigned\\ long> 型である。"
 
 #.  Like Linux, the FreeBSD man pages still document
 #.  the inclusion of these header files.
@@ -2638,11 +2507,6 @@ msgstr ""
 
 #. type: Plain text
 #: build/C/man2/semctl.2:566
-#, fuzzy
-#| msgid ""
-#| "The B<IPC_INFO>, B<SEM_STAT> and B<SEM_INFO> operations are used by the "
-#| "B<ipcs>(1)  program to provide information on allocated resources.  In "
-#| "the future these may modified or moved to a I</proc> filesystem interface."
 msgid ""
 "The B<IPC_INFO>, B<SEM_STAT>, and B<SEM_INFO> operations are used by the "
 "B<ipcs>(1)  program to provide information on allocated resources.  In the "
@@ -2668,22 +2532,12 @@ msgstr ""
 #.  POSIX.1-2001, POSIX.1-2008
 #. type: Plain text
 #: build/C/man2/semctl.2:589
-#, fuzzy
-#| msgid ""
-#| "In some earlier versions of glibc, the I<semun> union was defined in "
-#| "I<E<lt>sys/sem.hE<gt>>, but POSIX.1-2001 requires that the caller define "
-#| "this union.  On versions of glibc where this union is I<not> defined, the "
-#| "macro B<_SEM_SEMUN_UNDEFINED> is defined in I<E<lt>sys/sem.hE<gt>>."
 msgid ""
 "In some earlier versions of glibc, the I<semun> union was defined in "
 "I<E<lt>sys/sem.hE<gt>>, but POSIX.1 requires that the caller define this "
 "union.  On versions of glibc where this union is I<not> defined, the macro "
 "B<_SEM_SEMUN_UNDEFINED> is defined in I<E<lt>sys/sem.hE<gt>>."
-msgstr ""
-"初期のバージョンの glibc では、 I<semun> 共用体は I<E<lt>sys/sem.hE<gt>> で定"
-"義されていたが、 POSIX.1-2001 では呼び出し側がこの共用体を定義する必要があ"
-"る。 この共用体が定義されてI<いない> glibc のバージョンでは、 マクロ "
-"B<_SEM_SEMUN_UNDEFINED> が I<E<lt>sys/sem.hE<gt>> で定義されている。"
+msgstr "初期のバージョンの glibc では、 I<semun> 共用体は I<E<lt>sys/sem.hE<gt>> で定義されていたが、 POSIX.1 では呼び出し側がこの共用体を定義する必要がある。 この共用体が定義されてI<いない> glibc のバージョンでは、 マクロ B<_SEM_SEMUN_UNDEFINED> が I<E<lt>sys/sem.hE<gt>> で定義されている。"
 
 #. type: Plain text
 #: build/C/man2/semctl.2:593
@@ -2752,23 +2606,15 @@ msgstr ""
 
 #. type: Plain text
 #: build/C/man2/semctl.2:648
-#, fuzzy
-#| msgid "See B<sem_wait>(3)."
 msgid "See B<shmop>(2)."
-msgstr "B<sem_wait>(3)  参照。"
+msgstr "B<shmop>(2) 参照。"
 
 #. type: Plain text
 #: build/C/man2/semctl.2:655
-#, fuzzy
-#| msgid ""
-#| "B<ipc>(2), B<semget>(2), B<semop>(2), B<capabilities>(7), "
-#| "B<sem_overview>(7), B<svipc>(7)"
 msgid ""
 "B<ipc>(2), B<semget>(2), B<semop>(2), B<capabilities>(7), "
 "B<sem_overview>(7), B<sysvipc>(7)"
-msgstr ""
-"B<ipc>(2), B<semget>(2), B<semop>(2), B<capabilities>(7), "
-"B<sem_overview>(7), B<svipc>(7)"
+msgstr "B<ipc>(2), B<semget>(2), B<semop>(2), B<capabilities>(7), B<sem_overview>(7), B<sysvipc>(7)"
 
 #. type: TH
 #: build/C/man2/semget.2:37
@@ -2780,7 +2626,7 @@ msgstr "SEMGET"
 #: build/C/man2/semget.2:37 build/C/man2/semop.2:35
 #, no-wrap
 msgid "2020-04-11"
-msgstr ""
+msgstr "2020-04-11"
 
 #. type: Plain text
 #: build/C/man2/semget.2:40
@@ -2817,23 +2663,11 @@ msgstr ""
 
 #. type: Plain text
 #: build/C/man2/semget.2:77
-#, fuzzy
-#| msgid ""
-#| "The B<semget>()  system call returns the System\\ V semaphore set "
-#| "identifier associated with the argument I<key>.  A new set of I<nsems> "
-#| "semaphores is created if I<key> has the value B<IPC_PRIVATE> or if no "
-#| "existing semaphore set is associated with I<key> and B<IPC_CREAT> is "
-#| "specified in I<semflg>."
 msgid ""
 "A new set of I<nsems> semaphores is created if I<key> has the value "
 "B<IPC_PRIVATE> or if no existing semaphore set is associated with I<key> and "
 "B<IPC_CREAT> is specified in I<semflg>."
-msgstr ""
-"B<semget>()  システムコールは、引き数 I<key> に対応する System\\ V セマフォ集"
-"合 (semaphore set) の 識別子 (identifier) を返す。 I<key> の値が "
-"B<IPC_PRIVATE> の場合、もしくは I<semflg> に B<IPC_CREAT> が指定されていて、 "
-"I<key> に対応するセマフォ集合が存在しない場合、 I<nsems> 個のセマフォからなる"
-"新しい集合が作成される。"
+msgstr "I<key> の値が B<IPC_PRIVATE> の場合、もしくは I<semflg> に B<IPC_CREAT> が指定されていて、 I<key> に対応するセマフォ集合が存在しない場合、 I<nsems> 個のセマフォからなる新しい集合が作成される。"
 
 #. type: Plain text
 #: build/C/man2/semget.2:96
@@ -3218,6 +3052,12 @@ msgid ""
 "ID = 10\n"
 "$ B<ipcs -s>\n"
 msgstr ""
+"$ B<touch mykey mykey2>\n"
+"$ B<./t_semget -c mykey p 1>\n"
+"ID = 9\n"
+"$ B<./t_semget -c mykey2 p 2>\n"
+"ID = 10\n"
+"$ B<ipcs -s>\n"
 
 #. type: Plain text
 #: build/C/man2/semget.2:364
@@ -3228,6 +3068,10 @@ msgid ""
 "0x7004136d 9          mtk        600        1\n"
 "0x70041368 10         mtk        600        2\n"
 msgstr ""
+"------ Semaphore Arrays --------\n"
+"key        semid      owner      perms      nsems\n"
+"0x7004136d 9          mtk        600        1\n"
+"0x70041368 10         mtk        600        2\n"
 
 #. type: Plain text
 #: build/C/man2/semget.2:374
@@ -3244,6 +3088,8 @@ msgid ""
 "$ B<./t_semget -c mykey p 1>\n"
 "ID = 9\n"
 msgstr ""
+"$ B<./t_semget -c mykey p 1>\n"
+"ID = 9\n"
 
 #. type: Plain text
 #: build/C/man2/semget.2:387
@@ -3264,25 +3110,22 @@ msgid ""
 "$ B<./t_semget link p 1>       # Generates same key as \\(aqmykey\\(aq\n"
 "ID = 9\n"
 msgstr ""
+"$ B<ln mykey link>\n"
+"$ B<ls -i1 link mykey>\n"
+"2233197 link\n"
+"2233197 mykey\n"
+"$ B<./t_semget link p 1>       # Generates same key as \\(aqmykey\\(aq\n"
+"ID = 9\n"
 
 #. type: Plain text
 #: build/C/man2/semget.2:402
 #, no-wrap
 msgid "/* t_semget.c\n"
-msgstr ""
+msgstr "/* t_semget.c\n"
 
 #. type: Plain text
 #: build/C/man2/semget.2:412
-#, fuzzy, no-wrap
-#| msgid ""
-#| "#include E<lt>unistd.hE<gt>\n"
-#| "#include E<lt>stdio.hE<gt>\n"
-#| "#include E<lt>stdlib.hE<gt>\n"
-#| "#include E<lt>semaphore.hE<gt>\n"
-#| "#include E<lt>time.hE<gt>\n"
-#| "#include E<lt>assert.hE<gt>\n"
-#| "#include E<lt>errno.hE<gt>\n"
-#| "#include E<lt>signal.hE<gt>\n"
+#, no-wrap
 msgid ""
 "   Licensed under GNU General Public License v2 or later.\n"
 "*/\n"
@@ -3294,14 +3137,15 @@ msgid ""
 "#include E<lt>stdlib.hE<gt>\n"
 "#include E<lt>unistd.hE<gt>\n"
 msgstr ""
-"#include E<lt>unistd.hE<gt>\n"
+"   Licensed under GNU General Public License v2 or later.\n"
+"*/\n"
+"#include E<lt>sys/types.hE<gt>\n"
+"#include E<lt>sys/ipc.hE<gt>\n"
+"#include E<lt>sys/sem.hE<gt>\n"
+"#include E<lt>sys/stat.hE<gt>\n"
 "#include E<lt>stdio.hE<gt>\n"
 "#include E<lt>stdlib.hE<gt>\n"
-"#include E<lt>semaphore.hE<gt>\n"
-"#include E<lt>time.hE<gt>\n"
-"#include E<lt>assert.hE<gt>\n"
-"#include E<lt>errno.hE<gt>\n"
-"#include E<lt>signal.hE<gt>\n"
+"#include E<lt>unistd.hE<gt>\n"
 
 #. type: Plain text
 #: build/C/man2/semget.2:422
@@ -3317,17 +3161,19 @@ msgid ""
 "    exit(EXIT_FAILURE);\n"
 "}\n"
 msgstr ""
+"static void\n"
+"usage(const char *pname)\n"
+"{\n"
+"    fprintf(stderr, \"Usage: %s [-cx] pathname proj-id num-sems\\en\",\n"
+"            pname);\n"
+"    fprintf(stderr, \"    -c           Use IPC_CREAT flag\\en\");\n"
+"    fprintf(stderr, \"    -x           Use IPC_EXCL flag\\en\");\n"
+"    exit(EXIT_FAILURE);\n"
+"}\n"
 
 #. type: Plain text
 #: build/C/man2/semget.2:428
-#, fuzzy, no-wrap
-#| msgid ""
-#| "int\n"
-#| "main(int argc, char *argv[])\n"
-#| "{\n"
-#| "    struct sigaction sa;\n"
-#| "    struct timespec ts;\n"
-#| "    int s;\n"
+#, no-wrap
 msgid ""
 "int\n"
 "main(int argc, char *argv[])\n"
@@ -3338,9 +3184,8 @@ msgstr ""
 "int\n"
 "main(int argc, char *argv[])\n"
 "{\n"
-"    struct sigaction sa;\n"
-"    struct timespec ts;\n"
-"    int s;\n"
+"    int semid, nsems, flags, opt;\n"
+"    key_t key;\n"
 
 #. type: Plain text
 #: build/C/man2/semget.2:437
@@ -3355,6 +3200,14 @@ msgid ""
 "        }\n"
 "    }\n"
 msgstr ""
+"    flags = 0;\n"
+"    while ((opt = getopt(argc, argv, \"cx\")) != -1) {\n"
+"        switch (opt) {\n"
+"        case \\(aqc\\(aq: flags |= IPC_CREAT;   break;\n"
+"        case \\(aqx\\(aq: flags |= IPC_EXCL;    break;\n"
+"        default:  usage(argv[0]);\n"
+"        }\n"
+"    }\n"
 
 #. type: Plain text
 #: build/C/man2/semget.2:440
@@ -3363,15 +3216,12 @@ msgid ""
 "    if (argc != optind + 3)\n"
 "        usage(argv[0]);\n"
 msgstr ""
+"    if (argc != optind + 3)\n"
+"        usage(argv[0]);\n"
 
 #. type: Plain text
 #: build/C/man2/semget.2:446
-#, fuzzy, no-wrap
-#| msgid ""
-#| "    if (semop(semid, sops, 2) == -1) {\n"
-#| "        perror(\"semop\");\n"
-#| "        exit(EXIT_FAILURE);\n"
-#| "    }\n"
+#, no-wrap
 msgid ""
 "    key = ftok(argv[optind], argv[optind + 1][0]);\n"
 "    if (key == -1) {\n"
@@ -3379,26 +3229,21 @@ msgid ""
 "        exit(EXIT_FAILURE);\n"
 "    }\n"
 msgstr ""
-"    if (semop(semid, sops, 2) == -1) {\n"
-"        perror(\"semop\");\n"
+"    key = ftok(argv[optind], argv[optind + 1][0]);\n"
+"    if (key == -1) {\n"
+"        perror(\"ftok\");\n"
 "        exit(EXIT_FAILURE);\n"
 "    }\n"
 
 #. type: Plain text
 #: build/C/man2/semget.2:448
-#, fuzzy, no-wrap
-#| msgid "    ts.tv_sec += atoi(argv[2]);\n"
+#, no-wrap
 msgid "    nsems = atoi(argv[optind + 2]);\n"
-msgstr "    ts.tv_sec += atoi(argv[2]);\n"
+msgstr "    nsems = atoi(argv[optind + 2]);\n"
 
 #. type: Plain text
 #: build/C/man2/semget.2:454
-#, fuzzy, no-wrap
-#| msgid ""
-#| "    if (semop(semid, sops, 2) == -1) {\n"
-#| "        perror(\"semop\");\n"
-#| "        exit(EXIT_FAILURE);\n"
-#| "    }\n"
+#, no-wrap
 msgid ""
 "    semid = semget(key, nsems, flags | 0600);\n"
 "    if (semid == -1) {\n"
@@ -3406,8 +3251,9 @@ msgid ""
 "        exit(EXIT_FAILURE);\n"
 "    }\n"
 msgstr ""
-"    if (semop(semid, sops, 2) == -1) {\n"
-"        perror(\"semop\");\n"
+"    semid = semget(key, nsems, flags | 0600);\n"
+"    if (semid == -1) {\n"
+"        perror(\"semget\");\n"
 "        exit(EXIT_FAILURE);\n"
 "    }\n"
 
@@ -3415,33 +3261,24 @@ msgstr ""
 #: build/C/man2/semget.2:456
 #, no-wrap
 msgid "    printf(\"ID = %d\\en\", semid);\n"
-msgstr ""
+msgstr "    printf(\"ID = %d\\en\", semid);\n"
 
 #. type: Plain text
 #: build/C/man2/semget.2:459
-#, fuzzy, no-wrap
-#| msgid ""
-#| "    exit((s == 0) ? EXIT_SUCCESS : EXIT_FAILURE);\n"
-#| "}\n"
+#, no-wrap
 msgid ""
 "    exit(EXIT_SUCCESS);\n"
 "}\n"
 msgstr ""
-"    exit((s == 0) ? EXIT_SUCCESS : EXIT_FAILURE);\n"
+"    exit(EXIT_SUCCESS);\n"
 "}\n"
 
 #. type: Plain text
 #: build/C/man2/semget.2:467
-#, fuzzy
-#| msgid ""
-#| "B<semctl>(2), B<semop>(2), B<ftok>(3), B<capabilities>(7), "
-#| "B<sem_overview>(7), B<svipc>(7)"
 msgid ""
 "B<semctl>(2), B<semop>(2), B<ftok>(3), B<capabilities>(7), "
 "B<sem_overview>(7), B<sysvipc>(7)"
-msgstr ""
-"B<semctl>(2), B<semop>(2), B<ftok>(3), B<capabilities>(7), "
-"B<sem_overview>(7), B<svipc>(7)"
+msgstr "B<semctl>(2), B<semop>(2), B<ftok>(3), B<capabilities>(7), B<sem_overview>(7), B<sysvipc>(7)"
 
 #. type: TH
 #: build/C/man2/semop.2:35
@@ -3725,18 +3562,11 @@ msgstr ""
 
 #. type: Plain text
 #: build/C/man2/semop.2:298
-#, fuzzy
-#| msgid ""
-#| "Note that if B<semtimeop>()  is interrupted by a signal, causing the call "
-#| "to fail with the error B<EINTR>, the contents of I<timeout> are left "
-#| "unchanged."
 msgid ""
 "Note that if B<semtimedop>()  is interrupted by a signal, causing the call "
 "to fail with the error B<EINTR>, the contents of I<timeout> are left "
 "unchanged."
-msgstr ""
-"B<semtimeop>() がシグナルにより割り込まれた場合、呼び出しはエラー B<EINTR> で"
-"失敗し、 I<timeout> の内容は変更されないままとなる点に注意すること。"
+msgstr "B<semtimedop>() がシグナルにより割り込まれた場合、呼び出しはエラー B<EINTR> で失敗し、 I<timeout> の内容は変更されないままとなる点に注意すること。"
 
 #. type: Plain text
 #: build/C/man2/semop.2:308
@@ -4024,74 +3854,57 @@ msgstr ""
 
 #. type: Plain text
 #: build/C/man2/semop.2:530
-#, fuzzy, no-wrap
-#| msgid ""
-#| "    struct sembuf sops[2];\n"
-#| "    int semid;\n"
+#, no-wrap
 msgid ""
 "struct sembuf sops[2];\n"
 "int semid;\n"
 msgstr ""
-"    struct sembuf sops[2];\n"
-"    int semid;\n"
+"struct sembuf sops[2];\n"
+"int semid;\n"
 
 #. type: Plain text
 #: build/C/man2/semop.2:532
-#, fuzzy, no-wrap
-#| msgid "    /* Code to set I<semid> omitted */\n"
+#, no-wrap
 msgid "/* Code to set I<semid> omitted */\n"
-msgstr "    /* Code to set I<semid> omitted */\n"
+msgstr "/* Code to set I<semid> omitted */\n"
 
 #. type: Plain text
 #: build/C/man2/semop.2:536
-#, fuzzy, no-wrap
-#| msgid ""
-#| "    sops[0].sem_num = 0;        /* Operate on semaphore 0 */\n"
-#| "    sops[0].sem_op = 0;         /* Wait for value to equal 0 */\n"
-#| "    sops[0].sem_flg = 0;\n"
+#, no-wrap
 msgid ""
 "sops[0].sem_num = 0;        /* Operate on semaphore 0 */\n"
 "sops[0].sem_op = 0;         /* Wait for value to equal 0 */\n"
 "sops[0].sem_flg = 0;\n"
 msgstr ""
-"    sops[0].sem_num = 0;        /* Operate on semaphore 0 */\n"
-"    sops[0].sem_op = 0;         /* Wait for value to equal 0 */\n"
-"    sops[0].sem_flg = 0;\n"
+"sops[0].sem_num = 0;        /* Operate on semaphore 0 */\n"
+"sops[0].sem_op = 0;         /* Wait for value to equal 0 */\n"
+"sops[0].sem_flg = 0;\n"
 
 #. type: Plain text
 #: build/C/man2/semop.2:540
-#, fuzzy, no-wrap
-#| msgid ""
-#| "    sops[1].sem_num = 0;        /* Operate on semaphore 0 */\n"
-#| "    sops[1].sem_op = 1;         /* Increment value by one */\n"
-#| "    sops[1].sem_flg = 0;\n"
+#, no-wrap
 msgid ""
 "sops[1].sem_num = 0;        /* Operate on semaphore 0 */\n"
 "sops[1].sem_op = 1;         /* Increment value by one */\n"
 "sops[1].sem_flg = 0;\n"
 msgstr ""
-"    sops[1].sem_num = 0;        /* Operate on semaphore 0 */\n"
-"    sops[1].sem_op = 1;         /* Increment value by one */\n"
-"    sops[1].sem_flg = 0;\n"
+"sops[1].sem_num = 0;        /* Operate on semaphore 0 */\n"
+"sops[1].sem_op = 1;         /* Increment value by one */\n"
+"sops[1].sem_flg = 0;\n"
 
 #. type: Plain text
 #: build/C/man2/semop.2:545
-#, fuzzy, no-wrap
-#| msgid ""
-#| "    if (semop(semid, sops, 2) == -1) {\n"
-#| "        perror(\"semop\");\n"
-#| "        exit(EXIT_FAILURE);\n"
-#| "    }\n"
+#, no-wrap
 msgid ""
 "if (semop(semid, sops, 2) == -1) {\n"
 "    perror(\"semop\");\n"
 "    exit(EXIT_FAILURE);\n"
 "}\n"
 msgstr ""
-"    if (semop(semid, sops, 2) == -1) {\n"
-"        perror(\"semop\");\n"
-"        exit(EXIT_FAILURE);\n"
-"    }\n"
+"if (semop(semid, sops, 2) == -1) {\n"
+"    perror(\"semop\");\n"
+"    exit(EXIT_FAILURE);\n"
+"}\n"
 
 #. type: Plain text
 #: build/C/man2/semop.2:552
@@ -4101,57 +3914,10 @@ msgstr ""
 
 #. type: Plain text
 #: build/C/man2/semop.2:561
-#, fuzzy
-#| msgid ""
-#| "B<clone>(2), B<semctl>(2), B<semget>(2), B<sigaction>(2), "
-#| "B<capabilities>(7), B<sem_overview>(7), B<svipc>(7), B<time>(7)"
 msgid ""
 "B<clone>(2), B<semctl>(2), B<semget>(2), B<sigaction>(2), "
 "B<capabilities>(7), B<sem_overview>(7), B<sysvipc>(7), B<time>(7)"
-msgstr ""
-"B<clone>(2), B<semctl>(2), B<semget>(2), B<sigaction>(2), "
-"B<capabilities>(7), B<sem_overview>(7), B<svipc>(7), B<time>(7)"
-
-#~ msgid "2012-05-13"
-#~ msgstr "2012-05-13"
-
-#~ msgid "2014-03-03"
-#~ msgstr "2014-03-03"
-
-#~ msgid "Multithreading (see pthreads(7))"
-#~ msgstr "マルチスレッディング (pthreads(7) 参照)"
-
-#~ msgid "The B<sem_destroy>()  function is thread-safe."
-#~ msgstr "B<sem_destroy>() 関数はスレッドセーフである。"
-
-#~ msgid "The B<sem_getvalue>()  function is thread-safe."
-#~ msgstr "B<sem_getvalue>() 関数はスレッドセーフである。"
-
-#~ msgid "2014-03-10"
-#~ msgstr "2014-03-10"
-
-#~ msgid "The B<sem_init>()  function is thread-safe."
-#~ msgstr "B<sem_init>() 関数はスレッドセーフである。"
-
-#~ msgid "The process already has the maximum number of files and open."
-#~ msgstr ""
-#~ "オープンされたファイル数がすでにそのプロセスにおける上限に達している。"
-
-#~ msgid "2014-02-26"
-#~ msgstr "2014-02-26"
-
-#~ msgid "The B<sem_post>()  function is thread-safe."
-#~ msgstr "B<sem_post>() 関数はスレッドセーフである。"
-
-#~ msgid "The B<sem_unlink>()  function is thread-safe."
-#~ msgstr "B<sem_unlink>() 関数はスレッドセーフである。"
-
-#~ msgid ""
-#~ "The B<sem_wait>(), B<sem_trywait>(), and B<sem_timedwait>()  functions "
-#~ "are thread-safe."
-#~ msgstr ""
-#~ "関数 B<sem_wait>(), B<sem_trywait>(), B<sem_timedwait>() はスレッドセーフ"
-#~ "である。"
+msgstr "B<clone>(2), B<semctl>(2), B<semget>(2), B<sigaction>(2), B<capabilities>(7), B<sem_overview>(7), B<sysvipc>(7), B<time>(7)"
 
 #~ msgid ""
 #~ "A signal handler always interrupts a blocked call to one of these "
@@ -4190,9 +3956,6 @@ msgstr ""
 #~ "番目のセマフォの B<semval> の増加を待っているプロセスの数を返す)。 呼び出"
 #~ "したプロセスはそのセマフォ集合に読み込み許可を持たなければならない。"
 
-#~ msgid "2014-05-21"
-#~ msgstr "2014-05-21"
-
 #~ msgid ""
 #~ "Maximum number of operations allowed for one B<semop>()  call (32)  (on "
 #~ "Linux, this limit can be read and modified via the third field of I</proc/"
index 57fdf01..db6b687 100644 (file)
@@ -1,13 +1,5 @@
 # pagename,#complete,#remaining,#all
-sem_close.3,31,2,33
-sem_destroy.3,33,3,36
-sem_getvalue.3,29,5,34
-sem_init.3,37,4,41
-sem_open.3,43,6,49
-sem_overview.7,31,3,34
-sem_post.3,32,5,37
-sem_unlink.3,32,3,35
-sem_wait.3,66,5,71
-semctl.2,78,51,129
-semget.2,63,27,90
-semop.2,81,14,95
+sem_getvalue.3,33,1,34
+semctl.2,106,23,129
+semget.2,82,8,90
+semop.2,91,4,95
index 55635f7..4b1ba1b 100644 (file)
 <TR class="over80"><TD>qsort.3</TD><TD>8/45</TD><TD>82.22</TD></TR>
 <TR class="over70"><TD>tsearch.3</TD><TD>19/70</TD><TD>72.86</TD></TR>
 <TR><TD ALIGN="center" COLSPAN=3 BGCOLOR="Yellow"><B>semaphore</B></TD></TR>
-<TR class="over80"><TD>sem_close.3</TD><TD>2/33</TD><TD>93.94</TD></TR>
-<TR class="over80"><TD>sem_destroy.3</TD><TD>3/36</TD><TD>91.67</TD></TR>
-<TR class="over80"><TD>sem_getvalue.3</TD><TD>5/34</TD><TD>85.29</TD></TR>
-<TR class="over80"><TD>sem_init.3</TD><TD>4/41</TD><TD>90.24</TD></TR>
-<TR class="over80"><TD>sem_open.3</TD><TD>6/49</TD><TD>87.76</TD></TR>
-<TR class="over80"><TD>sem_overview.7</TD><TD>3/34</TD><TD>91.18</TD></TR>
-<TR class="over80"><TD>sem_post.3</TD><TD>5/37</TD><TD>86.49</TD></TR>
-<TR class="over80"><TD>sem_unlink.3</TD><TD>3/35</TD><TD>91.43</TD></TR>
-<TR class="over80"><TD>sem_wait.3</TD><TD>5/71</TD><TD>92.96</TD></TR>
-<TR><TD>semctl.2</TD><TD>51/129</TD><TD>60.47</TD></TR>
-<TR class="over70"><TD>semget.2</TD><TD>27/90</TD><TD>70.00</TD></TR>
-<TR class="over80"><TD>semop.2</TD><TD>14/95</TD><TD>85.26</TD></TR>
+<TR class="over80"><TD>sem_getvalue.3</TD><TD>1/34</TD><TD>97.06</TD></TR>
+<TR class="over80"><TD>semctl.2</TD><TD>23/129</TD><TD>82.17</TD></TR>
+<TR class="over80"><TD>semget.2</TD><TD>8/90</TD><TD>91.11</TD></TR>
+<TR class="over80"><TD>semop.2</TD><TD>4/95</TD><TD>95.79</TD></TR>
 <TR><TD ALIGN="center" COLSPAN=3 BGCOLOR="Yellow"><B>signal</B></TD></TR>
 <TR class="over80"><TD>bsd_signal.3</TD><TD>1/38</TD><TD>97.37</TD></TR>
 <TR class="over80"><TD>eventfd.2</TD><TD>3/102</TD><TD>97.06</TD></TR>
 <TR class="over80"><TD>login.3</TD><TD>1/46</TD><TD>97.83</TD></TR>
 <TR><TD ALIGN="center" COLSPAN=3 BGCOLOR="Yellow"><B>wchar</B></TD></TR>
 <TR class="over80"><TD>mbsnrtowcs.3</TD><TD>1/47</TD><TD>97.87</TD></TR>
-<TR><TD COLSPAN=3>Total 716 pages</TD></TR>
+<TR><TD COLSPAN=3>Total 708 pages</TD></TR>
 </TABLE>
 </BODY></HTML>