OSDN Git Service

Wrap lines in ja.po again
[linuxjm/LDP_man-pages.git] / po4a / semaphore / po / ja.po
index edec599..073c34b 100644 (file)
@@ -112,8 +112,14 @@ msgstr "説明"
 
 #. type: Plain text
 #: build/C/man3/sem_close.3:43
-msgid "B<sem_close>()  closes the named semaphore referred to by I<sem>, allowing any resources that the system has allocated to the calling process for this semaphore to be freed."
-msgstr "B<sem_close>()  は I<sem> が参照する名前付きセマフォをクローズし、 このセマフォ用に呼び出し元プロセスにシステムが割り当てていた リソースを解放できるようにする。"
+msgid ""
+"B<sem_close>()  closes the named semaphore referred to by I<sem>, allowing "
+"any resources that the system has allocated to the calling process for this "
+"semaphore to be freed."
+msgstr ""
+"B<sem_close>()  は I<sem> が参照する名前付きセマフォをクローズし、 このセマ"
+"フォ用に呼び出し元プロセスにシステムが割り当てていた リソースを解放できるよう"
+"にする。"
 
 #. type: SH
 #: build/C/man3/sem_close.3:43 build/C/man3/sem_destroy.3:55
@@ -128,8 +134,12 @@ msgstr "返り値"
 
 #. type: Plain text
 #: build/C/man3/sem_close.3:49
-msgid "On success B<sem_close>()  returns 0; on error, -1 is returned, with I<errno> set to indicate the error."
-msgstr "成功すると、 B<sem_close>()  は 0 を返す。エラーの場合、-1 を返し、 I<errno> にエラーを示す値をセットする。"
+msgid ""
+"On success B<sem_close>()  returns 0; on error, -1 is returned, with "
+"I<errno> set to indicate the error."
+msgstr ""
+"成功すると、 B<sem_close>()  は 0 を返す。エラーの場合、-1 を返し、 I<errno> "
+"にエラーを示す値をセットする。"
 
 #. type: SH
 #: build/C/man3/sem_close.3:49 build/C/man3/sem_destroy.3:61
@@ -193,8 +203,12 @@ msgstr "注意"
 
 #. type: Plain text
 #: build/C/man3/sem_close.3:60
-msgid "All open named semaphores are automatically closed on process termination, or upon B<execve>(2)."
-msgstr "オープンされたすべての名前付きセマフォは、プロセス終了時、もしくは B<execve>(2)  実行時に自動的にクローズされる。"
+msgid ""
+"All open named semaphores are automatically closed on process termination, "
+"or upon B<execve>(2)."
+msgstr ""
+"オープンされたすべての名前付きセマフォは、プロセス終了時、もしくは "
+"B<execve>(2)  実行時に自動的にクローズされる。"
 
 #. type: SH
 #: build/C/man3/sem_close.3:60 build/C/man3/sem_destroy.3:79
@@ -209,8 +223,12 @@ msgstr "関連項目"
 
 #. type: Plain text
 #: build/C/man3/sem_close.3:67
-msgid "B<sem_getvalue>(3), B<sem_open>(3), B<sem_post>(3), B<sem_unlink>(3), B<sem_wait>(3), B<sem_overview>(7)"
-msgstr "B<sem_getvalue>(3), B<sem_open>(3), B<sem_post>(3), B<sem_unlink>(3), B<sem_wait>(3), B<sem_overview>(7)"
+msgid ""
+"B<sem_getvalue>(3), B<sem_open>(3), B<sem_post>(3), B<sem_unlink>(3), "
+"B<sem_wait>(3), B<sem_overview>(7)"
+msgstr ""
+"B<sem_getvalue>(3), B<sem_open>(3), B<sem_post>(3), B<sem_unlink>(3), "
+"B<sem_wait>(3), B<sem_overview>(7)"
 
 #. type: SH
 #: build/C/man3/sem_close.3:67 build/C/man3/sem_destroy.3:84
@@ -230,7 +248,11 @@ msgstr "この文書について"
 #: build/C/man3/sem_post.3:87 build/C/man3/sem_unlink.3:83
 #: build/C/man3/sem_wait.3:284 build/C/man2/semctl.2:551
 #: build/C/man2/semget.2:310 build/C/man2/semop.2:550
-msgid "This page is part of release 3.78 of the Linux I<man-pages> project.  A description of the project, information about reporting bugs, and the latest version of this page, can be found at \\%http://www.kernel.org/doc/man-pages/."
+msgid ""
+"This page is part of release 3.78 of the Linux I<man-pages> project.  A "
+"description of the project, information about reporting bugs, and the latest "
+"version of this page, can be found at \\%http://www.kernel.org/doc/man-"
+"pages/."
 msgstr ""
 "この man ページは Linux I<man-pages> プロジェクトのリリース 3.78 の一部\n"
 "である。プロジェクトの説明とバグ報告に関する情報は\n"
@@ -261,28 +283,47 @@ msgstr "B<int sem_destroy(sem_t *>I<sem>B<);>\n"
 
 #. type: Plain text
 #: build/C/man3/sem_destroy.3:41
-msgid "B<sem_destroy>()  destroys the unnamed semaphore at the address pointed to by I<sem>."
-msgstr "B<sem_destroy>()  は I<sem> が指すアドレスにある名前なしセマフォを破棄する。"
+msgid ""
+"B<sem_destroy>()  destroys the unnamed semaphore at the address pointed to "
+"by I<sem>."
+msgstr ""
+"B<sem_destroy>()  は I<sem> が指すアドレスにある名前なしセマフォを破棄する。"
 
 #. type: Plain text
 #: build/C/man3/sem_destroy.3:46
-msgid "Only a semaphore that has been initialized by B<sem_init>(3)  should be destroyed using B<sem_destroy>()."
-msgstr "B<sem_destroy>()  を使って破棄するのは、 B<sem_init>(3)  で初期化したセマフォだけにすべきである。"
+msgid ""
+"Only a semaphore that has been initialized by B<sem_init>(3)  should be "
+"destroyed using B<sem_destroy>()."
+msgstr ""
+"B<sem_destroy>()  を使って破棄するのは、 B<sem_init>(3)  で初期化したセマフォ"
+"だけにすべきである。"
 
 #. type: Plain text
 #: build/C/man3/sem_destroy.3:51
-msgid "Destroying a semaphore that other processes or threads are currently blocked on (in B<sem_wait>(3))  produces undefined behavior."
-msgstr "他のプロセスやスレッドが (B<sem_wait>(3)  で) 待ち状態になっているセマフォを破棄した場合の挙動は定義されていない。"
+msgid ""
+"Destroying a semaphore that other processes or threads are currently blocked "
+"on (in B<sem_wait>(3))  produces undefined behavior."
+msgstr ""
+"他のプロセスやスレッドが (B<sem_wait>(3)  で) 待ち状態になっているセマフォを"
+"破棄した場合の挙動は定義されていない。"
 
 #. type: Plain text
 #: build/C/man3/sem_destroy.3:55
-msgid "Using a semaphore that has been destroyed produces undefined results, until the semaphore has been reinitialized using B<sem_init>(3)."
-msgstr "すでに破棄されたセマフォを、 B<sem_init>(3)  を使って再初期化される前に使用した場合、その結果は未定義である。"
+msgid ""
+"Using a semaphore that has been destroyed produces undefined results, until "
+"the semaphore has been reinitialized using B<sem_init>(3)."
+msgstr ""
+"すでに破棄されたセマフォを、 B<sem_init>(3)  を使って再初期化される前に使用し"
+"た場合、その結果は未定義である。"
 
 #. type: Plain text
 #: build/C/man3/sem_destroy.3:61
-msgid "B<sem_destroy>()  returns 0 on success; on error, -1 is returned, and I<errno> is set to indicate the error."
-msgstr "成功すると、 B<sem_destroy>()  は 0 を返す。エラーの場合、-1 を返し、 I<errno> にエラーを示す値をセットする。"
+msgid ""
+"B<sem_destroy>()  returns 0 on success; on error, -1 is returned, and "
+"I<errno> is set to indicate the error."
+msgstr ""
+"成功すると、 B<sem_destroy>()  は 0 を返す。エラーの場合、-1 を返し、 "
+"I<errno> にエラーを示す値をセットする。"
 
 #. type: SH
 #: build/C/man3/sem_destroy.3:66 build/C/man3/sem_getvalue.3:65
@@ -308,8 +349,14 @@ msgstr "B<sem_destroy>() 関数はスレッドセーフである。"
 #.  But not on NPTL, where sem_destroy () is a no-op..
 #. type: Plain text
 #: build/C/man3/sem_destroy.3:79
-msgid "An unnamed semaphore should be destroyed with B<sem_destroy>()  before the memory in which it is located is deallocated.  Failure to do this can result in resource leaks on some implementations."
-msgstr "名前なしセマフォは、そのセマフォが置かれているメモリーが解放される前に、 B<sem_destroy>()  を使って破棄しておくべきである。これを行わなかった場合、実装によっては リソースのリークが起こりえる。"
+msgid ""
+"An unnamed semaphore should be destroyed with B<sem_destroy>()  before the "
+"memory in which it is located is deallocated.  Failure to do this can result "
+"in resource leaks on some implementations."
+msgstr ""
+"名前なしセマフォは、そのセマフォが置かれているメモリーが解放される前に、 "
+"B<sem_destroy>()  を使って破棄しておくべきである。これを行わなかった場合、実"
+"装によっては リソースのリークが起こりえる。"
 
 #. type: Plain text
 #: build/C/man3/sem_destroy.3:84
@@ -335,18 +382,36 @@ msgstr "B<int sem_getvalue(sem_t *>I<sem>B<, int *>I<sval>B<);>\n"
 
 #. type: Plain text
 #: build/C/man3/sem_getvalue.3:43
-msgid "B<sem_getvalue>()  places the current value of the semaphore pointed to I<sem> into the integer pointed to by I<sval>."
-msgstr "B<sem_getvalue>()  は、 I<sem> が指すセマフォの現在の値を I<sval> で指す整数に格納する。"
+msgid ""
+"B<sem_getvalue>()  places the current value of the semaphore pointed to "
+"I<sem> into the integer pointed to by I<sval>."
+msgstr ""
+"B<sem_getvalue>()  は、 I<sem> が指すセマフォの現在の値を I<sval> で指す整数"
+"に格納する。"
 
 #. type: Plain text
 #: build/C/man3/sem_getvalue.3:54
-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."
-msgstr "POSIX.1-2001 によると、 1つ以上のプロセスかスレッドが B<sem_wait>(3)  でセマフォのロック待ちで停止している場合、 I<sval> で返される値は 0 もしくは負の値のいずれかとなる。 負の値の場合、その絶対値は B<sem_wait>(3)  で現在停止しているプロセスかスレッドの合計数に等しい。 Linux は前者の動作 (0 を返す動作) を採用している。"
+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."
+msgstr ""
+"POSIX.1-2001 によると、 1つ以上のプロセスかスレッドが B<sem_wait>(3)  でセマ"
+"フォのロック待ちで停止している場合、 I<sval> で返される値は 0 もしくは負の値"
+"のいずれかとなる。 負の値の場合、その絶対値は B<sem_wait>(3)  で現在停止して"
+"いるプロセスかスレッドの合計数に等しい。 Linux は前者の動作 (0 を返す動作) を"
+"採用している。"
 
 #. type: Plain text
 #: build/C/man3/sem_getvalue.3:60
-msgid "B<sem_getvalue>()  returns 0 on success; on error, -1 is returned and I<errno> is set to indicate the error."
-msgstr "成功すると、 B<sem_getvalue>()  は 0 を返す。エラーの場合、-1 を返し、 I<errno> にエラーを示す値をセットする。"
+msgid ""
+"B<sem_getvalue>()  returns 0 on success; on error, -1 is returned and "
+"I<errno> is set to indicate the error."
+msgstr ""
+"成功すると、 B<sem_getvalue>()  は 0 を返す。エラーの場合、-1 を返し、 "
+"I<errno> にエラーを示す値をセットする。"
 
 #. type: Plain text
 #: build/C/man3/sem_getvalue.3:70
@@ -355,8 +420,12 @@ msgstr "B<sem_getvalue>() 関数はスレッドセーフである。"
 
 #. type: Plain text
 #: build/C/man3/sem_getvalue.3:76
-msgid "The value of the semaphore may already have changed by the time B<sem_getvalue>()  returns."
-msgstr "B<sem_getvalue>()  が返るときには、すでにセマフォの値は変化している可能性がある。"
+msgid ""
+"The value of the semaphore may already have changed by the time "
+"B<sem_getvalue>()  returns."
+msgstr ""
+"B<sem_getvalue>()  が返るときには、すでにセマフォの値は変化している可能性があ"
+"る。"
 
 #. type: Plain text
 #: build/C/man3/sem_getvalue.3:80
@@ -388,33 +457,67 @@ msgstr "B<int sem_init(sem_t *>I<sem>B<, int >I<pshared>B<, unsigned int >I<valu
 
 #. type: Plain text
 #: build/C/man3/sem_init.3:44
-msgid "B<sem_init>()  initializes the unnamed semaphore at the address pointed to by I<sem>.  The I<value> argument specifies the initial value for the semaphore."
-msgstr "B<sem_init>()  は、 I<sem> が指すアドレスにある名前なしセマフォを初期化する。 I<value> 引き数はそのセマフォの初期値を指定する。"
+msgid ""
+"B<sem_init>()  initializes the unnamed semaphore at the address pointed to "
+"by I<sem>.  The I<value> argument specifies the initial value for the "
+"semaphore."
+msgstr ""
+"B<sem_init>()  は、 I<sem> が指すアドレスにある名前なしセマフォを初期化す"
+"る。 I<value> 引き数はそのセマフォの初期値を指定する。"
 
 #. type: Plain text
 #: build/C/man3/sem_init.3:49
-msgid "The I<pshared> argument indicates whether this semaphore is to be shared between the threads of a process, or between processes."
-msgstr "I<pshared> 引き数は、このセマフォがプロセス内のスレッド間で共有されるのか、 プロセス間で共有されるのか、を示す。"
+msgid ""
+"The I<pshared> argument indicates whether this semaphore is to be shared "
+"between the threads of a process, or between processes."
+msgstr ""
+"I<pshared> 引き数は、このセマフォがプロセス内のスレッド間で共有されるのか、 "
+"プロセス間で共有されるのか、を示す。"
 
 #. type: Plain text
 #: build/C/man3/sem_init.3:57
-msgid "If I<pshared> has the value 0, then the semaphore is shared between the threads of a process, and should be located at some address that is visible to all threads (e.g., a global variable, or a variable allocated dynamically on the heap)."
-msgstr "I<pshared> が 0 の場合、セマフォはプロセス内のスレッド間で共有される。 セマフォはすべてのスレッドから参照可能なアドレスに配置すべきである (例えば、大域変数や、ヒープ上に動的に割り当てられた変数など)。"
+msgid ""
+"If I<pshared> has the value 0, then the semaphore is shared between the "
+"threads of a process, and should be located at some address that is visible "
+"to all threads (e.g., a global variable, or a variable allocated dynamically "
+"on the heap)."
+msgstr ""
+"I<pshared> が 0 の場合、セマフォはプロセス内のスレッド間で共有される。 セマ"
+"フォはすべてのスレッドから参照可能なアドレスに配置すべきである (例えば、大域"
+"変数や、ヒープ上に動的に割り当てられた変数など)。"
 
 #. type: Plain text
 #: build/C/man3/sem_init.3:74
-msgid "If I<pshared> is nonzero, then the semaphore is shared between processes, and should be located in a region of shared memory (see B<shm_open>(3), B<mmap>(2), and B<shmget>(2)).  (Since a child created by B<fork>(2)  inherits its parent's memory mappings, it can also access the semaphore.)  Any process that can access the shared memory region can operate on the semaphore using B<sem_post>(3), B<sem_wait>(3), and so on."
-msgstr "I<pshared> が 0 以外の場合、セマフォはプロセス間で共有される。セマフォは 共有メモリー領域に配置すべきである (B<shm_open>(3), B<mmap>(2), B<shmget>(2)  参照)。 (B<fork>(2)  で生成された子プロセスは親プロセスのメモリーマッピングを継承するため、 子プロセスもセマフォにアクセスできる。)  共有メモリー領域にアクセスできるプロセスならば、どのプロセスでも B<sem_post>(3)  や B<sem_wait>(3)  などを使ってセマフォを操作できる。"
+msgid ""
+"If I<pshared> is nonzero, then the semaphore is shared between processes, "
+"and should be located in a region of shared memory (see B<shm_open>(3), "
+"B<mmap>(2), and B<shmget>(2)).  (Since a child created by B<fork>(2)  "
+"inherits its parent's memory mappings, it can also access the semaphore.)  "
+"Any process that can access the shared memory region can operate on the "
+"semaphore using B<sem_post>(3), B<sem_wait>(3), and so on."
+msgstr ""
+"I<pshared> が 0 以外の場合、セマフォはプロセス間で共有される。セマフォは 共有"
+"メモリー領域に配置すべきである (B<shm_open>(3), B<mmap>(2), B<shmget>(2)  参"
+"照)。 (B<fork>(2)  で生成された子プロセスは親プロセスのメモリーマッピングを継"
+"承するため、 子プロセスもセマフォにアクセスできる。)  共有メモリー領域にアク"
+"セスできるプロセスならば、どのプロセスでも B<sem_post>(3)  や "
+"B<sem_wait>(3)  などを使ってセマフォを操作できる。"
 
 #. type: Plain text
 #: build/C/man3/sem_init.3:77
-msgid "Initializing a semaphore that has already been initialized results in undefined behavior."
+msgid ""
+"Initializing a semaphore that has already been initialized results in "
+"undefined behavior."
 msgstr "すでに初期化済のセマフォを初期化した場合の挙動は定義されていない。"
 
 #. type: Plain text
 #: build/C/man3/sem_init.3:83
-msgid "B<sem_init>()  returns 0 on success; on error, -1 is returned, and I<errno> is set to indicate the error."
-msgstr "成功すると、 B<sem_init>()  は 0 を返す。エラーの場合、-1 を返し、 I<errno> にエラーを示す値をセットする。"
+msgid ""
+"B<sem_init>()  returns 0 on success; on error, -1 is returned, and I<errno> "
+"is set to indicate the error."
+msgstr ""
+"成功すると、 B<sem_init>()  は 0 を返す。エラーの場合、-1 を返し、 I<errno> "
+"にエラーを示す値をセットする。"
 
 #. type: Plain text
 #: build/C/man3/sem_init.3:89
@@ -429,8 +532,12 @@ msgstr "B<ENOSYS>"
 
 #. type: Plain text
 #: build/C/man3/sem_init.3:95
-msgid "I<pshared> is nonzero, but the system does not support process-shared semaphores (see B<sem_overview>(7))."
-msgstr "I<pshared> が 0 以外だが、システムがプロセス共有セマフォをサポートしていない (B<sem_overview>(7)  参照)。"
+msgid ""
+"I<pshared> is nonzero, but the system does not support process-shared "
+"semaphores (see B<sem_overview>(7))."
+msgstr ""
+"I<pshared> が 0 以外だが、システムがプロセス共有セマフォをサポートしていない "
+"(B<sem_overview>(7)  参照)。"
 
 #. type: Plain text
 #: build/C/man3/sem_init.3:100
@@ -439,8 +546,14 @@ msgstr "B<sem_init>() 関数はスレッドセーフである。"
 
 #. type: Plain text
 #: build/C/man3/sem_init.3:107
-msgid "Bizarrely, POSIX.1-2001 does not specify the value that should be returned by a successful call to B<sem_init>().  POSIX.1-2008 rectifies this, specifying the zero return on success."
-msgstr "妙なことに、POSIX.1-2001 は B<sem_init>()  が成功した場合に返すべき値を規定していない。 POSIX.1-2008 ではこれが修正され、成功時には 0 を返すことが規定された。"
+msgid ""
+"Bizarrely, POSIX.1-2001 does not specify the value that should be returned "
+"by a successful call to B<sem_init>().  POSIX.1-2008 rectifies this, "
+"specifying the zero return on success."
+msgstr ""
+"妙なことに、POSIX.1-2001 は B<sem_init>()  が成功した場合に返すべき値を規定し"
+"ていない。 POSIX.1-2008 ではこれが修正され、成功時には 0 を返すことが規定され"
+"た。"
 
 #. type: Plain text
 #: build/C/man3/sem_init.3:112
@@ -484,24 +597,70 @@ msgstr ""
 
 #. type: Plain text
 #: build/C/man3/sem_open.3:50
-msgid "B<sem_open>()  creates a new POSIX semaphore or opens an existing semaphore.  The semaphore is identified by I<name>.  For details of the construction of I<name>, see B<sem_overview>(7)."
-msgstr "B<sem_open>()  は、新規の POSIX セマフォを作成するか、既存のセマフォのオープンを行う。 セマフォは I<name> で識別される。 I<name> の構成の詳細は B<sem_overview>(7)  を参照。"
+msgid ""
+"B<sem_open>()  creates a new POSIX semaphore or opens an existing "
+"semaphore.  The semaphore is identified by I<name>.  For details of the "
+"construction of I<name>, see B<sem_overview>(7)."
+msgstr ""
+"B<sem_open>()  は、新規の POSIX セマフォを作成するか、既存のセマフォのオープ"
+"ンを行う。 セマフォは I<name> で識別される。 I<name> の構成の詳細は "
+"B<sem_overview>(7)  を参照。"
 
 #.  In reality the filesystem IDs are used on Linux.
 #. type: Plain text
 #: build/C/man3/sem_open.3:76
-msgid "The I<oflag> argument specifies flags that control the operation of the call.  (Definitions of the flags values can be obtained by including I<E<lt>fcntl.hE<gt>>.)  If B<O_CREAT> is specified in I<oflag>, then the semaphore is created if it does not already exist.  The owner (user ID) of the semaphore is set to the effective user ID of the calling process.  The group ownership (group ID) is set to the effective group ID of the calling process.  If both B<O_CREAT> and B<O_EXCL> are specified in I<oflag>, then an error is returned if a semaphore with the given I<name> already exists."
-msgstr "I<oflag> 引き数には、 B<sem_open>()  の動作を制御するフラグを指定する (oflag の値の定義は I<E<lt>fcntl.hE<gt>> のインクルードにより得られる)。 I<oflag> に B<O_CREAT> が指定されると、まだ存在しない場合にはそのセマフォが作成される。 セマフォの所有者 (ユーザー ID)、グループ所有権 (グループ ID) には、 それぞれ呼び出し元プロセスの実効 UID、実効 GID が設定される。 I<oflag> に B<O_CREAT> と B<O_EXCL> の両方が指定された場合、指定された名前 I<name> のセマフォがすでに存在するとエラーが返される。"
+msgid ""
+"The I<oflag> argument specifies flags that control the operation of the "
+"call.  (Definitions of the flags values can be obtained by including "
+"I<E<lt>fcntl.hE<gt>>.)  If B<O_CREAT> is specified in I<oflag>, then the "
+"semaphore is created if it does not already exist.  The owner (user ID) of "
+"the semaphore is set to the effective user ID of the calling process.  The "
+"group ownership (group ID) is set to the effective group ID of the calling "
+"process.  If both B<O_CREAT> and B<O_EXCL> are specified in I<oflag>, then "
+"an error is returned if a semaphore with the given I<name> already exists."
+msgstr ""
+"I<oflag> 引き数には、 B<sem_open>()  の動作を制御するフラグを指定する (oflag "
+"の値の定義は I<E<lt>fcntl.hE<gt>> のインクルードにより得られる)。 I<oflag> "
+"に B<O_CREAT> が指定されると、まだ存在しない場合にはそのセマフォが作成され"
+"る。 セマフォの所有者 (ユーザー ID)、グループ所有権 (グループ ID) には、 それ"
+"ぞれ呼び出し元プロセスの実効 UID、実効 GID が設定される。 I<oflag> に "
+"B<O_CREAT> と B<O_EXCL> の両方が指定された場合、指定された名前 I<name> のセマ"
+"フォがすでに存在するとエラーが返される。"
 
 #. type: Plain text
 #: build/C/man3/sem_open.3:104
-msgid "If B<O_CREAT> is specified in I<oflag>, then two additional arguments must be supplied.  The I<mode> argument specifies the permissions to be placed on the new semaphore, as for B<open>(2).  (Symbolic definitions for the permissions bits can be obtained by including I<E<lt>sys/stat.hE<gt>>.)  The permissions settings are masked against the process umask.  Both read and write permission should be granted to each class of user that will access the semaphore.  The I<value> argument specifies the initial value for the new semaphore.  If B<O_CREAT> is specified, and a semaphore with the given I<name> already exists, then I<mode> and I<value> are ignored."
-msgstr "I<oflag> に B<O_CREAT> を指定する場合、さらに引き数が 2 つ必要である。 I<mode> 引き数は、 B<open>(2)  と同じように、新しいセマフォに設定されるアクセス許可 (permission) を 指定する。許可設定はプロセスの umask でマスクされる (許可ビットのシンボル定義は I<E<lt>sys/stat.hE<gt>> のインクルードにより得られる)。 セマフォにアクセスしようとするユーザーは、読み出し許可と書き込み許可の 両方を得る必要がある。 I<value> 引き数は新しいセマフォの初期値を指定する。 B<O_CREAT> が指定され、指定した名前 I<name> のセマフォがすでに存在する場合、 I<mode> と I<value> は無視される。"
+msgid ""
+"If B<O_CREAT> is specified in I<oflag>, then two additional arguments must "
+"be supplied.  The I<mode> argument specifies the permissions to be placed on "
+"the new semaphore, as for B<open>(2).  (Symbolic definitions for the "
+"permissions bits can be obtained by including I<E<lt>sys/stat.hE<gt>>.)  The "
+"permissions settings are masked against the process umask.  Both read and "
+"write permission should be granted to each class of user that will access "
+"the semaphore.  The I<value> argument specifies the initial value for the "
+"new semaphore.  If B<O_CREAT> is specified, and a semaphore with the given "
+"I<name> already exists, then I<mode> and I<value> are ignored."
+msgstr ""
+"I<oflag> に B<O_CREAT> を指定する場合、さらに引き数が 2 つ必要である。 "
+"I<mode> 引き数は、 B<open>(2)  と同じように、新しいセマフォに設定されるアクセ"
+"ス許可 (permission) を 指定する。許可設定はプロセスの umask でマスクされる "
+"(許可ビットのシンボル定義は I<E<lt>sys/stat.hE<gt>> のインクルードにより得ら"
+"れる)。 セマフォにアクセスしようとするユーザーは、読み出し許可と書き込み許可"
+"の 両方を得る必要がある。 I<value> 引き数は新しいセマフォの初期値を指定す"
+"る。 B<O_CREAT> が指定され、指定した名前 I<name> のセマフォがすでに存在する場"
+"合、 I<mode> と I<value> は無視される。"
 
 #. type: Plain text
 #: build/C/man3/sem_open.3:116
-msgid "On success, B<sem_open>()  returns the address of the new semaphore; this address is used when calling other semaphore-related functions.  On error, B<sem_open>()  returns B<SEM_FAILED>, with I<errno> set to indicate the error."
-msgstr "成功すると、 B<sem_open>()  は新しいセマフォのアドレスを返す。 このアドレスは他のセマフォ関連の関数を呼び出す際に使用される。 エラーの場合、 B<sem_open>()  は B<SEM_FAILED> を返し、 I<errno> にエラーを示す値をセットする。"
+msgid ""
+"On success, B<sem_open>()  returns the address of the new semaphore; this "
+"address is used when calling other semaphore-related functions.  On error, "
+"B<sem_open>()  returns B<SEM_FAILED>, with I<errno> set to indicate the "
+"error."
+msgstr ""
+"成功すると、 B<sem_open>()  は新しいセマフォのアドレスを返す。 このアドレスは"
+"他のセマフォ関連の関数を呼び出す際に使用される。 エラーの場合、 "
+"B<sem_open>()  は B<SEM_FAILED> を返し、 I<errno> にエラーを示す値をセットす"
+"る。"
 
 #. type: TP
 #: build/C/man3/sem_open.3:117 build/C/man3/sem_unlink.3:51
@@ -513,8 +672,11 @@ msgstr "B<EACCES>"
 
 #. type: Plain text
 #: build/C/man3/sem_open.3:121
-msgid "The semaphore exists, but the caller does not have permission to open it."
-msgstr "そのセマフォが存在するが、呼び出し元にはそのセマフォをオープンする 許可がない。"
+msgid ""
+"The semaphore exists, but the caller does not have permission to open it."
+msgstr ""
+"そのセマフォが存在するが、呼び出し元にはそのセマフォをオープンする 許可がな"
+"い。"
 
 #. type: TP
 #: build/C/man3/sem_open.3:121 build/C/man2/semget.2:165
@@ -524,8 +686,12 @@ msgstr "B<EEXIST>"
 
 #. type: Plain text
 #: build/C/man3/sem_open.3:132
-msgid "Both B<O_CREAT> and B<O_EXCL> were specified in I<oflag>, but a semaphore with this I<name> already exists."
-msgstr "I<oflag> に B<O_CREAT> と B<O_EXCL> の両方が指定されたが、 I<name> という名前のセマフォはすでに存在する。"
+msgid ""
+"Both B<O_CREAT> and B<O_EXCL> were specified in I<oflag>, but a semaphore "
+"with this I<name> already exists."
+msgstr ""
+"I<oflag> に B<O_CREAT> と B<O_EXCL> の両方が指定されたが、 I<name> という名前"
+"のセマフォはすでに存在する。"
 
 #. type: Plain text
 #: build/C/man3/sem_open.3:137
@@ -535,7 +701,8 @@ msgstr "I<value> が B<SEM_VALUE_MAX> よりも大きい。"
 #. type: Plain text
 #: build/C/man3/sem_open.3:141
 msgid "I<name> consists of just \"/\", followed by no other characters."
-msgstr "I<name> が \"/\" だけで構成され、その後ろに他の文字が続いていなかった。"
+msgstr ""
+"I<name> が \"/\" だけで構成され、その後ろに他の文字が続いていなかった。"
 
 #. type: TP
 #: build/C/man3/sem_open.3:141
@@ -581,8 +748,13 @@ msgstr "B<ENOENT>"
 #.  /dir/name, and the directory /dev/shm/dir does not exist.
 #. type: Plain text
 #: build/C/man3/sem_open.3:167
-msgid "The B<O_CREAT> flag was not specified in I<oflag> and no semaphore with this I<name> exists; or, B<O_CREAT> was specified, but I<name> wasn't well formed."
-msgstr "I<oflag> に B<O_CREAT> フラグが指定されておらず、 I<name> という名前のセマフォも存在しない。 または、 B<O_CREAT> が指定されたが、 I<name> が適切な形式ではなかった。"
+msgid ""
+"The B<O_CREAT> flag was not specified in I<oflag> and no semaphore with this "
+"I<name> exists; or, B<O_CREAT> was specified, but I<name> wasn't well formed."
+msgstr ""
+"I<oflag> に B<O_CREAT> フラグが指定されておらず、 I<name> という名前のセマ"
+"フォも存在しない。 または、 B<O_CREAT> が指定されたが、 I<name> が適切な形式"
+"ではなかった。"
 
 #. type: TP
 #: build/C/man3/sem_open.3:167 build/C/man2/semget.2:198
@@ -598,8 +770,12 @@ msgstr "十分なメモリーがない。"
 
 #. type: Plain text
 #: build/C/man3/sem_open.3:179
-msgid "B<sem_close>(3), B<sem_getvalue>(3), B<sem_post>(3), B<sem_unlink>(3), B<sem_wait>(3), B<sem_overview>(7)"
-msgstr "B<sem_close>(3), B<sem_getvalue>(3), B<sem_post>(3), B<sem_unlink>(3), B<sem_wait>(3), B<sem_overview>(7)"
+msgid ""
+"B<sem_close>(3), B<sem_getvalue>(3), B<sem_post>(3), B<sem_unlink>(3), "
+"B<sem_wait>(3), B<sem_overview>(7)"
+msgstr ""
+"B<sem_close>(3), B<sem_getvalue>(3), B<sem_post>(3), B<sem_unlink>(3), "
+"B<sem_wait>(3), B<sem_overview>(7)"
 
 #. type: TH
 #: build/C/man7/sem_overview.7:26
@@ -614,18 +790,34 @@ msgstr "sem_overview - POSIX セマフォの概要"
 
 #. type: Plain text
 #: build/C/man7/sem_overview.7:31
-msgid "POSIX semaphores allow processes and threads to synchronize their actions."
-msgstr "POSIX セマフォを使用すると、プロセスやスレッド間でその動作を 同期させることができる。"
+msgid ""
+"POSIX semaphores allow processes and threads to synchronize their actions."
+msgstr ""
+"POSIX セマフォを使用すると、プロセスやスレッド間でその動作を 同期させることが"
+"できる。"
 
 #. type: Plain text
 #: build/C/man7/sem_overview.7:41
-msgid "A semaphore is an integer whose value is never allowed to fall below zero.  Two operations can be performed on semaphores: increment the semaphore value by one (B<sem_post>(3)); and decrement the semaphore value by one (B<sem_wait>(3)).  If the value of a semaphore is currently zero, then a B<sem_wait>(3)  operation will block until the value becomes greater than zero."
-msgstr "セマフォは整数であり、その値は決して 0 未満になることは許されない。 セマフォに対してできる操作は 2 つである: セマフォ値を 1 増やす (B<sem_post>(3)); セマフォ値を 1 減らす (B<sem_wait>(3))。 セマフォの値がすでに 0 の場合、セマフォ値が 0 より大きくなるまで B<sem_wait>(3)  操作は停止 (block) する。"
+msgid ""
+"A semaphore is an integer whose value is never allowed to fall below zero.  "
+"Two operations can be performed on semaphores: increment the semaphore value "
+"by one (B<sem_post>(3)); and decrement the semaphore value by one "
+"(B<sem_wait>(3)).  If the value of a semaphore is currently zero, then a "
+"B<sem_wait>(3)  operation will block until the value becomes greater than "
+"zero."
+msgstr ""
+"セマフォは整数であり、その値は決して 0 未満になることは許されない。 セマフォ"
+"に対してできる操作は 2 つである: セマフォ値を 1 増やす (B<sem_post>(3)); セマ"
+"フォ値を 1 減らす (B<sem_wait>(3))。 セマフォの値がすでに 0 の場合、セマフォ"
+"値が 0 より大きくなるまで B<sem_wait>(3)  操作は停止 (block) する。"
 
 #. type: Plain text
 #: build/C/man7/sem_overview.7:44
-msgid "POSIX semaphores come in two forms: named semaphores and unnamed semaphores."
-msgstr "POSIX セマフォには、名前付きセマフォ (named semaphore) と 名前なしセマフォ (unnamed semaphore) の 2つの形がある。"
+msgid ""
+"POSIX semaphores come in two forms: named semaphores and unnamed semaphores."
+msgstr ""
+"POSIX セマフォには、名前付きセマフォ (named semaphore) と 名前なしセマフォ "
+"(unnamed semaphore) の 2つの形がある。"
 
 #. type: TP
 #: build/C/man7/sem_overview.7:44
@@ -644,13 +836,35 @@ msgstr "B<名前付きセマフォ>"
 #.  object in a subdirectory.
 #. type: Plain text
 #: build/C/man7/sem_overview.7:64
-msgid "A named semaphore is identified by a name of the form I</somename>; that is, a null-terminated string of up to B<NAME_MAX>I<-4> (i.e., 251) characters consisting of an initial slash, followed by one or more characters, none of which are slashes.  Two processes can operate on the same named semaphore by passing the same name to B<sem_open>(3)."
-msgstr "名前付きセマフォは I</somename> という形式の名前で識別される。 その名前は、最大で B<NAME_MAX>I<-4> (すなわち 251) 文字のヌル終端された文字列で、 スラッシュで始まり、スラッシュ以外の文字が 1 文字以上続く形式である。 B<sem_open>(3)  に同じ名前を渡すことにより、2 つのプロセス間で同じ名前のセマフォ に対し操作を行うことができる。"
+msgid ""
+"A named semaphore is identified by a name of the form I</somename>; that is, "
+"a null-terminated string of up to B<NAME_MAX>I<-4> (i.e., 251) characters "
+"consisting of an initial slash, followed by one or more characters, none of "
+"which are slashes.  Two processes can operate on the same named semaphore by "
+"passing the same name to B<sem_open>(3)."
+msgstr ""
+"名前付きセマフォは I</somename> という形式の名前で識別される。 その名前は、最"
+"大で B<NAME_MAX>I<-4> (すなわち 251) 文字のヌル終端された文字列で、 スラッ"
+"シュで始まり、スラッシュ以外の文字が 1 文字以上続く形式である。 "
+"B<sem_open>(3)  に同じ名前を渡すことにより、2 つのプロセス間で同じ名前のセマ"
+"フォ に対し操作を行うことができる。"
 
 #. type: Plain text
 #: build/C/man7/sem_overview.7:79
-msgid "The B<sem_open>(3)  function creates a new named semaphore or opens an existing named semaphore.  After the semaphore has been opened, it can be operated on using B<sem_post>(3)  and B<sem_wait>(3).  When a process has finished using the semaphore, it can use B<sem_close>(3)  to close the semaphore.  When all processes have finished using the semaphore, it can be removed from the system using B<sem_unlink>(3)."
-msgstr "B<sem_open>(3)  関数は、新しい名前付きセマフォを作成するか、既に存在する名前付き セマフォをオープンする。 セマフォをオープンした後は、 B<sem_post>(3)  と B<sem_wait>(3)  を使ってセマフォを操作できる。 プロセスがセマフォの使用を終えた際は、 B<sem_close>(3)  を使ってセマフォをクローズできる。 あるセマフォをどのプロセスも使用しなくなると、 B<sem_unlink>(3)  を使ってそのセマフォをシステムから削除することができる。"
+msgid ""
+"The B<sem_open>(3)  function creates a new named semaphore or opens an "
+"existing named semaphore.  After the semaphore has been opened, it can be "
+"operated on using B<sem_post>(3)  and B<sem_wait>(3).  When a process has "
+"finished using the semaphore, it can use B<sem_close>(3)  to close the "
+"semaphore.  When all processes have finished using the semaphore, it can be "
+"removed from the system using B<sem_unlink>(3)."
+msgstr ""
+"B<sem_open>(3)  関数は、新しい名前付きセマフォを作成するか、既に存在する名前"
+"付き セマフォをオープンする。 セマフォをオープンした後は、 B<sem_post>(3)  "
+"と B<sem_wait>(3)  を使ってセマフォを操作できる。 プロセスがセマフォの使用を"
+"終えた際は、 B<sem_close>(3)  を使ってセマフォをクローズできる。 あるセマフォ"
+"をどのプロセスも使用しなくなると、 B<sem_unlink>(3)  を使ってそのセマフォをシ"
+"ステムから削除することができる。"
 
 #. type: TP
 #: build/C/man7/sem_overview.7:79
@@ -660,18 +874,47 @@ msgstr "B<名前なしセマフォ (メモリーベースセマフォ)>"
 
 #. type: Plain text
 #: build/C/man7/sem_overview.7:94
-msgid "An unnamed semaphore does not have a name.  Instead the semaphore is placed in a region of memory that is shared between multiple threads (a I<thread-shared semaphore>)  or processes (a I<process-shared semaphore>).  A thread-shared semaphore is placed in an area of memory shared between the threads of a process, for example, a global variable.  A process-shared semaphore must be placed in a shared memory region (e.g., a System V shared memory segment created using B<shmget>(2), or a POSIX shared memory object built created using B<shm_open>(3))."
-msgstr "名前なしセマフォは名前を持たない。その代わり、セマフォは、 複数スレッド間で共有されるメモリー領域、もしくは複数プロセス間で 共有されたメモリー領域に置かれる (前者を I<スレッド共有セマフォ (thread-shared semaphore)>、 後者を I<プロセス共有セマフォ (process-shared semaphore)> と呼ぶ)。スレッド共有セマフォは、同じプロセス内のスレッド間で共有される メモリー領域、例えば大域変数 (global variable) に配置される。 プロセス共有セマフォは、共有メモリー領域 (例えば、 B<shmget>(2)  を使って作成できる System V 共有メモリーセグメントや B<shm_open>(3)  を使って作成できる POSIX 共有メモリーオブジェクト)  内に配置しなければならない。"
+msgid ""
+"An unnamed semaphore does not have a name.  Instead the semaphore is placed "
+"in a region of memory that is shared between multiple threads (a I<thread-"
+"shared semaphore>)  or processes (a I<process-shared semaphore>).  A thread-"
+"shared semaphore is placed in an area of memory shared between the threads "
+"of a process, for example, a global variable.  A process-shared semaphore "
+"must be placed in a shared memory region (e.g., a System V shared memory "
+"segment created using B<shmget>(2), or a POSIX shared memory object built "
+"created using B<shm_open>(3))."
+msgstr ""
+"名前なしセマフォは名前を持たない。その代わり、セマフォは、 複数スレッド間で共"
+"有されるメモリー領域、もしくは複数プロセス間で 共有されたメモリー領域に置かれ"
+"る (前者を I<スレッド共有セマフォ (thread-shared semaphore)>、 後者を I<プロ"
+"セス共有セマフォ (process-shared semaphore)> と呼ぶ)。スレッド共有セマフォ"
+"は、同じプロセス内のスレッド間で共有される メモリー領域、例えば大域変数 "
+"(global variable) に配置される。 プロセス共有セマフォは、共有メモリー領域 (例"
+"えば、 B<shmget>(2)  を使って作成できる System V 共有メモリーセグメントや "
+"B<shm_open>(3)  を使って作成できる POSIX 共有メモリーオブジェクト)  内に配置"
+"しなければならない。"
 
 #. type: Plain text
 #: build/C/man7/sem_overview.7:105
-msgid "Before being used, an unnamed semaphore must be initialized using B<sem_init>(3).  It can then be operated on using B<sem_post>(3)  and B<sem_wait>(3).  When the semaphore is no longer required, and before the memory in which it is located is deallocated, the semaphore should be destroyed using B<sem_destroy>(3)."
-msgstr "名前なしセマフォは、使用する前に B<sem_init>(3)  を使って初期化しなければならない。 セマフォは B<sem_post>(3)  と B<sem_wait>(3)  を使って操作できる。 セマフォがもはや必要なくなったときや、 セマフォが置かれているメモリーを解放する前には、 B<sem_destroy>(3)  を使ってセマフォを破棄すべきである。"
+msgid ""
+"Before being used, an unnamed semaphore must be initialized using "
+"B<sem_init>(3).  It can then be operated on using B<sem_post>(3)  and "
+"B<sem_wait>(3).  When the semaphore is no longer required, and before the "
+"memory in which it is located is deallocated, the semaphore should be "
+"destroyed using B<sem_destroy>(3)."
+msgstr ""
+"名前なしセマフォは、使用する前に B<sem_init>(3)  を使って初期化しなければなら"
+"ない。 セマフォは B<sem_post>(3)  と B<sem_wait>(3)  を使って操作できる。 セ"
+"マフォがもはや必要なくなったときや、 セマフォが置かれているメモリーを解放する"
+"前には、 B<sem_destroy>(3)  を使ってセマフォを破棄すべきである。"
 
 #. type: Plain text
 #: build/C/man7/sem_overview.7:108
-msgid "The remainder of this section describes some specific details of the Linux implementation of POSIX semaphores."
-msgstr "この節の残りでは、POSIX セマフォの Linux の実装の詳細 について説明する。"
+msgid ""
+"The remainder of this section describes some specific details of the Linux "
+"implementation of POSIX semaphores."
+msgstr ""
+"この節の残りでは、POSIX セマフォの Linux の実装の詳細 について説明する。"
 
 #. type: SS
 #: build/C/man7/sem_overview.7:108
@@ -681,8 +924,15 @@ msgstr "Versions"
 
 #. type: Plain text
 #: build/C/man7/sem_overview.7:114
-msgid "Prior to kernel 2.6, Linux supported only unnamed, thread-shared semaphores.  On a system with Linux 2.6 and a glibc that provides the NPTL threading implementation, a complete implementation of POSIX semaphores is provided."
-msgstr "バージョン 2.6 より前のカーネルでは、Linux は 名前なしのスレッド共有セマフォのみをサポートしていた。 Linux 2.6 と NPTL スレッド実装を提供している glibc が入った システムでは、POSIX セマフォの完全な実装が提供される。"
+msgid ""
+"Prior to kernel 2.6, Linux supported only unnamed, thread-shared "
+"semaphores.  On a system with Linux 2.6 and a glibc that provides the NPTL "
+"threading implementation, a complete implementation of POSIX semaphores is "
+"provided."
+msgstr ""
+"バージョン 2.6 より前のカーネルでは、Linux は 名前なしのスレッド共有セマフォ"
+"のみをサポートしていた。 Linux 2.6 と NPTL スレッド実装を提供している glibc "
+"が入った システムでは、POSIX セマフォの完全な実装が提供される。"
 
 #. type: SS
 #: build/C/man7/sem_overview.7:114
@@ -692,8 +942,12 @@ msgstr "持続性"
 
 #. type: Plain text
 #: build/C/man7/sem_overview.7:119
-msgid "POSIX named semaphores have kernel persistence: if not removed by B<sem_unlink>(3), a semaphore will exist until the system is shut down."
-msgstr "POSIX 名前付きセマフォはカーネル内で保持される。 B<sem_unlink>(3)  で削除されなければ、セマフォは システムがシャットダウンされるまで存在し続ける。"
+msgid ""
+"POSIX named semaphores have kernel persistence: if not removed by "
+"B<sem_unlink>(3), a semaphore will exist until the system is shut down."
+msgstr ""
+"POSIX 名前付きセマフォはカーネル内で保持される。 B<sem_unlink>(3)  で削除され"
+"なければ、セマフォは システムがシャットダウンされるまで存在し続ける。"
 
 #. type: SS
 #: build/C/man7/sem_overview.7:119
@@ -703,8 +957,12 @@ msgstr "リンク"
 
 #. type: Plain text
 #: build/C/man7/sem_overview.7:124
-msgid "Programs using the POSIX semaphores API must be compiled with I<cc -pthread> to link against the real-time library, I<librt>."
-msgstr "POSIX セマフォ API を使用したプログラムは I<cc -pthread> でコンパイルし、リアルタイムライブラリ I<librt> とリンクしなければならない。"
+msgid ""
+"Programs using the POSIX semaphores API must be compiled with I<cc -pthread> "
+"to link against the real-time library, I<librt>."
+msgstr ""
+"POSIX セマフォ API を使用したプログラムは I<cc -pthread> でコンパイルし、リア"
+"ルタイムライブラリ I<librt> とリンクしなければならない。"
 
 #. type: SS
 #: build/C/man7/sem_overview.7:124
@@ -714,18 +972,38 @@ msgstr "ファイルシステム経由での名前付きセマフォへのアク
 
 #. type: Plain text
 #: build/C/man7/sem_overview.7:135
-msgid "On Linux, named semaphores are created in a virtual filesystem, normally mounted under I</dev/shm>, with names of the form B<sem.>I<somename>.  (This is the reason that semaphore names are limited to B<NAME_MAX>I<-4> rather than B<NAME_MAX> characters.)"
-msgstr "Linux では、名前付きセマフォは仮想ファイルシステム (virtual file system) 内に B<sem.>I<somename> という形の名前で作成される。仮想ファイルシステムは通常 I</dev/shm> 以下にマウントされる。 (これが、セマフォの名前の文字数の上限が B<NAME_MAX> ではなく B<NAME_MAX>I<-4> となっている理由である。)"
+msgid ""
+"On Linux, named semaphores are created in a virtual filesystem, normally "
+"mounted under I</dev/shm>, with names of the form B<sem.>I<somename>.  (This "
+"is the reason that semaphore names are limited to B<NAME_MAX>I<-4> rather "
+"than B<NAME_MAX> characters.)"
+msgstr ""
+"Linux では、名前付きセマフォは仮想ファイルシステム (virtual file system) 内"
+"に B<sem.>I<somename> という形の名前で作成される。仮想ファイルシステムは通常 "
+"I</dev/shm> 以下にマウントされる。 (これが、セマフォの名前の文字数の上限が "
+"B<NAME_MAX> ではなく B<NAME_MAX>I<-4> となっている理由である。)"
 
 #. type: Plain text
 #: build/C/man7/sem_overview.7:138
-msgid "Since Linux 2.6.19, ACLs can be placed on files under this directory, to control object permissions on a per-user and per-group basis."
-msgstr "Linux 2.6.19 以降では、このディレクトリ配下のファイルに対して ACL を 設定でき、オブジェクトへの許可をユーザー単位、グループ単位で制御することが できる。"
+msgid ""
+"Since Linux 2.6.19, ACLs can be placed on files under this directory, to "
+"control object permissions on a per-user and per-group basis."
+msgstr ""
+"Linux 2.6.19 以降では、このディレクトリ配下のファイルに対して ACL を 設定で"
+"き、オブジェクトへの許可をユーザー単位、グループ単位で制御することが できる。"
 
 #. type: Plain text
 #: build/C/man7/sem_overview.7:149
-msgid "System V semaphores (B<semget>(2), B<semop>(2), etc.) are an older semaphore API.  POSIX semaphores provide a simpler, and better designed interface than System V semaphores; on the other hand POSIX semaphores are less widely available (especially on older systems) than System V semaphores."
-msgstr "System V セマフォ (B<semget>(2), B<semop>(2)  など) は古いセマフォ API である。 POSIX セマフォは System V よりも 簡単で、うまく設計されたインターフェースを提供している。 一方で、POSIX セマフォは System V セマフォと比べると 利用できるシステムが少ない (特に、古いシステムでは少ない)。"
+msgid ""
+"System V semaphores (B<semget>(2), B<semop>(2), etc.) are an older semaphore "
+"API.  POSIX semaphores provide a simpler, and better designed interface than "
+"System V semaphores; on the other hand POSIX semaphores are less widely "
+"available (especially on older systems) than System V semaphores."
+msgstr ""
+"System V セマフォ (B<semget>(2), B<semop>(2)  など) は古いセマフォ API であ"
+"る。 POSIX セマフォは System V よりも 簡単で、うまく設計されたインターフェー"
+"スを提供している。 一方で、POSIX セマフォは System V セマフォと比べると 利用"
+"できるシステムが少ない (特に、古いシステムでは少ない)。"
 
 #. type: SH
 #: build/C/man7/sem_overview.7:149 build/C/man3/sem_post.3:72
@@ -736,13 +1014,22 @@ msgstr "例"
 
 #. type: Plain text
 #: build/C/man7/sem_overview.7:152
-msgid "An example of the use of various POSIX semaphore functions is shown in B<sem_wait>(3)."
-msgstr "各種の POSIX セマフォ関数を使用した例が B<sem_wait>(3)  に記載されている。"
+msgid ""
+"An example of the use of various POSIX semaphore functions is shown in "
+"B<sem_wait>(3)."
+msgstr ""
+"各種の POSIX セマフォ関数を使用した例が B<sem_wait>(3)  に記載されている。"
 
 #. type: Plain text
 #: build/C/man7/sem_overview.7:162
-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)"
-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)"
+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)"
+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)"
 
 #. type: TH
 #: build/C/man3/sem_post.3:26
@@ -770,13 +1057,24 @@ msgstr "B<int sem_post(sem_t *>I<sem>B<);>\n"
 
 #. type: Plain text
 #: build/C/man3/sem_post.3:45
-msgid "B<sem_post>()  increments (unlocks) the semaphore pointed to by I<sem>.  If the semaphore's value consequently becomes greater than zero, then another process or thread blocked in a B<sem_wait>(3)  call will be woken up and proceed to lock the semaphore."
-msgstr "B<sem_post>()  は、 I<sem> が指すセマフォの値を 1 増やす (ロックを解除する)。その結果、 セマフォの値は 0 より大きな値に変化し、 B<sem_wait>(3)  で停止している別のプロセスやスレッドが呼び起こされ、 セマフォをロックできるようになる。"
+msgid ""
+"B<sem_post>()  increments (unlocks) the semaphore pointed to by I<sem>.  If "
+"the semaphore's value consequently becomes greater than zero, then another "
+"process or thread blocked in a B<sem_wait>(3)  call will be woken up and "
+"proceed to lock the semaphore."
+msgstr ""
+"B<sem_post>()  は、 I<sem> が指すセマフォの値を 1 増やす (ロックを解除する)。"
+"その結果、 セマフォの値は 0 より大きな値に変化し、 B<sem_wait>(3)  で停止して"
+"いる別のプロセスやスレッドが呼び起こされ、 セマフォをロックできるようになる。"
 
 #. type: Plain text
 #: build/C/man3/sem_post.3:52
-msgid "B<sem_post>()  returns 0 on success; on error, the value of the semaphore is left unchanged, -1 is returned, and I<errno> is set to indicate the error."
-msgstr "成功すると、 B<sem_post>()  は 0 を返す。エラーの場合、セマフォの値は変更せずに、 -1 を返し、 I<errno> にエラーを示す値をセットする。"
+msgid ""
+"B<sem_post>()  returns 0 on success; on error, the value of the semaphore is "
+"left unchanged, -1 is returned, and I<errno> is set to indicate the error."
+msgstr ""
+"成功すると、 B<sem_post>()  は 0 を返す。エラーの場合、セマフォの値は変更せず"
+"に、 -1 を返し、 I<errno> にエラーを示す値をセットする。"
 
 #. type: TP
 #: build/C/man3/sem_post.3:57
@@ -797,8 +1095,12 @@ msgstr "B<sem_post>() 関数はスレッドセーフである。"
 
 #. type: Plain text
 #: build/C/man3/sem_post.3:72
-msgid "B<sem_post>()  is async-signal-safe: it may be safely called within a signal handler."
-msgstr "B<sem_post>()  は async-signal-safe である。 つまり、シグナルハンドラーの中でも安全に呼び出すことができる。"
+msgid ""
+"B<sem_post>()  is async-signal-safe: it may be safely called within a signal "
+"handler."
+msgstr ""
+"B<sem_post>()  は async-signal-safe である。 つまり、シグナルハンドラーの中で"
+"も安全に呼び出すことができる。"
 
 #. type: Plain text
 #: build/C/man3/sem_post.3:75
@@ -829,13 +1131,23 @@ msgstr "B<int sem_unlink(const char *>I<name>B<);>\n"
 
 #. type: Plain text
 #: build/C/man3/sem_unlink.3:44
-msgid "B<sem_unlink>()  removes the named semaphore referred to by I<name>.  The semaphore name is removed immediately.  The semaphore is destroyed once all other processes that have the semaphore open close it."
-msgstr "B<sem_unlink>()  は、 I<name> で参照される名前付きセマフォを削除する。 セマフォの名前は直ちに削除される。 このセマフォをオープンしている他のすべてのプロセスがセマフォを 閉じて初めてセマフォの削除が行われる。"
+msgid ""
+"B<sem_unlink>()  removes the named semaphore referred to by I<name>.  The "
+"semaphore name is removed immediately.  The semaphore is destroyed once all "
+"other processes that have the semaphore open close it."
+msgstr ""
+"B<sem_unlink>()  は、 I<name> で参照される名前付きセマフォを削除する。 セマ"
+"フォの名前は直ちに削除される。 このセマフォをオープンしている他のすべてのプロ"
+"セスがセマフォを 閉じて初めてセマフォの削除が行われる。"
 
 #. type: Plain text
 #: build/C/man3/sem_unlink.3:50
-msgid "On success B<sem_unlink>()  returns 0; on error, -1 is returned, with I<errno> set to indicate the error."
-msgstr "成功すると、 B<sem_unlink>()  は 0 を返す。エラーの場合、-1 を返し、 I<errno> にエラーを示す値をセットする。"
+msgid ""
+"On success B<sem_unlink>()  returns 0; on error, -1 is returned, with "
+"I<errno> set to indicate the error."
+msgstr ""
+"成功すると、 B<sem_unlink>()  は 0 を返す。エラーの場合、-1 を返し、 "
+"I<errno> にエラーを示す値をセットする。"
 
 #. type: Plain text
 #: build/C/man3/sem_unlink.3:54
@@ -854,8 +1166,12 @@ msgstr "B<sem_unlink>() 関数はスレッドセーフである。"
 
 #. type: Plain text
 #: build/C/man3/sem_unlink.3:75
-msgid "B<sem_getvalue>(3), B<sem_open>(3), B<sem_post>(3), B<sem_wait>(3), B<sem_overview>(7)"
-msgstr "B<sem_getvalue>(3), B<sem_open>(3), B<sem_post>(3), B<sem_wait>(3), B<sem_overview>(7)"
+msgid ""
+"B<sem_getvalue>(3), B<sem_open>(3), B<sem_post>(3), B<sem_wait>(3), "
+"B<sem_overview>(7)"
+msgstr ""
+"B<sem_getvalue>(3), B<sem_open>(3), B<sem_post>(3), B<sem_wait>(3), "
+"B<sem_overview>(7)"
 
 #. type: TH
 #: build/C/man3/sem_wait.3:26
@@ -888,28 +1204,62 @@ msgstr "B<int sem_timedwait(sem_t *>I<sem>B<, const struct timespec *>I<abs_time
 
 #. type: Plain text
 #: build/C/man3/sem_wait.3:45 build/C/man2/semop.2:53
-msgid "Feature Test Macro Requirements for glibc (see B<feature_test_macros>(7)):"
+msgid ""
+"Feature Test Macro Requirements for glibc (see B<feature_test_macros>(7)):"
 msgstr "glibc 向けの機能検査マクロの要件 (B<feature_test_macros>(7)  参照):"
 
 #. type: Plain text
 #: build/C/man3/sem_wait.3:49
-msgid "B<sem_timedwait>(): _POSIX_C_SOURCE\\ E<gt>=\\ 200112L || _XOPEN_SOURCE\\ E<gt>=\\ 600"
-msgstr "B<sem_timedwait>(): _POSIX_C_SOURCE\\ E<gt>=\\ 200112L || _XOPEN_SOURCE\\ E<gt>=\\ 600"
+msgid ""
+"B<sem_timedwait>(): _POSIX_C_SOURCE\\ E<gt>=\\ 200112L || _XOPEN_SOURCE\\ "
+"E<gt>=\\ 600"
+msgstr ""
+"B<sem_timedwait>(): _POSIX_C_SOURCE\\ E<gt>=\\ 200112L || _XOPEN_SOURCE\\ "
+"E<gt>=\\ 600"
 
 #. type: Plain text
 #: build/C/man3/sem_wait.3:59
-msgid "B<sem_wait>()  decrements (locks) the semaphore pointed to by I<sem>.  If the semaphore's value is greater than zero, then the decrement proceeds, and the function returns, immediately.  If the semaphore currently has the value zero, then the call blocks until either it becomes possible to perform the decrement (i.e., the semaphore value rises above zero), or a signal handler interrupts the call."
-msgstr "B<sem_wait>()  は I<sem> が指すセマフォの値を 1 減らす (ロックする)。 セマフォの値が 0 より大きい場合、減算が実行され、関数は直ちに復帰する。 セマフォの現在値が 0 の場合には、減算を実行できるようになる (つまり、セマフォの値が 0 より大きな値になる) まで、もしくは シグナルハンドラーによって呼び出しが中断されるまで、 関数呼び出しは停止 (block) する。"
+msgid ""
+"B<sem_wait>()  decrements (locks) the semaphore pointed to by I<sem>.  If "
+"the semaphore's value is greater than zero, then the decrement proceeds, and "
+"the function returns, immediately.  If the semaphore currently has the value "
+"zero, then the call blocks until either it becomes possible to perform the "
+"decrement (i.e., the semaphore value rises above zero), or a signal handler "
+"interrupts the call."
+msgstr ""
+"B<sem_wait>()  は I<sem> が指すセマフォの値を 1 減らす (ロックする)。 セマ"
+"フォの値が 0 より大きい場合、減算が実行され、関数は直ちに復帰する。 セマフォ"
+"の現在値が 0 の場合には、減算を実行できるようになる (つまり、セマフォの値が "
+"0 より大きな値になる) まで、もしくは シグナルハンドラーによって呼び出しが中断"
+"されるまで、 関数呼び出しは停止 (block) する。"
 
 #. type: Plain text
 #: build/C/man3/sem_wait.3:69
-msgid "B<sem_trywait>()  is the same as B<sem_wait>(), except that if the decrement cannot be immediately performed, then call returns an error (I<errno> set to B<EAGAIN>)  instead of blocking."
-msgstr "B<sem_trywait>()  は B<sem_wait>()  と同じだが、セマフォ値の減算をすぐに実行できなかった場合に、 停止 (block) するのではなくエラーで復帰する (I<errno> に B<EAGAIN> がセットされる) 点が異なる。"
+msgid ""
+"B<sem_trywait>()  is the same as B<sem_wait>(), except that if the decrement "
+"cannot be immediately performed, then call returns an error (I<errno> set to "
+"B<EAGAIN>)  instead of blocking."
+msgstr ""
+"B<sem_trywait>()  は B<sem_wait>()  と同じだが、セマフォ値の減算をすぐに実行"
+"できなかった場合に、 停止 (block) するのではなくエラーで復帰する (I<errno> "
+"に B<EAGAIN> がセットされる) 点が異なる。"
 
 #. type: Plain text
 #: build/C/man3/sem_wait.3:82
-msgid "B<sem_timedwait>()  is the same as B<sem_wait>(), except that I<abs_timeout> specifies a limit on the amount of time that the call should block if the decrement cannot be immediately performed.  The I<abs_timeout> argument points to a structure that specifies an absolute timeout in seconds and nanoseconds since the Epoch, 1970-01-01 00:00:00 +0000 (UTC).  This structure is defined as follows:"
-msgstr "B<sem_timedwait>()  は B<sem_wait>()  と同じだが、セマフォ値の減算をすぐに実行できなかった場合に 関数呼び出しが停止する時間の上限を I<abs_timeout> で指定する点が異なる。 I<abs_timeout> 引き数は、タイムアウト時刻を指定する構造体へのポインターである。 この構造体には、タイムアウト時刻を時刻紀元 (Epoch; 1970-01-01 00:00:00 +0000 (UTC)) からの 経過時間 (秒+ナノ秒) で指定する。 構造体は以下のように定義されている:"
+msgid ""
+"B<sem_timedwait>()  is the same as B<sem_wait>(), except that I<abs_timeout> "
+"specifies a limit on the amount of time that the call should block if the "
+"decrement cannot be immediately performed.  The I<abs_timeout> argument "
+"points to a structure that specifies an absolute timeout in seconds and "
+"nanoseconds since the Epoch, 1970-01-01 00:00:00 +0000 (UTC).  This "
+"structure is defined as follows:"
+msgstr ""
+"B<sem_timedwait>()  は B<sem_wait>()  と同じだが、セマフォ値の減算をすぐに実"
+"行できなかった場合に 関数呼び出しが停止する時間の上限を I<abs_timeout> で指定"
+"する点が異なる。 I<abs_timeout> 引き数は、タイムアウト時刻を指定する構造体へ"
+"のポインターである。 この構造体には、タイムアウト時刻を時刻紀元 (Epoch; "
+"1970-01-01 00:00:00 +0000 (UTC)) からの 経過時間 (秒+ナノ秒) で指定する。 構"
+"造体は以下のように定義されている:"
 
 #. type: Plain text
 #: build/C/man3/sem_wait.3:89
@@ -927,18 +1277,36 @@ msgstr ""
 
 #. type: Plain text
 #: build/C/man3/sem_wait.3:100
-msgid "If the timeout has already expired by the time of the call, and the semaphore could not be locked immediately, then B<sem_timedwait>()  fails with a timeout error (I<errno> set to B<ETIMEDOUT>)."
-msgstr "関数呼び出し時点ですでにタイムアウトに指定した時刻が過ぎており、 かつセマフォをすぐにロックできなかった場合は、 B<sem_timedwait>()  はタイムアウトエラー (I<errno> に B<ETIMEDOUT> がセットされる) で失敗する。"
+msgid ""
+"If the timeout has already expired by the time of the call, and the "
+"semaphore could not be locked immediately, then B<sem_timedwait>()  fails "
+"with a timeout error (I<errno> set to B<ETIMEDOUT>)."
+msgstr ""
+"関数呼び出し時点ですでにタイムアウトに指定した時刻が過ぎており、 かつセマフォ"
+"をすぐにロックできなかった場合は、 B<sem_timedwait>()  はタイムアウトエラー "
+"(I<errno> に B<ETIMEDOUT> がセットされる) で失敗する。"
 
 #. type: Plain text
 #: build/C/man3/sem_wait.3:108
-msgid "If the operation can be performed immediately, then B<sem_timedwait>()  never fails with a timeout error, regardless of the value of I<abs_timeout>.  Furthermore, the validity of I<abs_timeout> is not checked in this case."
-msgstr "セマフォ操作がすぐに実行できるときは、 I<abs_timeout> がどんな値であっても B<sem_timedwait>()  が失敗することは決してない。さらにいうと、この場合には I<abs_timeout> の正当性の検査は行われない。"
+msgid ""
+"If the operation can be performed immediately, then B<sem_timedwait>()  "
+"never fails with a timeout error, regardless of the value of "
+"I<abs_timeout>.  Furthermore, the validity of I<abs_timeout> is not checked "
+"in this case."
+msgstr ""
+"セマフォ操作がすぐに実行できるときは、 I<abs_timeout> がどんな値であっても "
+"B<sem_timedwait>()  が失敗することは決してない。さらにいうと、この場合には "
+"I<abs_timeout> の正当性の検査は行われない。"
 
 #. type: Plain text
 #: build/C/man3/sem_wait.3:114
-msgid "All of these functions return 0 on success; on error, the value of the semaphore is left unchanged, -1 is returned, and I<errno> is set to indicate the error."
-msgstr "成功すると、これらの関数は 0 を返す。 エラーの場合、セマフォの値を変更せずに、-1 を返し、 I<errno> にエラーを示す値をセットする。"
+msgid ""
+"All of these functions return 0 on success; on error, the value of the "
+"semaphore is left unchanged, -1 is returned, and I<errno> is set to indicate "
+"the error."
+msgstr ""
+"成功すると、これらの関数は 0 を返す。 エラーの場合、セマフォの値を変更せず"
+"に、-1 を返し、 I<errno> にエラーを示す値をセットする。"
 
 #. type: TP
 #: build/C/man3/sem_wait.3:115 build/C/man2/semop.2:352
@@ -964,8 +1332,12 @@ msgstr "B<EAGAIN>"
 
 #. type: Plain text
 #: build/C/man3/sem_wait.3:130
-msgid "The operation could not be performed without blocking (i.e., the semaphore currently has the value zero)."
-msgstr "停止 (block) せずにロック操作を完了できなかった (つまり、 セマフォの現在の値が 0 であった)。"
+msgid ""
+"The operation could not be performed without blocking (i.e., the semaphore "
+"currently has the value zero)."
+msgstr ""
+"停止 (block) せずにロック操作を完了できなかった (つまり、 セマフォの現在の値"
+"が 0 であった)。"
 
 #. type: Plain text
 #: build/C/man3/sem_wait.3:133
@@ -974,8 +1346,11 @@ msgstr "B<sem_timedwait>()  の場合、以下のエラーも起こる。"
 
 #. type: Plain text
 #: build/C/man3/sem_wait.3:138
-msgid "The value of I<abs_timeout.tv_nsecs> is less than 0, or greater than or equal to 1000 million."
-msgstr "I<abs_timeout.tv_nsecs> の値が 0 未満、もしくは 1,000,000,000 以上である。"
+msgid ""
+"The value of I<abs_timeout.tv_nsecs> is less than 0, or greater than or "
+"equal to 1000 million."
+msgstr ""
+"I<abs_timeout.tv_nsecs> の値が 0 未満、もしくは 1,000,000,000 以上である。"
 
 #. type: TP
 #: build/C/man3/sem_wait.3:138
@@ -992,20 +1367,43 @@ msgstr "セマフォのロックに成功する前に時間切れとなった。
 
 #. type: Plain text
 #: build/C/man3/sem_wait.3:151
-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>() はスレッドセーフである。"
+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>() はスレッドセーフであ"
+"る。"
 
 #.  sem_wait() is always interrupted on most other implementations,
 #.  but on FreeBSD 5.4 SA_RESTART does cause restarting.
 #. type: Plain text
 #: build/C/man3/sem_wait.3:161
-msgid "A signal handler always interrupts a blocked call to one of these functions, regardless of the use of the B<sigaction>(2)  B<SA_RESTART> flag."
-msgstr "シグナルハンドラーは、 B<sigaction>(2)  の B<SA_RESTART> フラグを使用しているかどうかに関わらず、これらの関数の呼び出しが 停止している場合、シグナルハンドラーにより常に中断される。"
+msgid ""
+"A signal handler always interrupts a blocked call to one of these functions, "
+"regardless of the use of the B<sigaction>(2)  B<SA_RESTART> flag."
+msgstr ""
+"シグナルハンドラーは、 B<sigaction>(2)  の B<SA_RESTART> フラグを使用している"
+"かどうかに関わらず、これらの関数の呼び出しが 停止している場合、シグナルハンド"
+"ラーにより常に中断される。"
 
 #. type: Plain text
 #: build/C/man3/sem_wait.3:180
-msgid "The (somewhat trivial) program shown below operates on an unnamed semaphore.  The program expects two command-line arguments.  The first argument specifies a seconds value that is used to set an alarm timer to generate a B<SIGALRM> signal.  This handler performs a B<sem_post>(3)  to increment the semaphore that is being waited on in I<main()> using B<sem_timedwait>().  The second command-line argument specifies the length of the timeout, in seconds, for B<sem_timedwait>().  The following shows what happens on two different runs of the program:"
-msgstr "以下に示す (ちょっとした) プログラムは名前なしセマフォの操作を行う。 プログラムはコマンドライン引き数を 2 つ取る。 最初の引き数には、 B<SIGALRM> シグナルを生成するためのアラームタイマーの設定に使われる値を 秒単位で指定する。このシグナルハンドラーは、 I<main()> 内で B<sem_timedwait>()  を使って待っているセマフォを、 B<sem_post>(3)  を使って加算する。 2番目の引き数には、 B<sem_timedwait>()  に渡すタイムアウトまでの時間を秒単位で指定する。"
+msgid ""
+"The (somewhat trivial) program shown below operates on an unnamed "
+"semaphore.  The program expects two command-line arguments.  The first "
+"argument specifies a seconds value that is used to set an alarm timer to "
+"generate a B<SIGALRM> signal.  This handler performs a B<sem_post>(3)  to "
+"increment the semaphore that is being waited on in I<main()> using "
+"B<sem_timedwait>().  The second command-line argument specifies the length "
+"of the timeout, in seconds, for B<sem_timedwait>().  The following shows "
+"what happens on two different runs of the program:"
+msgstr ""
+"以下に示す (ちょっとした) プログラムは名前なしセマフォの操作を行う。 プログラ"
+"ムはコマンドライン引き数を 2 つ取る。 最初の引き数には、 B<SIGALRM> シグナル"
+"を生成するためのアラームタイマーの設定に使われる値を 秒単位で指定する。このシ"
+"グナルハンドラーは、 I<main()> 内で B<sem_timedwait>()  を使って待っているセ"
+"マフォを、 B<sem_post>(3)  を使って加算する。 2番目の引き数には、 "
+"B<sem_timedwait>()  に渡すタイムアウトまでの時間を秒単位で指定する。"
 
 #. type: Plain text
 #: build/C/man3/sem_wait.3:190
@@ -1243,8 +1641,12 @@ msgstr ""
 
 #. type: Plain text
 #: build/C/man3/sem_wait.3:276
-msgid "B<clock_gettime>(2), B<sem_getvalue>(3), B<sem_post>(3), B<sem_overview>(7), B<time>(7)"
-msgstr "B<clock_gettime>(2), B<sem_getvalue>(3), B<sem_post>(3), B<sem_overview>(7), B<time>(7)"
+msgid ""
+"B<clock_gettime>(2), B<sem_getvalue>(3), B<sem_post>(3), B<sem_overview>(7), "
+"B<time>(7)"
+msgstr ""
+"B<clock_gettime>(2), B<sem_getvalue>(3), B<sem_post>(3), B<sem_overview>(7), "
+"B<time>(7)"
 
 #. type: TH
 #: build/C/man2/semctl.2:41
@@ -1283,13 +1685,25 @@ msgstr "B<int semctl(int >I<semid>B<, int >I<semnum>B<, int >I<cmd>B<, ...);>\n"
 
 #. type: Plain text
 #: build/C/man2/semctl.2:62
-msgid "B<semctl>()  performs the control operation specified by I<cmd> on the System\\ V semaphore set identified by I<semid>, or on the I<semnum>-th semaphore of that set.  (The semaphores in a set are numbered starting at 0.)"
-msgstr "B<semctl>()  は、 I<semid> で指定された System\\ V セマフォ集合 (semaphore set)  またはセマフォ集合の I<semnun> 番目のセマフォに対して、 I<cmd> で指定された制御操作を行なう (集合内のセマフォの番号は 0 から始まる)。"
+msgid ""
+"B<semctl>()  performs the control operation specified by I<cmd> on the System"
+"\\ V semaphore set identified by I<semid>, or on the I<semnum>-th semaphore "
+"of that set.  (The semaphores in a set are numbered starting at 0.)"
+msgstr ""
+"B<semctl>()  は、 I<semid> で指定された System\\ V セマフォ集合 (semaphore "
+"set)  またはセマフォ集合の I<semnun> 番目のセマフォに対して、 I<cmd> で指定さ"
+"れた制御操作を行なう (集合内のセマフォの番号は 0 から始まる)。"
 
 #. type: Plain text
 #: build/C/man2/semctl.2:68
-msgid "This function has three or four arguments, depending on I<cmd>.  When there are four, the fourth has the type I<union semun>.  The I<calling program> must define this union as follows:"
-msgstr "この関数は、 I<cmd> の値に依存して、3 個または 4 個の引き数を持つ。 引き数が 4 個の場合、第 4 引き数の型は I<union semun> である。 I<呼び出し元プログラム>は、 この共用体 (union) を以下のように定義しなければならない。"
+msgid ""
+"This function has three or four arguments, depending on I<cmd>.  When there "
+"are four, the fourth has the type I<union semun>.  The I<calling program> "
+"must define this union as follows:"
+msgstr ""
+"この関数は、 I<cmd> の値に依存して、3 個または 4 個の引き数を持つ。 引き数が "
+"4 個の場合、第 4 引き数の型は I<union semun> である。 I<呼び出し元プログラム>"
+"は、 この共用体 (union) を以下のように定義しなければならない。"
 
 #. type: Plain text
 #: build/C/man2/semctl.2:78
@@ -1313,8 +1727,12 @@ msgstr ""
 
 #. type: Plain text
 #: build/C/man2/semctl.2:84
-msgid "The I<semid_ds> data structure is defined in I<E<lt>sys/sem.hE<gt>> as follows:"
-msgstr "I<semid_ds> データ構造体は I<E<lt>sys/sem.hE<gt>> で以下のように定義されている:"
+msgid ""
+"The I<semid_ds> data structure is defined in I<E<lt>sys/sem.hE<gt>> as "
+"follows:"
+msgstr ""
+"I<semid_ds> データ構造体は I<E<lt>sys/sem.hE<gt>> で以下のように定義されてい"
+"る:"
 
 #. type: Plain text
 #: build/C/man2/semctl.2:93
@@ -1336,8 +1754,12 @@ msgstr ""
 
 #. type: Plain text
 #: build/C/man2/semctl.2:101
-msgid "The I<ipc_perm> structure is defined as follows (the highlighted fields are settable using B<IPC_SET>):"
-msgstr "I<ipc_perm> 構造体は以下のように定義されている (強調されたフィールドは B<IPC_SET> を使って設定可能である):"
+msgid ""
+"The I<ipc_perm> structure is defined as follows (the highlighted fields are "
+"settable using B<IPC_SET>):"
+msgstr ""
+"I<ipc_perm> 構造体は以下のように定義されている (強調されたフィールドは "
+"B<IPC_SET> を使って設定可能である):"
 
 #. type: Plain text
 #: build/C/man2/semctl.2:113
@@ -1376,8 +1798,15 @@ msgstr "B<IPC_STAT>"
 
 #. type: Plain text
 #: build/C/man2/semctl.2:131
-msgid "Copy information from the kernel data structure associated with I<semid> into the I<semid_ds> structure pointed to by I<arg.buf>.  The argument I<semnum> is ignored.  The calling process must have read permission on the semaphore set."
-msgstr "I<semid> に関連づけられたカーネルデータ構造体の情報を I<arg.buf> で指された I<semid_ds> 構造体へコピーする。 I<semnum> 引き数は無視される。 呼び出したプロセスはそのセマフォ集合に対する 読み込み許可を持たなければならない。"
+msgid ""
+"Copy information from the kernel data structure associated with I<semid> "
+"into the I<semid_ds> structure pointed to by I<arg.buf>.  The argument "
+"I<semnum> is ignored.  The calling process must have read permission on the "
+"semaphore set."
+msgstr ""
+"I<semid> に関連づけられたカーネルデータ構造体の情報を I<arg.buf> で指された "
+"I<semid_ds> 構造体へコピーする。 I<semnum> 引き数は無視される。 呼び出したプ"
+"ロセスはそのセマフォ集合に対する 読み込み許可を持たなければならない。"
 
 #. type: TP
 #: build/C/man2/semctl.2:131
@@ -1387,8 +1816,23 @@ msgstr "B<IPC_SET>"
 
 #. type: Plain text
 #: build/C/man2/semctl.2:154
-msgid "Write the values of some members of the I<semid_ds> structure pointed to by I<arg.buf> to the kernel data structure associated with this semaphore set, updating also its I<sem_ctime> member.  The following members of the structure are updated: I<sem_perm.uid>, I<sem_perm.gid>, and (the least significant 9 bits of)  I<sem_perm.mode>.  The effective UID of the calling process must match the owner (I<sem_perm.uid>)  or creator (I<sem_perm.cuid>)  of the semaphore set, or the caller must be privileged.  The argument I<semnum> is ignored."
-msgstr "I<arg.buf> で指定された I<semid_ds> 構造体のメンバーのいくつかの値を、 このセマフォに関連づけられたカーネルデータ構造体に書き込み、 I<sem_ctime> メンバーの値も更新する。 構造体の以下のメンバーが更新される: I<sem_perm.uid>, I<sem_perm.gid>, I<sem_perm.mode> (の最下位 9 ビット)。 呼び出したプロセスの実効 UID が所有者 (I<sem_perm.uid>)  または作成者 (I<sem_perm.cuid>)  と一致するか、呼び出した人が特権を持たなければならない。 I<semnum> 引き数は無視される。"
+msgid ""
+"Write the values of some members of the I<semid_ds> structure pointed to by "
+"I<arg.buf> to the kernel data structure associated with this semaphore set, "
+"updating also its I<sem_ctime> member.  The following members of the "
+"structure are updated: I<sem_perm.uid>, I<sem_perm.gid>, and (the least "
+"significant 9 bits of)  I<sem_perm.mode>.  The effective UID of the calling "
+"process must match the owner (I<sem_perm.uid>)  or creator (I<sem_perm."
+"cuid>)  of the semaphore set, or the caller must be privileged.  The "
+"argument I<semnum> is ignored."
+msgstr ""
+"I<arg.buf> で指定された I<semid_ds> 構造体のメンバーのいくつかの値を、 このセ"
+"マフォに関連づけられたカーネルデータ構造体に書き込み、 I<sem_ctime> メンバー"
+"の値も更新する。 構造体の以下のメンバーが更新される: I<sem_perm.uid>, "
+"I<sem_perm.gid>, I<sem_perm.mode> (の最下位 9 ビット)。 呼び出したプロセスの"
+"実効 UID が所有者 (I<sem_perm.uid>)  または作成者 (I<sem_perm.cuid>)  と一致"
+"するか、呼び出した人が特権を持たなければならない。 I<semnum> 引き数は無視され"
+"る。"
 
 #. type: TP
 #: build/C/man2/semctl.2:154
@@ -1398,8 +1842,18 @@ msgstr "B<IPC_RMID>"
 
 #. type: Plain text
 #: build/C/man2/semctl.2:169
-msgid "Immediately remove the semaphore set, awakening all processes blocked in B<semop>(2)  calls on the set (with an error return and I<errno> set to B<EIDRM>).  The effective user ID of the calling process must match the creator or owner of the semaphore set, or the caller must be privileged.  The argument I<semnum> is ignored."
-msgstr "セマフォ集合をただちに削除し、その集合上の B<semop>(2)  コールでブロックされている全てのプロセスを目覚めさせる (エラー値が返されて、 I<errno> に B<EIDRM> が設定される)。 呼び出したプロセスの実効ユーザー ID が そのセマフォ集合の作成者または所有者と一致するか、 呼び出した人が特権を持たなければならない。 I<semnum> 引き数は無視される。"
+msgid ""
+"Immediately remove the semaphore set, awakening all processes blocked in "
+"B<semop>(2)  calls on the set (with an error return and I<errno> set to "
+"B<EIDRM>).  The effective user ID of the calling process must match the "
+"creator or owner of the semaphore set, or the caller must be privileged.  "
+"The argument I<semnum> is ignored."
+msgstr ""
+"セマフォ集合をただちに削除し、その集合上の B<semop>(2)  コールでブロックされ"
+"ている全てのプロセスを目覚めさせる (エラー値が返されて、 I<errno> に "
+"B<EIDRM> が設定される)。 呼び出したプロセスの実効ユーザー ID が そのセマフォ"
+"集合の作成者または所有者と一致するか、 呼び出した人が特権を持たなければならな"
+"い。 I<semnum> 引き数は無視される。"
 
 #. type: TP
 #: build/C/man2/semctl.2:169
@@ -1409,8 +1863,16 @@ msgstr "B<IPC_INFO> (Linux 固有)"
 
 #. type: Plain text
 #: build/C/man2/semctl.2:181
-msgid "Return information about system-wide semaphore limits and parameters in the structure pointed to by I<arg.__buf>.  This structure is of type I<seminfo>, defined in I<E<lt>sys/sem.hE<gt>> if the B<_GNU_SOURCE> feature test macro is defined:"
-msgstr "システム全体でのセマフォの制限とパラメーターに関する情報を、 I<arg.__buf> が指す構造体に入れて返す。 この構造体は I<seminfo> 型である。 I<seminfo> は B<_GNU_SOURCE> 機能検査マクロが定義された場合に I<E<lt>sys/sem.hE<gt>> で以下のように定義される:"
+msgid ""
+"Return information about system-wide semaphore limits and parameters in the "
+"structure pointed to by I<arg.__buf>.  This structure is of type I<seminfo>, "
+"defined in I<E<lt>sys/sem.hE<gt>> if the B<_GNU_SOURCE> feature test macro "
+"is defined:"
+msgstr ""
+"システム全体でのセマフォの制限とパラメーターに関する情報を、 I<arg.__buf> が"
+"指す構造体に入れて返す。 この構造体は I<seminfo> 型である。 I<seminfo> は "
+"B<_GNU_SOURCE> 機能検査マクロが定義された場合に I<E<lt>sys/sem.hE<gt>> で以下"
+"のように定義される:"
 
 #. type: Plain text
 #: build/C/man2/semctl.2:203
@@ -1456,8 +1918,12 @@ msgstr ""
 
 #. type: Plain text
 #: build/C/man2/semctl.2:217
-msgid "The I<semmsl>, I<semmns>, I<semopm>, and I<semmni> settings can be changed via I</proc/sys/kernel/sem>; see B<proc>(5)  for details."
-msgstr "設定 I<semmsl>, I<semmns>, I<semopm>, I<semmni> は I</proc/sys/kernel/sem> 経由で変更可能である。 詳しくは B<proc>(5)  を参照。"
+msgid ""
+"The I<semmsl>, I<semmns>, I<semopm>, and I<semmni> settings can be changed "
+"via I</proc/sys/kernel/sem>; see B<proc>(5)  for details."
+msgstr ""
+"設定 I<semmsl>, I<semmns>, I<semopm>, I<semmni> は I</proc/sys/kernel/sem> 経"
+"由で変更可能である。 詳しくは B<proc>(5)  を参照。"
 
 #. type: TP
 #: build/C/man2/semctl.2:217
@@ -1467,8 +1933,19 @@ msgstr "B<SEM_INFO> (Linux 固有)"
 
 #. type: Plain text
 #: build/C/man2/semctl.2:231
-msgid "Return a I<seminfo> structure containing the same information as for B<IPC_INFO>, except that the following fields are returned with information about system resources consumed by semaphores: the I<semusz> field returns the number of semaphore sets that currently exist on the system; and the I<semaem> field returns the total number of semaphores in all semaphore sets on the system."
-msgstr "B<IPC_INFO> のときと同じ情報を格納した I<seminfo> 構造体を返す。 但し、以下のフィールドにはセマフォが消費しているシステム資源に 関する情報が格納される点が異なる。 I<semusz> フィールドは現在システム上に存在するセマフォ集合の数を返す。 I<semaem> フィールドはシステム上の全てのセマフォ集合に含まれる セマフォの総数を返す。"
+msgid ""
+"Return a I<seminfo> structure containing the same information as for "
+"B<IPC_INFO>, except that the following fields are returned with information "
+"about system resources consumed by semaphores: the I<semusz> field returns "
+"the number of semaphore sets that currently exist on the system; and the "
+"I<semaem> field returns the total number of semaphores in all semaphore sets "
+"on the system."
+msgstr ""
+"B<IPC_INFO> のときと同じ情報を格納した I<seminfo> 構造体を返す。 但し、以下の"
+"フィールドにはセマフォが消費しているシステム資源に 関する情報が格納される点が"
+"異なる。 I<semusz> フィールドは現在システム上に存在するセマフォ集合の数を返"
+"す。 I<semaem> フィールドはシステム上の全てのセマフォ集合に含まれる セマフォ"
+"の総数を返す。"
 
 #. type: TP
 #: build/C/man2/semctl.2:231
@@ -1478,8 +1955,15 @@ msgstr "B<SEM_STAT> (Linux 固有)"
 
 #. type: Plain text
 #: build/C/man2/semctl.2:242
-msgid "Return a I<semid_ds> structure as for B<IPC_STAT>.  However, the I<semid> argument is not a semaphore identifier, but instead an index into the kernel's internal array that maintains information about all semaphore sets on the system."
-msgstr "B<IPC_STAT> と同じく I<semid_ds> 構造体を返す。 但し、 I<semid> 引き数は、セマフォ識別子ではなく、システム上の全てのセマフォ集合 に関する情報を管理するカーネルの内部配列へのインデックスである。"
+msgid ""
+"Return a I<semid_ds> structure as for B<IPC_STAT>.  However, the I<semid> "
+"argument is not a semaphore identifier, but instead an index into the "
+"kernel's internal array that maintains information about all semaphore sets "
+"on the system."
+msgstr ""
+"B<IPC_STAT> と同じく I<semid_ds> 構造体を返す。 但し、 I<semid> 引き数は、セ"
+"マフォ識別子ではなく、システム上の全てのセマフォ集合 に関する情報を管理する"
+"カーネルの内部配列へのインデックスである。"
 
 #. type: TP
 #: build/C/man2/semctl.2:242
@@ -1489,8 +1973,14 @@ msgstr "B<GETALL>"
 
 #. type: Plain text
 #: build/C/man2/semctl.2:253
-msgid "Return B<semval> (i.e., the current value)  for all semaphores of the set into I<arg.array>.  The argument I<semnum> is ignored.  The calling process must have read permission on the semaphore set."
-msgstr "集合の全てのセマフォの B<semval> の値 (現在の値) を I<arg.array> に返す。 I<semnum> 引き数は無視される。 呼び出したプロセスはそのセマフォ集合に読み込み許可を持たなければならない。"
+msgid ""
+"Return B<semval> (i.e., the current value)  for all semaphores of the set "
+"into I<arg.array>.  The argument I<semnum> is ignored.  The calling process "
+"must have read permission on the semaphore set."
+msgstr ""
+"集合の全てのセマフォの B<semval> の値 (現在の値) を I<arg.array> に返す。 "
+"I<semnum> 引き数は無視される。 呼び出したプロセスはそのセマフォ集合に読み込み"
+"許可を持たなければならない。"
 
 #. type: TP
 #: build/C/man2/semctl.2:253 build/C/man2/semctl.2:351
@@ -1500,8 +1990,15 @@ msgstr "B<GETNCNT>"
 
 #. type: Plain text
 #: build/C/man2/semctl.2:266
-msgid "Return the value of B<semncnt> for the I<semnum>-th semaphore of the set (i.e., the number of processes waiting for an increase of B<semval> for the I<semnum>-th semaphore of the set).  The calling process must have read permission on the semaphore set."
-msgstr "集合の I<semnum> 番目のセマフォの B<semncnt> の値を返す (集合の I<semnum> 番目のセマフォの B<semval> の増加を待っているプロセスの数を返す)。 呼び出したプロセスはそのセマフォ集合に読み込み許可を持たなければならない。"
+msgid ""
+"Return the value of B<semncnt> for the I<semnum>-th semaphore of the set (i."
+"e., the number of processes waiting for an increase of B<semval> for the "
+"I<semnum>-th semaphore of the set).  The calling process must have read "
+"permission on the semaphore set."
+msgstr ""
+"集合の I<semnum> 番目のセマフォの B<semncnt> の値を返す (集合の I<semnum> 番"
+"目のセマフォの B<semval> の増加を待っているプロセスの数を返す)。 呼び出したプ"
+"ロセスはそのセマフォ集合に読み込み許可を持たなければならない。"
 
 #. type: TP
 #: build/C/man2/semctl.2:266 build/C/man2/semctl.2:355
@@ -1511,8 +2008,15 @@ msgstr "B<GETPID>"
 
 #. type: Plain text
 #: build/C/man2/semctl.2:279
-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."
-msgstr "集合の I<semnum> 番目のセマフォの B<sempid> の値 (集合の I<semnum> 番目のセマフォに最後に B<semop>(2)  コールを実行したプロセスの PID) を返す。 呼び出したプロセスはそのセマフォ集合に読み込み許可を持たなければならない。"
+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."
+msgstr ""
+"集合の I<semnum> 番目のセマフォの B<sempid> の値 (集合の I<semnum> 番目のセマ"
+"フォに最後に B<semop>(2)  コールを実行したプロセスの PID) を返す。 呼び出した"
+"プロセスはそのセマフォ集合に読み込み許可を持たなければならない。"
 
 #. type: TP
 #: build/C/man2/semctl.2:279 build/C/man2/semctl.2:359
@@ -1522,8 +2026,12 @@ msgstr "B<GETVAL>"
 
 #. type: Plain text
 #: build/C/man2/semctl.2:287
-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."
-msgstr "集合の I<semnum> 番目のセマフォの B<semval> の値を返す。 呼び出したプロセスはそのセマフォ集合に読み込み許可を持たなければならない。"
+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."
+msgstr ""
+"集合の I<semnum> 番目のセマフォの B<semval> の値を返す。 呼び出したプロセスは"
+"そのセマフォ集合に読み込み許可を持たなければならない。"
 
 #. type: TP
 #: build/C/man2/semctl.2:287 build/C/man2/semctl.2:363
@@ -1533,8 +2041,15 @@ msgstr "B<GETZCNT>"
 
 #. type: Plain text
 #: build/C/man2/semctl.2:300
-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."
-msgstr "集合の I<semnum> 番目のセマフォの B<semzcnt> の値を返す (集合の I<semnum> 番目のセマフォの B<semval> の値が 0 になるのを待っているプロセスの数を返す)。 呼び出したプロセスはそのセマフォ集合に読み込み許可を持たなければならない。"
+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."
+msgstr ""
+"集合の I<semnum> 番目のセマフォの B<semzcnt> の値を返す (集合の I<semnum> 番"
+"目のセマフォの B<semval> の値が 0 になるのを待っているプロセスの数を返す)。 "
+"呼び出したプロセスはそのセマフォ集合に読み込み許可を持たなければならない。"
 
 #. type: TP
 #: build/C/man2/semctl.2:300
@@ -1544,8 +2059,22 @@ msgstr "B<SETALL>"
 
 #. type: Plain text
 #: build/C/man2/semctl.2:322
-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."
-msgstr "集合の全てのセマフォの B<semval> に I<arg.array> で指定された値を設定する。 その集合に関連する I<semid_ds> 構造体の I<sem_ctime> メンバーの値も更新する。 全てのプロセスのセマフォの変更についてのアンドゥエントリー (B<semop>(2)  を参照) は消去 (clear) される。 セマフォの値の変更により、他のプロセス内でブロックされている B<semop>(2)  コールの続行が許可されると、それらのプロセスは起こされる (wake up)。 I<semnum> 引き数は無視される。 呼び出したプロセスはそのセマフォ集合に 変更 (書き込み) 許可を持たなければならない。"
+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."
+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:322
@@ -1555,17 +2084,33 @@ msgstr "B<SETVAL>"
 
 #. type: Plain text
 #: build/C/man2/semctl.2:340
-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."
-msgstr "集合の I<semnum> 番目のセマフォの B<semval> に I<arg.val> の値を設定する。その集合に関連する I<semid_ds> 構造体の I<sem_ctime> メンバーの値も更新する。 全てのプロセスのセマフォの変更についてのアンドゥエントリーは消去される。 セマフォの値の変更により、他のプロセス内でブロックされている B<semop>(2)  コールの続行が許可されると、それらのプロセスは起こされる (wake up)。 呼び出したプロセスはそのセマフォ集合に 変更 (書き込み) 許可を持たなければならない。"
+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."
+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:347
 msgid "On failure, B<semctl>()  returns -1 with I<errno> indicating the error."
-msgstr "失敗した場合、 B<semctl>()  は -1 を返し、 I<errno> にそのエラーを示す。"
+msgstr ""
+"失敗した場合、 B<semctl>()  は -1 を返し、 I<errno> にそのエラーを示す。"
 
 #. type: Plain text
 #: build/C/man2/semctl.2:351
-msgid "Otherwise, the system call returns a nonnegative value depending on I<cmd> as follows:"
+msgid ""
+"Otherwise, the system call returns a nonnegative value depending on I<cmd> "
+"as follows:"
 msgstr "そうでなければシステムコールは I<cmd> によって以下の負でない値を返す:"
 
 #. type: Plain text
@@ -1596,8 +2141,15 @@ msgstr "B<IPC_INFO>"
 
 #. type: Plain text
 #: build/C/man2/semctl.2:375
-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.)"
-msgstr "全てのセマフォ集合に関する情報を管理しているカーネルの内部配列の使用中 エントリーのインデックスの最大値 (この情報は、システムの全てのセマフォ集合に関する情報を取得するために B<SEM_STAT> 操作を繰り返し実行する際に使用できる)"
+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.)"
+msgstr ""
+"全てのセマフォ集合に関する情報を管理しているカーネルの内部配列の使用中 エント"
+"リーのインデックスの最大値 (この情報は、システムの全てのセマフォ集合に関する"
+"情報を取得するために B<SEM_STAT> 操作を繰り返し実行する際に使用できる)"
 
 #. type: TP
 #: build/C/man2/semctl.2:375
@@ -1633,8 +2185,16 @@ msgstr "失敗した場合は I<errno> には以下の値のどれかが設定
 
 #. type: Plain text
 #: build/C/man2/semctl.2:410
-msgid "The argument I<cmd> has one of the values B<GETALL>, B<GETPID>, B<GETVAL>, B<GETNCNT>, B<GETZCNT>, B<IPC_STAT>, B<SEM_STAT>, B<SETALL>, or B<SETVAL> and the calling process does not have the required permissions on the semaphore set and does not have the B<CAP_IPC_OWNER> capability."
-msgstr "I<cmd> 引き数が B<GETALL>, B<GETPID>, B<GETVAL>, B<GETNCNT>, B<GETZCNT>, B<IPC_STAT>, B<SEM_STAT>, B<SETALL>, B<SETVAL> のうちの何れかの値を持ち、 呼び出したプロセスがセマフォに対して必要とされる許可と B<CAP_IPC_OWNER> ケーパビリティ (capability) を持っていない。"
+msgid ""
+"The argument I<cmd> has one of the values B<GETALL>, B<GETPID>, B<GETVAL>, "
+"B<GETNCNT>, B<GETZCNT>, B<IPC_STAT>, B<SEM_STAT>, B<SETALL>, or B<SETVAL> "
+"and the calling process does not have the required permissions on the "
+"semaphore set and does not have the B<CAP_IPC_OWNER> capability."
+msgstr ""
+"I<cmd> 引き数が B<GETALL>, B<GETPID>, B<GETVAL>, B<GETNCNT>, B<GETZCNT>, "
+"B<IPC_STAT>, B<SEM_STAT>, B<SETALL>, B<SETVAL> のうちの何れかの値を持ち、 呼"
+"び出したプロセスがセマフォに対して必要とされる許可と B<CAP_IPC_OWNER> ケーパ"
+"ビリティ (capability) を持っていない。"
 
 #. type: TP
 #: build/C/man2/semctl.2:410 build/C/man2/semop.2:336
@@ -1645,7 +2205,9 @@ msgstr "B<EFAULT>"
 #. type: Plain text
 #: build/C/man2/semctl.2:417
 msgid "The address pointed to by I<arg.buf> or I<arg.array> isn't accessible."
-msgstr "I<arg.buf> または I<arg.array> で指されているアドレスにアクセスすることができない。"
+msgstr ""
+"I<arg.buf> または I<arg.array> で指されているアドレスにアクセスすることができ"
+"ない。"
 
 #. type: TP
 #: build/C/man2/semctl.2:417 build/C/man2/semop.2:349
@@ -1660,8 +2222,14 @@ msgstr "セマフォ集合が削除された。"
 
 #. type: Plain text
 #: build/C/man2/semctl.2:431
-msgid "Invalid value for I<cmd> or I<semid>.  Or: for a B<SEM_STAT> operation, the index value specified in I<semid> referred to an array slot that is currently unused."
-msgstr "I<cmd> または I<semid> に無効な値が指定された。 もしくは、 B<SEM_STAT> 操作の場合に、 I<semid> で指定されたインデックス値が現在未使用の配列のスロットを参照いていた。"
+msgid ""
+"Invalid value for I<cmd> or I<semid>.  Or: for a B<SEM_STAT> operation, the "
+"index value specified in I<semid> referred to an array slot that is "
+"currently unused."
+msgstr ""
+"I<cmd> または I<semid> に無効な値が指定された。 もしくは、 B<SEM_STAT> 操作の"
+"場合に、 I<semid> で指定されたインデックス値が現在未使用の配列のスロットを参"
+"照いていた。"
 
 #. type: TP
 #: build/C/man2/semctl.2:431
@@ -1671,8 +2239,16 @@ msgstr "B<EPERM>"
 
 #. type: Plain text
 #: build/C/man2/semctl.2:449
-msgid "The argument I<cmd> has the value B<IPC_SET> or B<IPC_RMID> but the effective user ID of the calling process is not the creator (as found in I<sem_perm.cuid>)  or the owner (as found in I<sem_perm.uid>)  of the semaphore set, and the process does not have the B<CAP_SYS_ADMIN> capability."
-msgstr "I<cmd> 引き数に B<IPC_SET> または B<IPC_RMID> が指定され、呼び出したプロセスの実効ユーザー ID がセマフォの (I<sem_perm.cuid> で見つかる) 作成者または (I<sem_perm.uid> で見つかる) 所有者でもなく、 プロセスが B<CAP_SYS_ADMIN> ケーパビリティを持たない。"
+msgid ""
+"The argument I<cmd> has the value B<IPC_SET> or B<IPC_RMID> but the "
+"effective user ID of the calling process is not the creator (as found in "
+"I<sem_perm.cuid>)  or the owner (as found in I<sem_perm.uid>)  of the "
+"semaphore set, and the process does not have the B<CAP_SYS_ADMIN> capability."
+msgstr ""
+"I<cmd> 引き数に B<IPC_SET> または B<IPC_RMID> が指定され、呼び出したプロセス"
+"の実効ユーザー ID がセマフォの (I<sem_perm.cuid> で見つかる) 作成者または "
+"(I<sem_perm.uid> で見つかる) 所有者でもなく、 プロセスが B<CAP_SYS_ADMIN> "
+"ケーパビリティを持たない。"
 
 #. type: TP
 #: build/C/man2/semctl.2:449 build/C/man2/semop.2:371
@@ -1682,8 +2258,14 @@ msgstr "B<ERANGE>"
 
 #. type: Plain text
 #: build/C/man2/semctl.2:462
-msgid "The argument I<cmd> has the value B<SETALL> or B<SETVAL> and the value to which B<semval> is to be set (for some semaphore of the set) is less than 0 or greater than the implementation limit B<SEMVMX>."
-msgstr "I<cmd> 引き数に B<SETALL> または B<SETVAL> が指定され、(集合のセマフォのどれかの)  B<semval> に設定される値が 0 より小さいか、実装の制限 B<SEMVMX> よりも大きい。"
+msgid ""
+"The argument I<cmd> has the value B<SETALL> or B<SETVAL> and the value to "
+"which B<semval> is to be set (for some semaphore of the set) is less than 0 "
+"or greater than the implementation limit B<SEMVMX>."
+msgstr ""
+"I<cmd> 引き数に B<SETALL> または B<SETVAL> が指定され、(集合のセマフォのどれ"
+"かの)  B<semval> に設定される値が 0 より小さいか、実装の制限 B<SEMVMX> よりも"
+"大きい。"
 
 #.  SVr4 documents additional error conditions EINVAL, EFBIG, ENOSPC.
 #. type: Plain text
@@ -1694,35 +2276,77 @@ msgstr "SVr4, POSIX.1-2001."
 
 #. type: Plain text
 #: build/C/man2/semctl.2:476
-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>."
-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> 型である。"
+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>."
+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> 型である。"
 
 #.  Like Linux, the FreeBSD man pages still document
 #.  the inclusion of these header files.
 #. type: Plain text
 #: build/C/man2/semctl.2:489 build/C/man2/semget.2:227
 #: build/C/man2/semop.2:402
-msgid "The inclusion of I<E<lt>sys/types.hE<gt>> and I<E<lt>sys/ipc.hE<gt>> isn't required on Linux or by any version of POSIX.  However, some old implementations required the inclusion of these header files, and the SVID also documented their inclusion.  Applications intended to be portable to such old systems may need to include these header files."
-msgstr "Linux や POSIX の全てのバージョンでは、 I<E<lt>sys/types.hE<gt>> と I<E<lt>sys/ipc.hE<gt>> のインクルードは必要ない。しかしながら、いくつかの古い実装ではこれらのヘッダーファイルのインクルードが必要であり、 SVID でもこれらのインクルードをするように記載されている。このような古いシステムへの移植性を意図したアプリケーションではこれらのファイルをインクルードする必要があるかもしれない。"
+msgid ""
+"The inclusion of I<E<lt>sys/types.hE<gt>> and I<E<lt>sys/ipc.hE<gt>> isn't "
+"required on Linux or by any version of POSIX.  However, some old "
+"implementations required the inclusion of these header files, and the SVID "
+"also documented their inclusion.  Applications intended to be portable to "
+"such old systems may need to include these header files."
+msgstr ""
+"Linux や POSIX の全てのバージョンでは、 I<E<lt>sys/types.hE<gt>> と "
+"I<E<lt>sys/ipc.hE<gt>> のインクルードは必要ない。しかしながら、いくつかの古い"
+"実装ではこれらのヘッダーファイルのインクルードが必要であり、 SVID でもこれら"
+"のインクルードをするように記載されている。このような古いシステムへの移植性を"
+"意図したアプリケーションではこれらのファイルをインクルードする必要があるかも"
+"しれない。"
 
 #. type: Plain text
 #: build/C/man2/semctl.2:501
-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."
-msgstr "B<IPC_INFO>, B<SEM_STAT>, B<SEM_INFO> 操作は B<ipcs>(1)  プログラムによって割当られた資源について情報を提供するために使用される。 将来的にはこれらは変更されるか、 I</proc> ファイルシステムインターフェースに移動されるかもしれない。"
+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."
+msgstr ""
+"B<IPC_INFO>, B<SEM_STAT>, B<SEM_INFO> 操作は B<ipcs>(1)  プログラムによって割"
+"当られた資源について情報を提供するために使用される。 将来的にはこれらは変更さ"
+"れるか、 I</proc> ファイルシステムインターフェースに移動されるかもしれない。"
 
 #. type: Plain text
 #: build/C/man2/semctl.2:514
-msgid "Various fields in a I<struct semid_ds> were typed as I<short> under Linux 2.2 and have become I<long> under Linux 2.4.  To take advantage of this, a recompilation under glibc-2.1.91 or later should suffice.  (The kernel distinguishes old and new calls by an B<IPC_64> flag in I<cmd>.)"
-msgstr "I<構造体 semid_ds> 内の多くのフィールドは、 Linux 2.2 では I<short> 型だったが、Linux 2.4 では I<long> 型になった。 この利点を生かすには、glibc-2.1.91 以降の環境下で 再コンパイルすれば十分である。 カーネルは新しい形式の呼び出しと古い形式の呼び出しを I<cmd> 内の B<IPC_64> フラグで区別する。"
+msgid ""
+"Various fields in a I<struct semid_ds> were typed as I<short> under Linux "
+"2.2 and have become I<long> under Linux 2.4.  To take advantage of this, a "
+"recompilation under glibc-2.1.91 or later should suffice.  (The kernel "
+"distinguishes old and new calls by an B<IPC_64> flag in I<cmd>.)"
+msgstr ""
+"I<構造体 semid_ds> 内の多くのフィールドは、 Linux 2.2 では I<short> 型だった"
+"が、Linux 2.4 では I<long> 型になった。 この利点を生かすには、glibc-2.1.91 以"
+"降の環境下で 再コンパイルすれば十分である。 カーネルは新しい形式の呼び出しと"
+"古い形式の呼び出しを I<cmd> 内の B<IPC_64> フラグで区別する。"
 
 #. type: Plain text
 #: build/C/man2/semctl.2:523
-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>>."
-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>> で定義されている。"
+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>>."
+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>> で定義されている。"
 
 #. type: Plain text
 #: build/C/man2/semctl.2:527
-msgid "The following system limit on semaphore sets affects a B<semctl>()  call:"
+msgid ""
+"The following system limit on semaphore sets affects a B<semctl>()  call:"
 msgstr "以下は B<semctl>()  コールに影響するセマフォ集合のシステム制限:"
 
 #. type: TP
@@ -1738,13 +2362,21 @@ msgstr "B<semval> の最大値 : 実装依存 (32767)。"
 
 #. type: Plain text
 #: build/C/man2/semctl.2:536
-msgid "For greater portability, it is best to always call B<semctl>()  with four arguments."
-msgstr "移植性を高めるための一番良い方法は、常に 4 個の引き数で B<semctl>()  を呼び出すことである。"
+msgid ""
+"For greater portability, it is best to always call B<semctl>()  with four "
+"arguments."
+msgstr ""
+"移植性を高めるための一番良い方法は、常に 4 個の引き数で B<semctl>()  を呼び出"
+"すことである。"
 
 #. type: Plain text
 #: build/C/man2/semctl.2:543
-msgid "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<svipc>(7)"
+msgid ""
+"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<svipc>(7)"
 
 #. type: TH
 #: build/C/man2/semget.2:36
@@ -1765,43 +2397,88 @@ msgstr "semget - System V セマフォ集合の識別子を取得する"
 
 #. type: Plain text
 #: build/C/man2/semget.2:49
-msgid "B<int semget(key_t >I<key>B<,> B<int >I<nsems>B<,> B<int >I<semflg>B<);>"
-msgstr "B<int semget(key_t >I<key>B<,> B<int >I<nsems>B<,> B<int >I<semflg>B<);>"
+msgid ""
+"B<int semget(key_t >I<key>B<,> B<int >I<nsems>B<,> B<int >I<semflg>B<);>"
+msgstr ""
+"B<int semget(key_t >I<key>B<,> B<int >I<nsems>B<,> B<int >I<semflg>B<);>"
 
 #. type: Plain text
 #: build/C/man2/semget.2:67
-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>."
-msgstr "B<semget>()  システムコールは、引き数 I<key> に対応する System\\ V セマフォ集合 (semaphore set) の 識別子 (identifier) を返す。 I<key> の値が B<IPC_PRIVATE> の場合、もしくは I<semflg> に B<IPC_CREAT> が指定されていて、 I<key> に対応するセマフォ集合が存在しない場合、 I<nsems> 個のセマフォからなる新しい集合が作成される。"
+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>."
+msgstr ""
+"B<semget>()  システムコールは、引き数 I<key> に対応する System\\ V セマフォ集"
+"合 (semaphore set) の 識別子 (identifier) を返す。 I<key> の値が "
+"B<IPC_PRIVATE> の場合、もしくは I<semflg> に B<IPC_CREAT> が指定されていて、 "
+"I<key> に対応するセマフォ集合が存在しない場合、 I<nsems> 個のセマフォからなる"
+"新しい集合が作成される。"
 
 #. type: Plain text
 #: build/C/man2/semget.2:86
-msgid "If I<semflg> specifies both B<IPC_CREAT> and B<IPC_EXCL> and a semaphore set already exists for I<key>, then B<semget>()  fails with I<errno> set to B<EEXIST>.  (This is analogous to the effect of the combination B<O_CREAT | O_EXCL> for B<open>(2).)"
-msgstr "I<semflg> に B<IPC_CREAT> と B<IPC_EXCL> の両方が指定された場合、 I<key> に対応するセマフォ集合が既に存在すると、 B<semget>()  は失敗し、 I<errno> に B<EEXIST> が設定される (これは B<open>(2)  に B<O_CREAT | O_EXCL> が指定された場合の動作と同じである)。"
+msgid ""
+"If I<semflg> specifies both B<IPC_CREAT> and B<IPC_EXCL> and a semaphore set "
+"already exists for I<key>, then B<semget>()  fails with I<errno> set to "
+"B<EEXIST>.  (This is analogous to the effect of the combination B<O_CREAT | "
+"O_EXCL> for B<open>(2).)"
+msgstr ""
+"I<semflg> に B<IPC_CREAT> と B<IPC_EXCL> の両方が指定された場合、 I<key> に対"
+"応するセマフォ集合が既に存在すると、 B<semget>()  は失敗し、 I<errno> に "
+"B<EEXIST> が設定される (これは B<open>(2)  に B<O_CREAT | O_EXCL> が指定され"
+"た場合の動作と同じである)。"
 
 #. type: Plain text
 #: build/C/man2/semget.2:99
-msgid "Upon creation, the least significant 9 bits of the argument I<semflg> define the permissions (for owner, group and others)  for the semaphore set.  These bits have the same format, and the same meaning, as the I<mode> argument of B<open>(2)  (though the execute permissions are not meaningful for semaphores, and write permissions mean permission to alter semaphore values)."
-msgstr "セマフォ集合作成時に、引き数 I<semflg> の下位 9 ビットは、そのセマフォ集合の (所有者 (owner)、グループ (group)、 他人 (others) に対する) アクセス許可の定義として使用される。 これらのビットは B<open>(2)  の引き数 I<mode> と同じ形式で同じ意味である (但し、実行 (execute) 許可はセマフォでは意味を持たず、 書き込み (write) 許可はセマフォ値の変更 (alter) 許可として機能する)。"
+msgid ""
+"Upon creation, the least significant 9 bits of the argument I<semflg> define "
+"the permissions (for owner, group and others)  for the semaphore set.  These "
+"bits have the same format, and the same meaning, as the I<mode> argument of "
+"B<open>(2)  (though the execute permissions are not meaningful for "
+"semaphores, and write permissions mean permission to alter semaphore values)."
+msgstr ""
+"セマフォ集合作成時に、引き数 I<semflg> の下位 9 ビットは、そのセマフォ集合の "
+"(所有者 (owner)、グループ (group)、 他人 (others) に対する) アクセス許可の定"
+"義として使用される。 これらのビットは B<open>(2)  の引き数 I<mode> と同じ形式"
+"で同じ意味である (但し、実行 (execute) 許可はセマフォでは意味を持たず、 書き"
+"込み (write) 許可はセマフォ値の変更 (alter) 許可として機能する)。"
 
 #. type: Plain text
 #: build/C/man2/semget.2:107
-msgid "When creating a new semaphore set, B<semget>()  initializes the set's associated data structure, I<semid_ds> (see B<semctl>(2)), as follows:"
-msgstr "新規のセマフォ集合を作成する際、 B<semget>()  はセマフォ集合の情報を保持するデータ構造体 I<semid_ds> を次のように初期化する (I<semid_ds> については B<semctl>(2)  を参照):"
+msgid ""
+"When creating a new semaphore set, B<semget>()  initializes the set's "
+"associated data structure, I<semid_ds> (see B<semctl>(2)), as follows:"
+msgstr ""
+"新規のセマフォ集合を作成する際、 B<semget>()  はセマフォ集合の情報を保持する"
+"データ構造体 I<semid_ds> を次のように初期化する (I<semid_ds> については "
+"B<semctl>(2)  を参照):"
 
 #. type: Plain text
 #: build/C/man2/semget.2:112
-msgid "I<sem_perm.cuid> and I<sem_perm.uid> are set to the effective user ID of the calling process."
-msgstr "I<sem_perm.cuid> と I<sem_perm.uid> に、呼び出し元のプロセスの実効 (effective) ユーザー ID を設定する。"
+msgid ""
+"I<sem_perm.cuid> and I<sem_perm.uid> are set to the effective user ID of the "
+"calling process."
+msgstr ""
+"I<sem_perm.cuid> と I<sem_perm.uid> に、呼び出し元のプロセスの実効 "
+"(effective) ユーザー ID を設定する。"
 
 #. type: Plain text
 #: build/C/man2/semget.2:117
-msgid "I<sem_perm.cgid> and I<sem_perm.gid> are set to the effective group ID of the calling process."
-msgstr "I<sem_perm.cgid> と I<sem_perm.gid> に、呼び出し元のプロセスの実効 (effective) グループ ID を設定する。"
+msgid ""
+"I<sem_perm.cgid> and I<sem_perm.gid> are set to the effective group ID of "
+"the calling process."
+msgstr ""
+"I<sem_perm.cgid> と I<sem_perm.gid> に、呼び出し元のプロセスの実効 "
+"(effective) グループ ID を設定する。"
 
 #. type: Plain text
 #: build/C/man2/semget.2:122
-msgid "The least significant 9 bits of I<sem_perm.mode> are set to the least significant 9 bits of I<semflg>."
-msgstr "I<sem_perm.mode> の下位 9 ビットに I<semflg> の下位 9 ビットを設定する。"
+msgid ""
+"The least significant 9 bits of I<sem_perm.mode> are set to the least "
+"significant 9 bits of I<semflg>."
+msgstr ""
+"I<sem_perm.mode> の下位 9 ビットに I<semflg> の下位 9 ビットを設定する。"
 
 #. type: Plain text
 #: build/C/man2/semget.2:126
@@ -1820,8 +2497,15 @@ msgstr "I<sem_ctime> に現在の時刻を設定する。"
 
 #. type: Plain text
 #: build/C/man2/semget.2:143
-msgid "The argument I<nsems> can be 0 (a don't care)  when a semaphore set is not being created.  Otherwise, I<nsems> must be greater than 0 and less than or equal to the maximum number of semaphores per semaphore set (B<SEMMSL>)."
-msgstr "セマフォ集合の作成を行わない場合は、引き数 I<nsems> に (don't care を意味する) 0 を指定してもよい。 そうでない場合は、 I<nsems> は 0 より大きい値でなければならず、セマフォ集合あたりのセマフォの最大数 (B<SEMMSL>)  以下でなければならない。"
+msgid ""
+"The argument I<nsems> can be 0 (a don't care)  when a semaphore set is not "
+"being created.  Otherwise, I<nsems> must be greater than 0 and less than or "
+"equal to the maximum number of semaphores per semaphore set (B<SEMMSL>)."
+msgstr ""
+"セマフォ集合の作成を行わない場合は、引き数 I<nsems> に (don't care を意味す"
+"る) 0 を指定してもよい。 そうでない場合は、 I<nsems> は 0 より大きい値でなけ"
+"ればならず、セマフォ集合あたりのセマフォの最大数 (B<SEMMSL>)  以下でなければ"
+"ならない。"
 
 #.  and a check is made to see if it is marked for destruction.
 #. type: Plain text
@@ -1831,41 +2515,71 @@ msgstr "セマフォ集合が既に存在した場合は、アクセス許可の
 
 #. type: Plain text
 #: build/C/man2/semget.2:153
-msgid "If successful, the return value will be the semaphore set identifier (a nonnegative integer), otherwise, -1 is returned, with I<errno> indicating the error."
-msgstr "成功した場合、セマフォ集合の識別子 (非負の整数) が返り値となる。 失敗した場合は -1 が返され、 I<errno> にエラーを示す値が設定される。"
+msgid ""
+"If successful, the return value will be the semaphore set identifier (a "
+"nonnegative integer), otherwise, -1 is returned, with I<errno> indicating "
+"the error."
+msgstr ""
+"成功した場合、セマフォ集合の識別子 (非負の整数) が返り値となる。 失敗した場合"
+"は -1 が返され、 I<errno> にエラーを示す値が設定される。"
 
 #. type: Plain text
 #: build/C/man2/semget.2:165
-msgid "A semaphore set exists for I<key>, but the calling process does not have permission to access the set, and does not have the B<CAP_IPC_OWNER> capability."
-msgstr "I<key> に対応するセマフォ集合は存在するが、 呼び出し元のプロセスはその集合へのアクセス許可がなく、 B<CAP_IPC_OWNER> ケーパビリティも持っていない。"
+msgid ""
+"A semaphore set exists for I<key>, but the calling process does not have "
+"permission to access the set, and does not have the B<CAP_IPC_OWNER> "
+"capability."
+msgstr ""
+"I<key> に対応するセマフォ集合は存在するが、 呼び出し元のプロセスはその集合へ"
+"のアクセス許可がなく、 B<CAP_IPC_OWNER> ケーパビリティも持っていない。"
 
 #.  .TP
 #.  .B EIDRM
 #.  The semaphore set is marked to be deleted.
 #. type: Plain text
 #: build/C/man2/semget.2:177
-msgid "B<IPC_CREAT> and B<IPC_EXCL> were specified in I<semflg>, but a semaphore set already exists for I<key>."
-msgstr "I<semflg> に B<IPC_CREAT> と B<IPC_EXCL> が指定されたが、 I<key> に対応するセマフォ集合はすでに存在する。"
+msgid ""
+"B<IPC_CREAT> and B<IPC_EXCL> were specified in I<semflg>, but a semaphore "
+"set already exists for I<key>."
+msgstr ""
+"I<semflg> に B<IPC_CREAT> と B<IPC_EXCL> が指定されたが、 I<key> に対応するセ"
+"マフォ集合はすでに存在する。"
 
 #. type: Plain text
 #: build/C/man2/semget.2:183
-msgid "I<nsems> is less than 0 or greater than the limit on the number of semaphores per semaphore set (B<SEMMSL>)."
-msgstr "I<nsems> が 0 より小さいか、 セマフォ集合あたりのセマフォの最大数 (B<SEMMSL>) より大きい。"
+msgid ""
+"I<nsems> is less than 0 or greater than the limit on the number of "
+"semaphores per semaphore set (B<SEMMSL>)."
+msgstr ""
+"I<nsems> が 0 より小さいか、 セマフォ集合あたりのセマフォの最大数 "
+"(B<SEMMSL>) より大きい。"
 
 #. type: Plain text
 #: build/C/man2/semget.2:190
-msgid "A semaphore set corresponding to I<key> already exists, but I<nsems> is larger than the number of semaphores in that set."
-msgstr "I<key> に対応するセマフォ集合が既に存在するが、 I<nsems> がその集合のセマフォ数よりも大きい。"
+msgid ""
+"A semaphore set corresponding to I<key> already exists, but I<nsems> is "
+"larger than the number of semaphores in that set."
+msgstr ""
+"I<key> に対応するセマフォ集合が既に存在するが、 I<nsems> がその集合のセマフォ"
+"数よりも大きい。"
 
 #. type: Plain text
 #: build/C/man2/semget.2:198
-msgid "No semaphore set exists for I<key> and I<semflg> did not specify B<IPC_CREAT>."
-msgstr "I<key> に対応するセマフォ集合が存在せず、 I<semflg> に B<IPC_CREAT> が指定されてもいない。"
+msgid ""
+"No semaphore set exists for I<key> and I<semflg> did not specify "
+"B<IPC_CREAT>."
+msgstr ""
+"I<key> に対応するセマフォ集合が存在せず、 I<semflg> に B<IPC_CREAT> が指定さ"
+"れてもいない。"
 
 #. type: Plain text
 #: build/C/man2/semget.2:202
-msgid "A semaphore set has to be created but the system does not have enough memory for the new data structure."
-msgstr "セマフォ集合を作成しようとしたが、新しいデータ構造体を 作成するのに十分なメモリーがシステムに存在しない。"
+msgid ""
+"A semaphore set has to be created but the system does not have enough memory "
+"for the new data structure."
+msgstr ""
+"セマフォ集合を作成しようとしたが、新しいデータ構造体を 作成するのに十分なメモ"
+"リーがシステムに存在しない。"
 
 #. type: TP
 #: build/C/man2/semget.2:202
@@ -1875,13 +2589,25 @@ msgstr "B<ENOSPC>"
 
 #. type: Plain text
 #: build/C/man2/semget.2:210
-msgid "A semaphore set has to be created but the system limit for the maximum number of semaphore sets (B<SEMMNI>), or the system wide maximum number of semaphores (B<SEMMNS>), would be exceeded."
-msgstr "セマフォ集合を作成しようとすると、システムのセマフォ集合の 最大数 (B<SEMMNI>)  か、システム全体のセマフォの最大数 (B<SEMMNS>)  のいずれかを超えてしまう。"
+msgid ""
+"A semaphore set has to be created but the system limit for the maximum "
+"number of semaphore sets (B<SEMMNI>), or the system wide maximum number of "
+"semaphores (B<SEMMNS>), would be exceeded."
+msgstr ""
+"セマフォ集合を作成しようとすると、システムのセマフォ集合の 最大数 "
+"(B<SEMMNI>)  か、システム全体のセマフォの最大数 (B<SEMMNS>)  のいずれかを超え"
+"てしまう。"
 
 #. type: Plain text
 #: build/C/man2/semget.2:238
-msgid "B<IPC_PRIVATE> isn't a flag field but a I<key_t> type.  If this special value is used for I<key>, the system call ignores all but the least significant 9 bits of I<semflg> and creates a new semaphore set (on success)."
-msgstr "B<IPC_PRIVATE> はフラグフィールドに指定するものではなく、 I<key_t> 型である。 この特別な値が I<key> に指定されると、 B<semget>()  I<semflg> の下位 9 ビット以外は全て無視し、 (成功した場合は) 新しいセマフォ集合を作成する。"
+msgid ""
+"B<IPC_PRIVATE> isn't a flag field but a I<key_t> type.  If this special "
+"value is used for I<key>, the system call ignores all but the least "
+"significant 9 bits of I<semflg> and creates a new semaphore set (on success)."
+msgstr ""
+"B<IPC_PRIVATE> はフラグフィールドに指定するものではなく、 I<key_t> 型であ"
+"る。 この特別な値が I<key> に指定されると、 B<semget>()  I<semflg> の下位 9 "
+"ビット以外は全て無視し、 (成功した場合は) 新しいセマフォ集合を作成する。"
 
 #. type: SS
 #: build/C/man2/semget.2:238
@@ -1894,13 +2620,36 @@ msgstr "セマフォの初期化"
 #.  implementation out there that does not.
 #. type: Plain text
 #: build/C/man2/semget.2:250
-msgid "The values of the semaphores in a newly created set are indeterminate.  (POSIX.1-2001 and POSIX.1-2008 are explicit on this point, although POSIX.1-2008 notes that a future version of the standard may require an implementation to initialize the semaphores to 0.)  Although Linux, like many other implementations, initializes the semaphore values to 0, a portable application cannot rely on this: it should explicitly initialize the semaphores to the desired values."
-msgstr "新しく作成されたセマフォ集合の各セマフォの値は不定である。 (この点は POSIX.1-2001 と POSIX.1-2008 に明記されている。ただし、POSIX.1-2008 では POSIX の将来のバージョンではセマフォを 0 に初期化するように実装に要求する可能性が注記されている。) Linux は他の多くの実装と同様にセマフォ値を 0 に初期化するが、 移植性を考慮したアプリケーションではこの動作を前提にすべきではない。 アプリケーションは明示的にセマフォを希望の値で初期化すべきである。"
+msgid ""
+"The values of the semaphores in a newly created set are indeterminate.  "
+"(POSIX.1-2001 and POSIX.1-2008 are explicit on this point, although "
+"POSIX.1-2008 notes that a future version of the standard may require an "
+"implementation to initialize the semaphores to 0.)  Although Linux, like "
+"many other implementations, initializes the semaphore values to 0, a "
+"portable application cannot rely on this: it should explicitly initialize "
+"the semaphores to the desired values."
+msgstr ""
+"新しく作成されたセマフォ集合の各セマフォの値は不定である。 (この点は "
+"POSIX.1-2001 と POSIX.1-2008 に明記されている。ただし、POSIX.1-2008 では "
+"POSIX の将来のバージョンではセマフォを 0 に初期化するように実装に要求する可能"
+"性が注記されている。) Linux は他の多くの実装と同様にセマフォ値を 0 に初期化す"
+"るが、 移植性を考慮したアプリケーションではこの動作を前提にすべきではない。 "
+"アプリケーションは明示的にセマフォを希望の値で初期化すべきである。"
 
 #. type: Plain text
 #: build/C/man2/semget.2:265
-msgid "Initialization can be done using B<semctl>(2)  B<SETVAL> or B<SETALL> operation.  Where multiple peers do not know who will be the first to initialize the set, checking for a nonzero I<sem_otime> in the associated data structure retrieved by a B<semctl>(2)  B<IPC_STAT> operation can be used to avoid races."
-msgstr "B<semctl>(2) の B<SETVAL> か B<SETALL> 操作を使って初期化することができる。 複数箇所からセマフォ集合の操作が行われる場面では、 誰が最初に集合を初期化すればよいか分からない。 この状況を避けるには、 B<semctl>(2)  の B<IPC_STAT> 操作で取得できるセマフォのデータ構造体の I<sem_otime> が 0 以外になっているかをチェックすればよい。"
+msgid ""
+"Initialization can be done using B<semctl>(2)  B<SETVAL> or B<SETALL> "
+"operation.  Where multiple peers do not know who will be the first to "
+"initialize the set, checking for a nonzero I<sem_otime> in the associated "
+"data structure retrieved by a B<semctl>(2)  B<IPC_STAT> operation can be "
+"used to avoid races."
+msgstr ""
+"B<semctl>(2) の B<SETVAL> か B<SETALL> 操作を使って初期化することができる。 "
+"複数箇所からセマフォ集合の操作が行われる場面では、 誰が最初に集合を初期化すれ"
+"ばよいか分からない。 この状況を避けるには、 B<semctl>(2)  の B<IPC_STAT> 操作"
+"で取得できるセマフォのデータ構造体の I<sem_otime> が 0 以外になっているかを"
+"チェックすればよい。"
 
 #. type: SS
 #: build/C/man2/semget.2:265 build/C/man2/semop.2:454
@@ -1910,8 +2659,11 @@ msgstr "セマフォの上限"
 
 #. type: Plain text
 #: build/C/man2/semget.2:269
-msgid "The following limits on semaphore set resources affect the B<semget>()  call:"
-msgstr "セマフォ集合のリソースに関する上限のうち、 B<semget>()  に影響を及ぼすものを以下に挙げる:"
+msgid ""
+"The following limits on semaphore set resources affect the B<semget>()  call:"
+msgstr ""
+"セマフォ集合のリソースに関する上限のうち、 B<semget>()  に影響を及ぼすものを"
+"以下に挙げる:"
 
 #. type: TP
 #: build/C/man2/semget.2:269
@@ -1922,8 +2674,13 @@ msgstr "B<SEMMNI>"
 #.  This /proc file is not available in Linux 2.2 and earlier -- MTK
 #. type: Plain text
 #: build/C/man2/semget.2:275
-msgid "System-wide limit on the number of semaphore sets: policy dependent (on Linux, this limit can be read and modified via the fourth field of I</proc/sys/kernel/sem>)."
-msgstr "システム全体のセマフォ集合の上限数: 方針依存 (Linux では、この制限値は I</proc/sys/kernel/sem> の第4フィールドに対応し、読み出しも変更もできる)。"
+msgid ""
+"System-wide limit on the number of semaphore sets: policy dependent (on "
+"Linux, this limit can be read and modified via the fourth field of I</proc/"
+"sys/kernel/sem>)."
+msgstr ""
+"システム全体のセマフォ集合の上限数: 方針依存 (Linux では、この制限値は I</"
+"proc/sys/kernel/sem> の第4フィールドに対応し、読み出しも変更もできる)。"
 
 #. type: TP
 #: build/C/man2/semget.2:275
@@ -1933,8 +2690,13 @@ msgstr "B<SEMMSL>"
 
 #. type: Plain text
 #: build/C/man2/semget.2:280
-msgid "Maximum number of semaphores per semaphore ID: implementation dependent (on Linux, this limit can be read and modified via the first field of I</proc/sys/kernel/sem>)."
-msgstr "セマフォ ID あたりのセマフォの最大数: 実装依存 (Linux では、この制限値は I</proc/sys/kernel/sem> の第1フィールドに対応し、読み出しも変更もできる)。"
+msgid ""
+"Maximum number of semaphores per semaphore ID: implementation dependent (on "
+"Linux, this limit can be read and modified via the first field of I</proc/"
+"sys/kernel/sem>)."
+msgstr ""
+"セマフォ ID あたりのセマフォの最大数: 実装依存 (Linux では、この制限値は I</"
+"proc/sys/kernel/sem> の第1フィールドに対応し、読み出しも変更もできる)。"
 
 #. type: TP
 #: build/C/man2/semget.2:280
@@ -1944,8 +2706,15 @@ msgstr "B<SEMMNS>"
 
 #. type: Plain text
 #: build/C/man2/semget.2:289
-msgid "System-wide limit on the number of semaphores: policy dependent (on Linux, this limit can be read and modified via the second field of I</proc/sys/kernel/sem>).  Note that number of semaphores system-wide is also limited by the product of B<SEMMSL> and B<SEMMNI>."
-msgstr "システム全体のセマフォ数の上限値: 方針依存 (Linux では、この上限値は I</proc/sys/kernel/sem> の第 2 フィールドであり、読み出しも変更もできる)。 システム全体のセマフォ数には、 B<SEMMSL> と B<SEMMNI> の積という上限もある。"
+msgid ""
+"System-wide limit on the number of semaphores: policy dependent (on Linux, "
+"this limit can be read and modified via the second field of I</proc/sys/"
+"kernel/sem>).  Note that number of semaphores system-wide is also limited by "
+"the product of B<SEMMSL> and B<SEMMNI>."
+msgstr ""
+"システム全体のセマフォ数の上限値: 方針依存 (Linux では、この上限値は I</proc/"
+"sys/kernel/sem> の第 2 フィールドであり、読み出しも変更もできる)。 システム全"
+"体のセマフォ数には、 B<SEMMSL> と B<SEMMNI> の積という上限もある。"
 
 #. type: SH
 #: build/C/man2/semget.2:289 build/C/man2/semop.2:478
@@ -1955,13 +2724,21 @@ msgstr "バグ"
 
 #. type: Plain text
 #: build/C/man2/semget.2:295
-msgid "The name choice B<IPC_PRIVATE> was perhaps unfortunate, B<IPC_NEW> would more clearly show its function."
-msgstr "B<IPC_PRIVATE> という名前を選んだのはおそらく失敗であろう。 B<IPC_NEW> の方がより明確にその機能を表しているだろう。"
+msgid ""
+"The name choice B<IPC_PRIVATE> was perhaps unfortunate, B<IPC_NEW> would "
+"more clearly show its function."
+msgstr ""
+"B<IPC_PRIVATE> という名前を選んだのはおそらく失敗であろう。 B<IPC_NEW> の方が"
+"より明確にその機能を表しているだろう。"
 
 #. type: Plain text
 #: build/C/man2/semget.2:302
-msgid "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<svipc>(7)"
+msgid ""
+"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<svipc>(7)"
 
 #. type: TH
 #: build/C/man2/semop.2:35
@@ -2003,8 +2780,12 @@ msgstr "B<semtimedop>(): _GNU_SOURCE"
 
 #. type: Plain text
 #: build/C/man2/semop.2:60
-msgid "Each semaphore in a System\\ V semaphore set has the following associated values:"
-msgstr "System\\ V セマフォ集合 (semaphore set) のメンバーの各セマフォは 以下の関連情報を持っている:"
+msgid ""
+"Each semaphore in a System\\ V semaphore set has the following associated "
+"values:"
+msgstr ""
+"System\\ V セマフォ集合 (semaphore set) のメンバーの各セマフォは 以下の関連情"
+"報を持っている:"
 
 #. type: Plain text
 #: build/C/man2/semop.2:67
@@ -2022,8 +2803,17 @@ msgstr ""
 
 #. type: Plain text
 #: build/C/man2/semop.2:82
-msgid "B<semop>()  performs operations on selected semaphores in the set indicated by I<semid>.  Each of the I<nsops> elements in the array pointed to by I<sops> is a structure that specifies an operation to be performed on a single semaphore.  The elements of this structure are of type I<struct sembuf>, containing the following members:"
-msgstr "B<semop>()  は I<semid> で指定されたセマフォ集合の選択されたセマフォに対して操作を行う。 I<sops> は I<nsops> 個の要素の配列を指し、配列の各要素は個々のセマフォに対する操作を示す構造体である。その型は I<struct sembuf> で、次のメンバを持つ:"
+msgid ""
+"B<semop>()  performs operations on selected semaphores in the set indicated "
+"by I<semid>.  Each of the I<nsops> elements in the array pointed to by "
+"I<sops> is a structure that specifies an operation to be performed on a "
+"single semaphore.  The elements of this structure are of type I<struct "
+"sembuf>, containing the following members:"
+msgstr ""
+"B<semop>()  は I<semid> で指定されたセマフォ集合の選択されたセマフォに対して"
+"操作を行う。 I<sops> は I<nsops> 個の要素の配列を指し、配列の各要素は個々のセ"
+"マフォに対する操作を示す構造体である。その型は I<struct sembuf> で、次のメン"
+"バを持つ:"
 
 #. type: Plain text
 #: build/C/man2/semop.2:88
@@ -2039,28 +2829,75 @@ msgstr ""
 
 #. type: Plain text
 #: build/C/man2/semop.2:100
-msgid "Flags recognized in I<sem_flg> are B<IPC_NOWAIT> and B<SEM_UNDO>.  If an operation specifies B<SEM_UNDO>, it will be automatically undone when the process terminates."
-msgstr "I<sem_flg> には B<IPC_NOWAIT> と B<SEM_UNDO> が設定できる。 B<SEM_UNDO> が指定された操作は、そのプロセスが終了した時に自動的に取り消される。"
+msgid ""
+"Flags recognized in I<sem_flg> are B<IPC_NOWAIT> and B<SEM_UNDO>.  If an "
+"operation specifies B<SEM_UNDO>, it will be automatically undone when the "
+"process terminates."
+msgstr ""
+"I<sem_flg> には B<IPC_NOWAIT> と B<SEM_UNDO> が設定できる。 B<SEM_UNDO> が指"
+"定された操作は、そのプロセスが終了した時に自動的に取り消される。"
 
 #. type: Plain text
 #: build/C/man2/semop.2:115
-msgid "The set of operations contained in I<sops> is performed in I<array order>, and I<atomically>, that is, the operations are performed either as a complete unit, or not at all.  The behavior of the system call if not all operations can be performed immediately depends on the presence of the B<IPC_NOWAIT> flag in the individual I<sem_flg> fields, as noted below."
-msgstr "I<sops> に含まれる操作の集合は、 I<配列の順序> で、 I<アトミックに> 実行される。 すなわち、全ての操作が完全に実行されるか、全く実行されないかの どちらかとなる。 全ての操作が直ちに実行できない場合のこのシステムコールの振る舞いは 個々の操作の I<sem_flg> フィールドに B<IPC_NOWAIT> が存在するかによって決まり、後述のようになる。"
+msgid ""
+"The set of operations contained in I<sops> is performed in I<array order>, "
+"and I<atomically>, that is, the operations are performed either as a "
+"complete unit, or not at all.  The behavior of the system call if not all "
+"operations can be performed immediately depends on the presence of the "
+"B<IPC_NOWAIT> flag in the individual I<sem_flg> fields, as noted below."
+msgstr ""
+"I<sops> に含まれる操作の集合は、 I<配列の順序> で、 I<アトミックに> 実行され"
+"る。 すなわち、全ての操作が完全に実行されるか、全く実行されないかの どちらか"
+"となる。 全ての操作が直ちに実行できない場合のこのシステムコールの振る舞いは "
+"個々の操作の I<sem_flg> フィールドに B<IPC_NOWAIT> が存在するかによって決ま"
+"り、後述のようになる。"
 
 #. type: Plain text
 #: build/C/man2/semop.2:122
-msgid "Each operation is performed on the I<sem_num>-th semaphore of the semaphore set, where the first semaphore of the set is numbered 0.  There are three types of operation, distinguished by the value of I<sem_op>."
-msgstr "それぞれの操作はセマフォ集合の I<sem_num>番目 のセマフォに対して実行される。セマフォ集合の最初のセマフォには 番号 0 が振られる。 そして操作は三種類あり、 I<sem_op> の値で区別される。"
+msgid ""
+"Each operation is performed on the I<sem_num>-th semaphore of the semaphore "
+"set, where the first semaphore of the set is numbered 0.  There are three "
+"types of operation, distinguished by the value of I<sem_op>."
+msgstr ""
+"それぞれの操作はセマフォ集合の I<sem_num>番目 のセマフォに対して実行される。"
+"セマフォ集合の最初のセマフォには 番号 0 が振られる。 そして操作は三種類あ"
+"り、 I<sem_op> の値で区別される。"
 
 #. type: Plain text
 #: build/C/man2/semop.2:137
-msgid "If I<sem_op> is a positive integer, the operation adds this value to the semaphore value (I<semval>).  Furthermore, if B<SEM_UNDO> is specified for this operation, the system subtracts the value I<sem_op> from the semaphore adjustment (I<semadj>)  value for this semaphore.  This operation can always proceed\\(emit never forces a thread to wait.  The calling process must have alter permission on the semaphore set."
-msgstr "I<sem_op> が正の整数の場合、その値をセマフォの値 (I<semval>) に加算する。 さらに、この操作で B<SEM_UNDO> が指定されていた場合は、 システムはこのセマフォのの調整値 (I<semadj>) から値 I<sem_op> を減算する。 この操作は必ず実行でき、 スレッドの停止は起こらない。 呼び出し元プロセスは対象のセマフォ集合を変更する許可がなければならない。"
+msgid ""
+"If I<sem_op> is a positive integer, the operation adds this value to the "
+"semaphore value (I<semval>).  Furthermore, if B<SEM_UNDO> is specified for "
+"this operation, the system subtracts the value I<sem_op> from the semaphore "
+"adjustment (I<semadj>)  value for this semaphore.  This operation can always "
+"proceed\\(emit never forces a thread to wait.  The calling process must have "
+"alter permission on the semaphore set."
+msgstr ""
+"I<sem_op> が正の整数の場合、その値をセマフォの値 (I<semval>) に加算する。 さ"
+"らに、この操作で B<SEM_UNDO> が指定されていた場合は、 システムはこのセマフォ"
+"のの調整値 (I<semadj>) から値 I<sem_op> を減算する。 この操作は必ず実行で"
+"き、 スレッドの停止は起こらない。 呼び出し元プロセスは対象のセマフォ集合を変"
+"更する許可がなければならない。"
 
 #. type: Plain text
 #: build/C/man2/semop.2:162
-msgid "If I<sem_op> is zero, the process must have read permission on the semaphore set.  This is a \"wait-for-zero\" operation: if I<semval> is zero, the operation can immediately proceed.  Otherwise, if B<IPC_NOWAIT> is specified in I<sem_flg>, B<semop>()  fails with I<errno> set to B<EAGAIN> (and none of the operations in I<sops> is performed).  Otherwise, I<semzcnt> (the count of threads waiting until this semaphore's value becomes zero)  is incremented by one and the thread sleeps until one of the following occurs:"
-msgstr "I<sem_op> が 0 の場合、「ゼロまで待つ」操作である。この場合、プロセスは そのセマフォ集合に対する読み込み許可がなければならない。 I<semval> が 0 ならば、操作は直ちに行われる。 I<semval> が 0 でない場合、 I<sem_flg> に B<IPC_NOWAIT> が指定されていれば、 B<semop>()  は失敗し、 B<errno> に B<EAGAIN> が設定される (このとき I<sops> に対する操作は全く実行されない)。 I<sem_flg> に B<IPC_NOWAIT> が指定されていない場合、 I<semzcnt> (セマフォ値が 0 になるのを待っているスレッドの数) を 1 増加させて、 以下のいずれかが起こるまでスレッドを停止 (sleep) する。"
+msgid ""
+"If I<sem_op> is zero, the process must have read permission on the semaphore "
+"set.  This is a \"wait-for-zero\" operation: if I<semval> is zero, the "
+"operation can immediately proceed.  Otherwise, if B<IPC_NOWAIT> is specified "
+"in I<sem_flg>, B<semop>()  fails with I<errno> set to B<EAGAIN> (and none of "
+"the operations in I<sops> is performed).  Otherwise, I<semzcnt> (the count "
+"of threads waiting until this semaphore's value becomes zero)  is "
+"incremented by one and the thread sleeps until one of the following occurs:"
+msgstr ""
+"I<sem_op> が 0 の場合、「ゼロまで待つ」操作である。この場合、プロセスは その"
+"セマフォ集合に対する読み込み許可がなければならない。 I<semval> が 0 ならば、"
+"操作は直ちに行われる。 I<semval> が 0 でない場合、 I<sem_flg> に "
+"B<IPC_NOWAIT> が指定されていれば、 B<semop>()  は失敗し、 B<errno> に "
+"B<EAGAIN> が設定される (このとき I<sops> に対する操作は全く実行されない)。 "
+"I<sem_flg> に B<IPC_NOWAIT> が指定されていない場合、 I<semzcnt> (セマフォ値"
+"が 0 になるのを待っているスレッドの数) を 1 増加させて、 以下のいずれかが起こ"
+"るまでスレッドを停止 (sleep) する。"
 
 #. type: IP
 #: build/C/man2/semop.2:162 build/C/man2/semop.2:167 build/C/man2/semop.2:175
@@ -2071,45 +2908,95 @@ msgstr "\\(bu"
 
 #. type: Plain text
 #: build/C/man2/semop.2:167
-msgid "I<semval> becomes 0, at which time the value of I<semzcnt> is decremented."
+msgid ""
+"I<semval> becomes 0, at which time the value of I<semzcnt> is decremented."
 msgstr "I<semval> が 0 になった: このとき I<semzcnt> の値は 1 減算される。"
 
 #. type: Plain text
 #: build/C/man2/semop.2:175
-msgid "The semaphore set is removed: B<semop>()  fails, with I<errno> set to B<EIDRM>."
-msgstr "セマフォ集合が削除された: このとき B<semop>()  は失敗し、 I<errno> に B<EIDRM> が設定される。"
+msgid ""
+"The semaphore set is removed: B<semop>()  fails, with I<errno> set to "
+"B<EIDRM>."
+msgstr ""
+"セマフォ集合が削除された: このとき B<semop>()  は失敗し、 I<errno> に "
+"B<EIDRM> が設定される。"
 
 #. type: Plain text
 #: build/C/man2/semop.2:185
-msgid "The calling thread catches a signal: the value of I<semzcnt> is decremented and B<semop>()  fails, with I<errno> set to B<EINTR>."
-msgstr "呼び出し元スレッドがシグナルを捕獲した: このとき I<semzcnt> の値は 1 減算され、 B<semop>()  は失敗し I<errno> に B<EINTR> が設定される。"
+msgid ""
+"The calling thread catches a signal: the value of I<semzcnt> is decremented "
+"and B<semop>()  fails, with I<errno> set to B<EINTR>."
+msgstr ""
+"呼び出し元スレッドがシグナルを捕獲した: このとき I<semzcnt> の値は 1 減算さ"
+"れ、 B<semop>()  は失敗し I<errno> に B<EINTR> が設定される。"
 
 #. type: Plain text
 #: build/C/man2/semop.2:227
-msgid "If I<sem_op> is less than zero, the process must have alter permission on the semaphore set.  If I<semval> is greater than or equal to the absolute value of I<sem_op>, the operation can proceed immediately: the absolute value of I<sem_op> is subtracted from I<semval>, and, if B<SEM_UNDO> is specified for this operation, the system adds the absolute value of I<sem_op> to the semaphore adjustment (I<semadj>)  value for this semaphore.  If the absolute value of I<sem_op> is greater than I<semval>, and B<IPC_NOWAIT> is specified in I<sem_flg>, B<semop>()  fails, with I<errno> set to B<EAGAIN> (and none of the operations in I<sops> is performed).  Otherwise, I<semncnt> (the counter of threads waiting for this semaphore's value to increase)  is incremented by one and the thread sleeps until one of the following occurs:"
-msgstr "I<sem_op> が 0 未満の場合、プロセスにはそのセマフォ集合を変更する許可がなければ ならない。 I<semval> が I<sem_op> の絶対値以上の場合は、操作は直ちに実行される: I<semval> から I<sem_op> の絶対値を減算し、さらに、この操作に B<SEM_UNDO> が指定されている場合は、このセマフォの調整値 (I<semadj>) に I<sem_op> の絶対値を加算する。 I<semval> が I<sem_op> の絶対値より小さく、 I<sem_flg> に B<IPC_NOWAIT> が指定された場合は、 B<semop>()  は失敗し、 I<errno> に B<EAGAIN> が設定される (このとき I<sops> の操作は全く実行されない)。 I<semval> が I<sem_op> の絶対値より小さく、 B<IPC_WAIT> が指定されていない場合は、 I<semncnt> (このセマフォの値が増加するのを待っているスレッド数のカウンター)  を 1 増加させて、以下のいずれかが起こるまでスレッドを停止 (sleep) する。"
+msgid ""
+"If I<sem_op> is less than zero, the process must have alter permission on "
+"the semaphore set.  If I<semval> is greater than or equal to the absolute "
+"value of I<sem_op>, the operation can proceed immediately: the absolute "
+"value of I<sem_op> is subtracted from I<semval>, and, if B<SEM_UNDO> is "
+"specified for this operation, the system adds the absolute value of "
+"I<sem_op> to the semaphore adjustment (I<semadj>)  value for this "
+"semaphore.  If the absolute value of I<sem_op> is greater than I<semval>, "
+"and B<IPC_NOWAIT> is specified in I<sem_flg>, B<semop>()  fails, with "
+"I<errno> set to B<EAGAIN> (and none of the operations in I<sops> is "
+"performed).  Otherwise, I<semncnt> (the counter of threads waiting for this "
+"semaphore's value to increase)  is incremented by one and the thread sleeps "
+"until one of the following occurs:"
+msgstr ""
+"I<sem_op> が 0 未満の場合、プロセスにはそのセマフォ集合を変更する許可がなけれ"
+"ば ならない。 I<semval> が I<sem_op> の絶対値以上の場合は、操作は直ちに実行さ"
+"れる: I<semval> から I<sem_op> の絶対値を減算し、さらに、この操作に "
+"B<SEM_UNDO> が指定されている場合は、このセマフォの調整値 (I<semadj>) に "
+"I<sem_op> の絶対値を加算する。 I<semval> が I<sem_op> の絶対値より小さく、 "
+"I<sem_flg> に B<IPC_NOWAIT> が指定された場合は、 B<semop>()  は失敗し、 "
+"I<errno> に B<EAGAIN> が設定される (このとき I<sops> の操作は全く実行されな"
+"い)。 I<semval> が I<sem_op> の絶対値より小さく、 B<IPC_WAIT> が指定されてい"
+"ない場合は、 I<semncnt> (このセマフォの値が増加するのを待っているスレッド数の"
+"カウンター)  を 1 増加させて、以下のいずれかが起こるまでスレッドを停止 "
+"(sleep) する。"
 
 #. type: Plain text
 #: build/C/man2/semop.2:232
-msgid "I<semval> becomes greater than or equal to the absolute value of I<sem_op>: the operation now proceeds, as described above."
-msgstr "I<semval> が I<sem_op> の絶対値以上になった。この時点で、操作は上述の通り実行される。"
+msgid ""
+"I<semval> becomes greater than or equal to the absolute value of I<sem_op>: "
+"the operation now proceeds, as described above."
+msgstr ""
+"I<semval> が I<sem_op> の絶対値以上になった。この時点で、操作は上述の通り実行"
+"される。"
 
 #. type: Plain text
 #: build/C/man2/semop.2:239
-msgid "The semaphore set is removed from the system: B<semop>()  fails, with I<errno> set to B<EIDRM>."
-msgstr "セマフォ集合がシステムから削除された: このとき B<semop>()  は失敗し I<errno> に B<EIDRM> が設定される。"
+msgid ""
+"The semaphore set is removed from the system: B<semop>()  fails, with "
+"I<errno> set to B<EIDRM>."
+msgstr ""
+"セマフォ集合がシステムから削除された: このとき B<semop>()  は失敗し I<errno> "
+"に B<EIDRM> が設定される。"
 
 #. type: Plain text
 #: build/C/man2/semop.2:249
-msgid "The calling thread catches a signal: the value of I<semncnt> is decremented and B<semop>()  fails, with I<errno> set to B<EINTR>."
-msgstr "呼び出したスレッドがシグナルを捕獲した: このとき I<semncnt> が 1 減算され、 B<semop>()  は失敗し I<errno> に B<EINTR> が設定される。"
+msgid ""
+"The calling thread catches a signal: the value of I<semncnt> is decremented "
+"and B<semop>()  fails, with I<errno> set to B<EINTR>."
+msgstr ""
+"呼び出したスレッドがシグナルを捕獲した: このとき I<semncnt> が 1 減算され、 "
+"B<semop>()  は失敗し I<errno> に B<EINTR> が設定される。"
 
 #.  and
 #.  .I sem_ctime
 #. type: Plain text
 #: build/C/man2/semop.2:260
-msgid "On successful completion, the I<sempid> value for each semaphore specified in the array pointed to by I<sops> is set to the caller's process ID.  In addition, the I<sem_otime> is set to the current time."
-msgstr "操作が成功した場合、 I<sops> が指す配列によって操作対象となった各セマフォの I<sempid> メンバーには呼び出し元のプロセス ID が設定される。さらに I<sem_otime> に現在時刻が設定される。"
+msgid ""
+"On successful completion, the I<sempid> value for each semaphore specified "
+"in the array pointed to by I<sops> is set to the caller's process ID.  In "
+"addition, the I<sem_otime> is set to the current time."
+msgstr ""
+"操作が成功した場合、 I<sops> が指す配列によって操作対象となった各セマフォの "
+"I<sempid> メンバーには呼び出し元のプロセス ID が設定される。さらに "
+"I<sem_otime> に現在時刻が設定される。"
 
 #. type: SS
 #: build/C/man2/semop.2:260
@@ -2119,7 +3006,17 @@ msgstr "semtimedop()"
 
 #. type: Plain text
 #: build/C/man2/semop.2:290
-msgid "B<semtimedop>()  behaves identically to B<semop>()  except that in those cases where the calling thread would sleep, the duration of that sleep is limited by the amount of elapsed time specified by the I<timespec> structure whose address is passed in the I<timeout> argument.  (This sleep interval will be rounded up to the system clock granularity, and kernel scheduling delays mean that the interval may overrun by a small amount.)  If the specified time limit has been reached, B<semtimedop>()  fails with I<errno> set to B<EAGAIN> (and none of the operations in I<sops> is performed).  If the I<timeout> argument is NULL, then B<semtimedop>()  behaves exactly like B<semop>()."
+msgid ""
+"B<semtimedop>()  behaves identically to B<semop>()  except that in those "
+"cases where the calling thread would sleep, the duration of that sleep is "
+"limited by the amount of elapsed time specified by the I<timespec> structure "
+"whose address is passed in the I<timeout> argument.  (This sleep interval "
+"will be rounded up to the system clock granularity, and kernel scheduling "
+"delays mean that the interval may overrun by a small amount.)  If the "
+"specified time limit has been reached, B<semtimedop>()  fails with I<errno> "
+"set to B<EAGAIN> (and none of the operations in I<sops> is performed).  If "
+"the I<timeout> argument is NULL, then B<semtimedop>()  behaves exactly like "
+"B<semop>()."
 msgstr ""
 "B<semtimedop>() 関数の振る舞いは B<semop>() と全く同じだが、呼び出し元\n"
 "スレッドが停止する場合、停止期間の上限が I<timeout> 引き数の指す\n"
@@ -2133,13 +3030,21 @@ msgstr ""
 
 #. type: Plain text
 #: build/C/man2/semop.2:298
-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."
-msgstr "B<semtimeop>() がシグナルにより割り込まれた場合、呼び出しはエラー B<EINTR> で失敗し、 I<timeout> の内容は変更されないままとなる点に注意すること。"
+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."
+msgstr ""
+"B<semtimeop>() がシグナルにより割り込まれた場合、呼び出しはエラー B<EINTR> で"
+"失敗し、 I<timeout> の内容は変更されないままとなる点に注意すること。"
 
 #. type: Plain text
 #: build/C/man2/semop.2:308
-msgid "If successful, B<semop>()  and B<semtimedop>()  return 0; otherwise they return -1 with I<errno> indicating the error."
-msgstr "成功した場合、 B<semop>()  と B<semtimedop>()  は 0 を返す。そうでなければ -1 を返し、 エラーを示す I<errno> を設定する。"
+msgid ""
+"If successful, B<semop>()  and B<semtimedop>()  return 0; otherwise they "
+"return -1 with I<errno> indicating the error."
+msgstr ""
+"成功した場合、 B<semop>()  と B<semtimedop>()  は 0 を返す。そうでなければ "
+"-1 を返し、 エラーを示す I<errno> を設定する。"
 
 #. type: Plain text
 #: build/C/man2/semop.2:312
@@ -2154,22 +3059,37 @@ msgstr "B<E2BIG>"
 
 #. type: Plain text
 #: build/C/man2/semop.2:320
-msgid "The argument I<nsops> is greater than B<SEMOPM>, the maximum number of operations allowed per system call."
-msgstr "I<nsops> 引き数が B<SEMOPM> より大きい。 B<SEMOPM> は一回のシステムコールで許される操作の最大個数である。"
+msgid ""
+"The argument I<nsops> is greater than B<SEMOPM>, the maximum number of "
+"operations allowed per system call."
+msgstr ""
+"I<nsops> 引き数が B<SEMOPM> より大きい。 B<SEMOPM> は一回のシステムコールで許"
+"される操作の最大個数である。"
 
 #. type: Plain text
 #: build/C/man2/semop.2:327
-msgid "The calling process does not have the permissions required to perform the specified semaphore operations, and does not have the B<CAP_IPC_OWNER> capability."
-msgstr "呼び出し元プロセスには指定されたセマフォ操作を行うのに 必要なアクセス許可がなく、 B<CAP_IPC_OWNER> ケーパビリティもない。"
+msgid ""
+"The calling process does not have the permissions required to perform the "
+"specified semaphore operations, and does not have the B<CAP_IPC_OWNER> "
+"capability."
+msgstr ""
+"呼び出し元プロセスには指定されたセマフォ操作を行うのに 必要なアクセス許可がな"
+"く、 B<CAP_IPC_OWNER> ケーパビリティもない。"
 
 #. type: Plain text
 #: build/C/man2/semop.2:336
-msgid "An operation could not proceed immediately and either B<IPC_NOWAIT> was specified in I<sem_flg> or the time limit specified in I<timeout> expired."
-msgstr "操作を直ちに処理することができず、かつ I<sem_flg> に B<IPC_NOWAIT> が指定されているか I<timeout> で指定された制限時間が経過した。"
+msgid ""
+"An operation could not proceed immediately and either B<IPC_NOWAIT> was "
+"specified in I<sem_flg> or the time limit specified in I<timeout> expired."
+msgstr ""
+"操作を直ちに処理することができず、かつ I<sem_flg> に B<IPC_NOWAIT> が指定され"
+"ているか I<timeout> で指定された制限時間が経過した。"
 
 #. type: Plain text
 #: build/C/man2/semop.2:343
-msgid "An address specified in either the I<sops> or the I<timeout> argument isn't accessible."
+msgid ""
+"An address specified in either the I<sops> or the I<timeout> argument isn't "
+"accessible."
 msgstr "引き数 I<sops> か I<timeout> が指しているアドレスにアクセスできない。"
 
 #. type: TP
@@ -2180,28 +3100,47 @@ msgstr "B<EFBIG>"
 
 #. type: Plain text
 #: build/C/man2/semop.2:349
-msgid "For some operation the value of I<sem_num> is less than 0 or greater than or equal to the number of semaphores in the set."
-msgstr "ある操作で、 I<sem_num> の値が 0 未満か、集合内のセマフォの数以上である。"
+msgid ""
+"For some operation the value of I<sem_num> is less than 0 or greater than or "
+"equal to the number of semaphores in the set."
+msgstr ""
+"ある操作で、 I<sem_num> の値が 0 未満か、集合内のセマフォの数以上である。"
 
 #. type: Plain text
 #: build/C/man2/semop.2:356
-msgid "While blocked in this system call, the thread caught a signal; see B<signal>(7)."
-msgstr "このシステムコールで停止している時にスレッドがシグナルを捕獲した。 B<single>(7) 参照。"
+msgid ""
+"While blocked in this system call, the thread caught a signal; see "
+"B<signal>(7)."
+msgstr ""
+"このシステムコールで停止している時にスレッドがシグナルを捕獲した。 "
+"B<single>(7) 参照。"
 
 #. type: Plain text
 #: build/C/man2/semop.2:363
-msgid "The semaphore set doesn't exist, or I<semid> is less than zero, or I<nsops> has a nonpositive value."
-msgstr "セマフォ集合が存在しないか、 I<semid> が 0 未満であるか、 I<nsops> が正の数でない。"
+msgid ""
+"The semaphore set doesn't exist, or I<semid> is less than zero, or I<nsops> "
+"has a nonpositive value."
+msgstr ""
+"セマフォ集合が存在しないか、 I<semid> が 0 未満であるか、 I<nsops> が正の数で"
+"ない。"
 
 #. type: Plain text
 #: build/C/man2/semop.2:371
-msgid "The I<sem_flg> of some operation specified B<SEM_UNDO> and the system does not have enough memory to allocate the undo structure."
-msgstr "ある操作で I<sem_flg> に B<SEM_UNDO> が指定されたが、システムにアンドゥ構造体に割り当てる十分なメモリーがない。"
+msgid ""
+"The I<sem_flg> of some operation specified B<SEM_UNDO> and the system does "
+"not have enough memory to allocate the undo structure."
+msgstr ""
+"ある操作で I<sem_flg> に B<SEM_UNDO> が指定されたが、システムにアンドゥ構造体"
+"に割り当てる十分なメモリーがない。"
 
 #. type: Plain text
 #: build/C/man2/semop.2:379
-msgid "For some operation I<sem_op+semval> is greater than B<SEMVMX>, the implementation dependent maximum value for I<semval>."
-msgstr "ある操作で I<sem_op+semval> が B<SEMVMX> より大きい。 B<SEMVMX> は I<semval> の最大値で、その値は実装依存である。"
+msgid ""
+"For some operation I<sem_op+semval> is greater than B<SEMVMX>, the "
+"implementation dependent maximum value for I<semval>."
+msgstr ""
+"ある操作で I<sem_op+semval> が B<SEMVMX> より大きい。 B<SEMVMX> は I<semval> "
+"の最大値で、その値は実装依存である。"
 
 #. type: SH
 #: build/C/man2/semop.2:379
@@ -2211,33 +3150,79 @@ msgstr "バージョン"
 
 #. type: Plain text
 #: build/C/man2/semop.2:386
-msgid "B<semtimedop>()  first appeared in Linux 2.5.52, and was subsequently backported into kernel 2.4.22.  Glibc support for B<semtimedop>()  first appeared in version 2.3.3."
-msgstr "B<semtimedop>()  は Linux 2.5.52 で初めて登場し、 それからカーネル 2.4.22 にも移植された。 B<semtimedop>()  の glibc でのサポートはバージョン 2.3.3 で初めて登場した。"
+msgid ""
+"B<semtimedop>()  first appeared in Linux 2.5.52, and was subsequently "
+"backported into kernel 2.4.22.  Glibc support for B<semtimedop>()  first "
+"appeared in version 2.3.3."
+msgstr ""
+"B<semtimedop>()  は Linux 2.5.52 で初めて登場し、 それからカーネル 2.4.22 に"
+"も移植された。 B<semtimedop>()  の glibc でのサポートはバージョン 2.3.3 で初"
+"めて登場した。"
 
 #. type: Plain text
 #: build/C/man2/semop.2:410
-msgid "The I<sem_undo> structures of a process aren't inherited by the child produced by B<fork>(2), but they are inherited across an B<execve>(2)  system call."
-msgstr "あるプロセスの I<sem_undo> 構造体は B<fork>(2)  で生成された子プロセスには継承されないが、 B<execve>(2)  システムコールの場合は継承される。"
+msgid ""
+"The I<sem_undo> structures of a process aren't inherited by the child "
+"produced by B<fork>(2), but they are inherited across an B<execve>(2)  "
+"system call."
+msgstr ""
+"あるプロセスの I<sem_undo> 構造体は B<fork>(2)  で生成された子プロセスには継"
+"承されないが、 B<execve>(2)  システムコールの場合は継承される。"
 
 #. type: Plain text
 #: build/C/man2/semop.2:416
-msgid "B<semop>()  is never automatically restarted after being interrupted by a signal handler, regardless of the setting of the B<SA_RESTART> flag when establishing a signal handler."
-msgstr "B<semop>()  はシグナルハンドラーによって中断された後に、 決して自動的に再開することはない。 たとえシグナルハンドラーの設定時に B<SA_RESTART> フラグがセットされていても再開することはない"
+msgid ""
+"B<semop>()  is never automatically restarted after being interrupted by a "
+"signal handler, regardless of the setting of the B<SA_RESTART> flag when "
+"establishing a signal handler."
+msgstr ""
+"B<semop>()  はシグナルハンドラーによって中断された後に、 決して自動的に再開す"
+"ることはない。 たとえシグナルハンドラーの設定時に B<SA_RESTART> フラグがセッ"
+"トされていても再開することはない"
 
 #. type: Plain text
 #: build/C/man2/semop.2:449
-msgid "A semaphore adjustment (I<semadj>)  value is a per-process, per-semaphore integer that is the negated sum of all operations performed on a semaphore specifying the B<SEM_UNDO> flag.  Each process has a list of I<semadj> values\\(emone value for each semaphore on which it has operated using B<SEM_UNDO>.  When a process terminates, each of its per-semaphore I<semadj> values is added to the corresponding semaphore, thus undoing the effect of that process's operations on the semaphore (but see BUGS below).  When a semaphore's value is directly set using the B<SETVAL> or B<SETALL> request to B<semctl>(2), the corresponding I<semadj> values in all processes are cleared.  The B<clone>(2)  B<CLONE_SYSVSEM> flag allows more than one process to share a I<semadj> list; see B<clone>(2)  for details."
-msgstr "セマフォの調整値 (I<semadj>) は、プロセス毎のセマフォ毎の整数で、 B<SEM_UNDO> フラグを指定して行われた、セマフォに対するすべての操作の合計値を反転したものである。 各プロセスは I<semadj> の値のリストを保持する \\(em リストのそれぞれの値は B<SEM_UNDO> を使って操作が行われた個々のセマフォに対応する。 プロセスが終了する際、 セマフォ毎の I<semadj> の各々の値が対応するセマフォに加算される。 これにより、そのプロセスがそのセマフォに対して行った操作の影響が取り消される (ただし、下記の「バグ」を参照)。 B<semctl>(2) の B<SETVAL> や B<SETALL> を使ってセマフォの値が直接設定された場合、 すべてのプロセスの対応する I<semadj> の値がクリアされる。 B<clone>(2) の B<CLONE_SYSVSEM> フラグを使うと、 複数のプロセスがひとつの I<semadj> リストを共有できる。 詳細は B<clone>(2) を参照。"
+msgid ""
+"A semaphore adjustment (I<semadj>)  value is a per-process, per-semaphore "
+"integer that is the negated sum of all operations performed on a semaphore "
+"specifying the B<SEM_UNDO> flag.  Each process has a list of I<semadj> values"
+"\\(emone value for each semaphore on which it has operated using "
+"B<SEM_UNDO>.  When a process terminates, each of its per-semaphore I<semadj> "
+"values is added to the corresponding semaphore, thus undoing the effect of "
+"that process's operations on the semaphore (but see BUGS below).  When a "
+"semaphore's value is directly set using the B<SETVAL> or B<SETALL> request "
+"to B<semctl>(2), the corresponding I<semadj> values in all processes are "
+"cleared.  The B<clone>(2)  B<CLONE_SYSVSEM> flag allows more than one "
+"process to share a I<semadj> list; see B<clone>(2)  for details."
+msgstr ""
+"セマフォの調整値 (I<semadj>) は、プロセス毎のセマフォ毎の整数で、 "
+"B<SEM_UNDO> フラグを指定して行われた、セマフォに対するすべての操作の合計値を"
+"反転したものである。 各プロセスは I<semadj> の値のリストを保持する \\(em リス"
+"トのそれぞれの値は B<SEM_UNDO> を使って操作が行われた個々のセマフォに対応す"
+"る。 プロセスが終了する際、 セマフォ毎の I<semadj> の各々の値が対応するセマ"
+"フォに加算される。 これにより、そのプロセスがそのセマフォに対して行った操作の"
+"影響が取り消される (ただし、下記の「バグ」を参照)。 B<semctl>(2) の "
+"B<SETVAL> や B<SETALL> を使ってセマフォの値が直接設定された場合、 すべてのプ"
+"ロセスの対応する I<semadj> の値がクリアされる。 B<clone>(2) の "
+"B<CLONE_SYSVSEM> フラグを使うと、 複数のプロセスがひとつの I<semadj> リストを"
+"共有できる。 詳細は B<clone>(2) を参照。"
 
 #. type: Plain text
 #: build/C/man2/semop.2:454
-msgid "The I<semval>, I<sempid>, I<semzcnt>, and I<semnct> values for a semaphore can all be retrieved using appropriate B<semctl>(2)  calls."
-msgstr "あるセマフォの I<semval>, I<sempid>, I<semzcnt>, I<semnct> の値はいずれも、適切な操作を指定して B<semctl>(2)  を呼び出すことで取得できる。"
+msgid ""
+"The I<semval>, I<sempid>, I<semzcnt>, and I<semnct> values for a semaphore "
+"can all be retrieved using appropriate B<semctl>(2)  calls."
+msgstr ""
+"あるセマフォの I<semval>, I<sempid>, I<semzcnt>, I<semnct> の値はいずれも、適"
+"切な操作を指定して B<semctl>(2)  を呼び出すことで取得できる。"
 
 #. type: Plain text
 #: build/C/man2/semop.2:458
-msgid "The following limits on semaphore set resources affect the B<semop>()  call:"
-msgstr "セマフォ集合のリソースに関する制限のうち、 B<semop>()  に影響を及ぼすものを以下に挙げる:"
+msgid ""
+"The following limits on semaphore set resources affect the B<semop>()  call:"
+msgstr ""
+"セマフォ集合のリソースに関する制限のうち、 B<semop>()  に影響を及ぼすものを以"
+"下に挙げる:"
 
 #. type: TP
 #: build/C/man2/semop.2:458
@@ -2248,23 +3233,59 @@ msgstr "B<SEMOPM>"
 #.  This /proc file is not available in Linux 2.2 and earlier -- MTK
 #. type: Plain text
 #: build/C/man2/semop.2:466
-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/sys/kernel/sem>)."
-msgstr "一回の B<semop>()  で許される操作の最大数 (32)。 (Linux では、この制限値は I</proc/sys/kernel/sem> の第3フィールドに対応し、読み出しも変更もできる)。"
+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/"
+"sys/kernel/sem>)."
+msgstr ""
+"一回の B<semop>()  で許される操作の最大数 (32)。 (Linux では、この制限値は "
+"I</proc/sys/kernel/sem> の第3フィールドに対応し、読み出しも変更もできる)。"
 
 #. type: Plain text
 #: build/C/man2/semop.2:471
-msgid "Maximum allowable value for I<semval>: implementation dependent (32767)."
+msgid ""
+"Maximum allowable value for I<semval>: implementation dependent (32767)."
 msgstr "I<semval> が取り得る最大値: 実装依存 (32767)。"
 
 #. type: Plain text
 #: build/C/man2/semop.2:478
-msgid "The implementation has no intrinsic limits for the adjust on exit maximum value (B<SEMAEM>), the system wide maximum number of undo structures (B<SEMMNU>)  and the per-process maximum number of undo entries system parameters."
-msgstr "以下の値に関しては実装依存の制限はない。 終了時の調整 (adjust on exit) の最大値 (B<SEMAEM>)、 システム全体のアンドゥ構造体の最大数 (B<SEMMNU>)、 プロセスあたりのアンドゥ構造体の最大数。"
+msgid ""
+"The implementation has no intrinsic limits for the adjust on exit maximum "
+"value (B<SEMAEM>), the system wide maximum number of undo structures "
+"(B<SEMMNU>)  and the per-process maximum number of undo entries system "
+"parameters."
+msgstr ""
+"以下の値に関しては実装依存の制限はない。 終了時の調整 (adjust on exit) の最大"
+"値 (B<SEMAEM>)、 システム全体のアンドゥ構造体の最大数 (B<SEMMNU>)、 プロセス"
+"あたりのアンドゥ構造体の最大数。"
 
 #. type: Plain text
 #: build/C/man2/semop.2:499
-msgid "When a process terminates, its set of associated I<semadj> structures is used to undo the effect of all of the semaphore operations it performed with the B<SEM_UNDO> flag.  This raises a difficulty: if one (or more) of these semaphore adjustments would result in an attempt to decrease a semaphore's value below zero, what should an implementation do? One possible approach would be to block until all the semaphore adjustments could be performed.  This is however undesirable since it could force process termination to block for arbitrarily long periods.  Another possibility is that such semaphore adjustments could be ignored altogether (somewhat analogously to failing when B<IPC_NOWAIT> is specified for a semaphore operation).  Linux adopts a third approach: decreasing the semaphore value as far as possible (i.e., to zero) and allowing process termination to proceed immediately."
-msgstr "プロセスが終了する際、プロセスに対応する I<semadj> の集合を使って、 B<SEM_UNDO> フラグ付きで実行された全てのセマフォ操作の影響を取り消す。 これによりある問題が発生する: これらのセマフォの調整を行っていると、 中にはセマフォの値が 0 未満の値にしようとする場合が出てくる。 このような場合、どのように実装するべきか? ひとつの考えられる手法は、全てのセマフォ調整が実行されるまで 停止することである。しかし、この方法ではプロセスの終了が 長時間にわたって停止されることがあるので望ましくない。 しかもどれくらい長時間になるかは分からない。 別の選択肢として、このようなセマフォ調整を完全に無視してしまう方法がある (これはセマフォ操作として B<IPC_NOWAIT> が指定するのと少し似ている)。 Linux は第三の手法を採用している: セマフォの値を出来るだけ (つまり 0 まで) 減少させて、プロセスの終了を直ちに続行できるようにしている。"
+msgid ""
+"When a process terminates, its set of associated I<semadj> structures is "
+"used to undo the effect of all of the semaphore operations it performed with "
+"the B<SEM_UNDO> flag.  This raises a difficulty: if one (or more) of these "
+"semaphore adjustments would result in an attempt to decrease a semaphore's "
+"value below zero, what should an implementation do? One possible approach "
+"would be to block until all the semaphore adjustments could be performed.  "
+"This is however undesirable since it could force process termination to "
+"block for arbitrarily long periods.  Another possibility is that such "
+"semaphore adjustments could be ignored altogether (somewhat analogously to "
+"failing when B<IPC_NOWAIT> is specified for a semaphore operation).  Linux "
+"adopts a third approach: decreasing the semaphore value as far as possible "
+"(i.e., to zero) and allowing process termination to proceed immediately."
+msgstr ""
+"プロセスが終了する際、プロセスに対応する I<semadj> の集合を使って、 "
+"B<SEM_UNDO> フラグ付きで実行された全てのセマフォ操作の影響を取り消す。 これに"
+"よりある問題が発生する: これらのセマフォの調整を行っていると、 中にはセマフォ"
+"の値が 0 未満の値にしようとする場合が出てくる。 このような場合、どのように実"
+"装するべきか? ひとつの考えられる手法は、全てのセマフォ調整が実行されるまで 停"
+"止することである。しかし、この方法ではプロセスの終了が 長時間にわたって停止さ"
+"れることがあるので望ましくない。 しかもどれくらい長時間になるかは分からな"
+"い。 別の選択肢として、このようなセマフォ調整を完全に無視してしまう方法があ"
+"る (これはセマフォ操作として B<IPC_NOWAIT> が指定するのと少し似ている)。 "
+"Linux は第三の手法を採用している: セマフォの値を出来るだけ (つまり 0 まで) 減"
+"少させて、プロセスの終了を直ちに続行できるようにしている。"
 
 #.  The bug report:
 #.  http://marc.theaimsgroup.com/?l=linux-kernel&m=110260821123863&w=2
@@ -2272,13 +3293,25 @@ msgstr "プロセスが終了する際、プロセスに対応する I<semadj> 
 #.  http://marc.theaimsgroup.com/?l=linux-kernel&m=110261701025794&w=2
 #. type: Plain text
 #: build/C/man2/semop.2:508
-msgid "In kernels 2.6.x, x E<lt>= 10, there is a bug that in some circumstances prevents a thread that is waiting for a semaphore value to become zero from being woken up when the value does actually become zero.  This bug is fixed in kernel 2.6.11."
-msgstr "カーネル 2.6.x (x E<lt>= 10) には、ある状況においてセマフォ値が 0 になるのを 待っているスレッドが、セマフォ値が実際に 0 になったときに起床 (wake up)  されない、というバグがある。このバグはカーネル 2.6.11 で修正されている。"
+msgid ""
+"In kernels 2.6.x, x E<lt>= 10, there is a bug that in some circumstances "
+"prevents a thread that is waiting for a semaphore value to become zero from "
+"being woken up when the value does actually become zero.  This bug is fixed "
+"in kernel 2.6.11."
+msgstr ""
+"カーネル 2.6.x (x E<lt>= 10) には、ある状況においてセマフォ値が 0 になるのを "
+"待っているスレッドが、セマフォ値が実際に 0 になったときに起床 (wake up)  され"
+"ない、というバグがある。このバグはカーネル 2.6.11 で修正されている。"
 
 #. type: Plain text
 #: build/C/man2/semop.2:513
-msgid "The following code segment uses B<semop>()  to atomically wait for the value of semaphore 0 to become zero, and then increment the semaphore value by one."
-msgstr "以下の部分的なコードは、 セマフォ 0 の値が 0 になるのを待ってから、 セマフォの値を 1 加算する処理を、 B<semop>()  を使ってアトミック (atomically) に行う。"
+msgid ""
+"The following code segment uses B<semop>()  to atomically wait for the value "
+"of semaphore 0 to become zero, and then increment the semaphore value by one."
+msgstr ""
+"以下の部分的なコードは、 セマフォ 0 の値が 0 になるのを待ってから、 セマフォ"
+"の値を 1 加算する処理を、 B<semop>()  を使ってアトミック (atomically) に行"
+"う。"
 
 #. type: Plain text
 #: build/C/man2/semop.2:517
@@ -2336,5 +3369,9 @@ msgstr ""
 
 #. type: Plain text
 #: build/C/man2/semop.2:542
-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)"
-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 ""
+"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)"
+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)"