diff --git a/ja_JP.eucJP/man/man2/rmdir.2 b/ja_JP.eucJP/man/man2/rmdir.2 index e523a74cc8..70e9b22313 100644 --- a/ja_JP.eucJP/man/man2/rmdir.2 +++ b/ja_JP.eucJP/man/man2/rmdir.2 @@ -1,110 +1,109 @@ .\" Copyright (c) 1983, 1991, 1993 .\" The Regents of the University of California. All rights reserved. .\" .\" Redistribution and use in source and binary forms, with or without .\" modification, are permitted provided that the following conditions .\" are met: .\" 1. Redistributions of source code must retain the above copyright .\" notice, this list of conditions and the following disclaimer. .\" 2. Redistributions in binary form must reproduce the above copyright .\" notice, this list of conditions and the following disclaimer in the .\" documentation and/or other materials provided with the distribution. .\" 3. All advertising materials mentioning features or use of this software .\" must display the following acknowledgement: .\" This product includes software developed by the University of .\" California, Berkeley and its contributors. .\" 4. Neither the name of the University nor the names of its contributors .\" may be used to endorse or promote products derived from this software .\" without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE .\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" .\" @(#)rmdir.2 8.1 (Berkeley) 6/4/93 .\" %FreeBSD: src/lib/libc/sys/rmdir.2,v 1.5.2.3 2000/12/29 14:44:53 ru Exp % .\" .Dd June 4, 1993 .Dt RMDIR 2 .Os BSD 4.2 .Sh 名称 .Nm rmdir .Nd ディレクトリファイルを削除する .Sh ライブラリ .Lb libc .Sh 書式 .Fd #include .Ft int .Fn rmdir "const char *path" .Sh 解説 .Fn rmdir は、名前が .Fa path で指定されるディレクトリファイルを削除します。 ディレクトリには .Ql .\& と .Ql \&.. 以外のエントリがあってはなりません。 .Sh 戻り値 削除が正常に完了すると 0 が返されます。そうでない場合は -1 が返され、 グローバル変数 .Va errno にエラーコードが保存されます。 .Sh エラー -次の場合を除いて、指定のファイルが削除されます。 +次の場合を除いて、指定されたファイルが削除されます。 .Bl -tag -width Er .It Bq Er ENOTDIR パスの構成要素中にディレクトリ以外のものが含まれています。 .It Bq Er ENAMETOOLONG パス名の構成要素が 255 文字を越えているか、 またはパス名全体が 1023 文字を越えています。 .It Bq Er ENOENT 指定されたディレクトリが存在しません。 .It Bq Er ELOOP パス名を変換するときに検出されたシンボリックリンクが多すぎます。 .It Bq Er ENOTEMPTY 指定されたディレクトリには .Ql .\& と .Ql ..\& 以外のファイルが含まれています。 .It Bq Er EACCES -前置パス名の構成要素について検索許可が拒否されています。 +指定されたパスには、検索が許可されていないディレクトリが含まれています。 .It Bq Er EACCES -削除するリンクが入っているディレクトリについて書込み許可が拒絶され -ました。 +削除するリンクが入っているディレクトリの書込みが許可されていません。 .It Bq Er EPERM 削除するディレクトリが入っているディレクトリは スティッキービットが設定されており、 削除したいディレクトリを含んでいるディレクトリ または削除するディレクトリの どちらかあるいは両方の所有者が実効ユーザ ID とは異なっています。 .It Bq Er EBUSY -削除しようとしているディレクトリは、ファイルシステムがマウントされている -マウントポイントです。 +削除しようとしているディレクトリは、 +ファイルシステムがマウントされているマウントポイントです。 .It Bq Er EIO -ディレクトリエントリを削除している間、または inode の割り当てを解除している -間に入出力エラーが発生しました。 +ディレクトリエントリを削除している間、 +または i ノードの割り当てを解除している間に入出力エラーが発生しました。 .It Bq Er EROFS 削除するディレクトリエントリは読取り専用ファイルシステム上にあります。 .It Bq Er EFAULT .Fa path は、プロセスに割り当てられたアドレス空間の範囲外を指しています。 .El .Sh 関連項目 .Xr mkdir 2 , .Xr unlink 2 .Sh 歴史 .Fn rmdir 関数は .Bx 4.2 で登場しました。 diff --git a/ja_JP.eucJP/man/man2/rtprio.2 b/ja_JP.eucJP/man/man2/rtprio.2 index 12f8aea6b2..4ff4859918 100644 --- a/ja_JP.eucJP/man/man2/rtprio.2 +++ b/ja_JP.eucJP/man/man2/rtprio.2 @@ -1,122 +1,123 @@ .\" Copyright (c) 1994, Henrik Vestergaard Draboel .\" All rights reserved. -.\" +.\" .\" Redistribution and use in source and binary forms, with or without .\" modification, are permitted provided that the following conditions .\" are met: .\" 1. Redistributions of source code must retain the above copyright .\" notice, this list of conditions and the following disclaimer. .\" 2. Redistributions in binary form must reproduce the above copyright .\" notice, this list of conditions and the following disclaimer in the .\" documentation and/or other materials provided with the distribution. .\" 3. All advertising materials mentioning features or use of this software .\" must display the following acknowledgement: .\" This product includes software developed by Henrik Vestergaard Draboel. .\" 4. The name of the author may not be used to endorse or promote products .\" derived from this software without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE .\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. -.\" +.\" .\" %FreeBSD: src/lib/libc/sys/rtprio.2,v 1.13.2.5 2000/12/29 14:44:53 ru Exp % .\" .Dd July 23, 1994 .Dt RTPRIO 2 .Os FreeBSD .Sh 名称 .Nm rtprio -.Nd ユーティリティやプロセスのリアルタイムまたはアイドル優先順位を取得と修正 +.Nd ユーティリティやプロセスのリアルタイム / アイドル優先順位の取得と修正 .Sh ライブラリ .Lb libc .Sh 書式 .Fd #include .Fd #include -.Ft int +.Ft int .Fn rtprio "int function" "pid_t pid" "struct rtprio *rtp" .Sh 解説 .Fn rtprio を使用して、 -プロセスのリアルタイム/アイドル優先順位を取得または変更します。 +プロセスのリアルタイム / アイドル優先順位を取得または変更します。 .Pp .Fa function で実行する操作を指定します。現在の優先順位を取得するには RTP_LOOKUP、優先順位を設定するには RTP_SET です。 .Fa pid は、対象のプロセスを指定します。現在のプロセスを指定するには 0 を使います。 .Pp .Fa *rtp は、優先順位と優先順位のタイプを指定するのに使用する struct rtprio を指す ポインタです。この構造体は次の型です。 .Bd -literal struct rtprio { u_short type; u_short prio; }; .Ed .Pp .Nm type の値は、リアルタイム優先順位については RTP_PRIO_REALTIME、 通常の優先順位については RTP_PRIO_NORMAL、 アイドル優先順位については RTP_PRIO_IDLE です。 .Nm prio によって指定する優先順位は、0 から .Dv RTP_PRIO_MAX (通常は 31) の範囲になります。0 が指定可能な最高の優先順位です。 .Pp リアルタイム優先順位とアイドル優先順位は、 fork() と exec() を通じて継承されます。 .Pp リアルタイムプロセスは、それ以上の優先順位をもつプロセス、 または割り込みによってだけ優先権を取得できます。 アイドル優先順位のプロセスは、 他のリアルタイムまたは通常の優先順位プロセスが 実行可能でないときにだけ実行されます。 -優先順位の高いリアルまたはアイドルのプロセスは -優先順位の低いリアルまたはアイドルのプロセスから優先権を取得します。 -優先順位が等しいリアルまたはアイドルの -プロセスはラウンドロビン式で実行されます。 +優先順位の高いリアル / アイドルのプロセスは +優先順位の低いリアル / アイドルのプロセスから優先権を取得します。 +優先順位が等しいリアル / アイドルの +プロセスはラウンドロビン方式で実行されます。 .Sh 戻り値 .Fn rtprio は正常に完了すると 0 を返し、エラーの場合は -1 を返します。 エラーを示すためにグローバル変数 .Va errno が設定されます。 .Sh エラー .Fn rtprio は次の場合に処理を失敗します。 .Bl -tag -width Er .It Bq Er EINVAL 指定された .Fa prio が範囲外でした。 .It Bq Er EPERM 呼び出しプロセスがリアルタイム優先順位を設定できません。 -スーパユーザだけが任意のプロセスのリアル優先順位を変更することができます。 -非スーパユーザは現在のプロセスのアイドル優先順位を変更できるだけです。 +root だけが任意のプロセスのリアル優先順位を変更することができます。 +root でないユーザは現在のプロセスのアイドル優先順位を変更できるだけです。 .It Bq Er ESRCH 指定のプロセスが見つかりませんでした。 .El .Sh 作者 .An -nosplit -元の作者は +オリジナルの作者は .An Henrik Vestergaard Draboel Aq hvd@terry.ping.dk です。 .Fx -でのこの実装は主に David Greenman -によって書き直されました。 +での実装は +.An David Greenman +によって本質的に書き直されました。 .Sh 関連項目 .Xr nice 1 , .Xr ps 1 , .Xr rtprio 1 , .Xr setpriority 2 , .Xr nice 3 , .Xr renice 8 diff --git a/ja_JP.eucJP/man/man2/sched_get_priority_max.2 b/ja_JP.eucJP/man/man2/sched_get_priority_max.2 index 649b880c5e..bf1708f27b 100644 --- a/ja_JP.eucJP/man/man2/sched_get_priority_max.2 +++ b/ja_JP.eucJP/man/man2/sched_get_priority_max.2 @@ -1,124 +1,118 @@ .\" %FreeBSD: src/lib/libc/sys/sched_get_priority_max.2,v 1.3.2.5 2000/12/12 09:55:46 ru Exp % .\" Copyright (c) 1998 HD Associates, Inc. .\" All rights reserved. .\" .\" Redistribution and use in source and binary forms, with or without .\" modification, are permitted provided that the following conditions .\" are met: .\" 1. Redistributions of source code must retain the above copyright .\" notice, this list of conditions and the following disclaimer. .\" 2. Redistributions in binary form must reproduce the above copyright .\" notice, this list of conditions and the following disclaimer in the .\" documentation and/or other materials provided with the distribution. .\" .\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE .\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" .Dd March 12, 1998 .Dt SCHED_GET_PRIORITY_MAX 2 .Os BSD 4 .Sh 名称 .Nm sched_get_priority_max , .Nm sched_get_priority_min , .Nm sched_rr_get_interval -.Nd スケジュールパラメータ制限を取得する +.Nd スケジュールパラメータの上限 / 下限を取得する .Sh ライブラリ .Lb libc .Sh 書式 .Fd #include .Ft int .Fn sched_get_priority_max "int policy" .Ft int .Fn sched_get_priority_min "int policy" .Ft int .Fn sched_rr_get_interval "pid_t pid" "struct timespec *interval" .Sh 解説 .Fn sched_get_priority_max 関数と .Fn sched_get_priority_min 関数は、 .Fa policy で指定されたスケジューリング方針について、 それぞれ該当する最大と最小を返します。 .Fn sched_rr_get_interval 関数は、 .Fa interval 引数によって参照される .Fa timespec 構造体を、 .Fa pid で指定されるプロセスについて 現在の実行時間制限 (すなわち、時間量) が含まれるように更新します。 .Fa pid が 0 の場合、呼び出し元プロセスに関する現在の実行時間制限が返されます。 .Pp .Fa policy の値は .Fa で定義されたスケジュール方針の 1 つにする必要があります。 .Bl -tag -width [SCHED_OTHER] .It Bq Er SCHED_FIFO ラウンドロビンスケジュールなしの先入先出 (FIFO) 固定優先順位スケジュール。 .It Bq Er SCHED_OTHER 標準のタイムシェアリングスケジューラ。 .It Bq Er SCHED_RR 同じ優先順位のプロセス間でのラウンドロビンスケジューリング。 .El .Sh 戻り値 -正常に完了すると、 .Fn sched_get_priority_max 関数と .Fn sched_get_priority_min -関数は、それぞれ該当する最大値または最小値を返します。 -正常に完了しない場合、どちらの関数も -1 を返し、 -エラーを示す様に +関数は、正常に完了するとそれぞれ該当する最大値または最小値を返します。 +そうでない場合、どちらの関数も -1 が返され、エラーを示すために .Fa errno -を設定します。 +が設定されます。 .Pp -正常に完了した場合、 .Fn sched_rr_get_interval -関数は 0 を返します。そうでない場合、 -値 -1 を返し、エラーを示すために +関数は、正常に完了すると 0 を返します。そうでない場合、 +値 -1 を返され、エラーを示すために .Fa errno -を設定します。 +が設定されます。 .Sh エラー 処理を失敗すると、 .Va errno は対応する値に設定されます。 .Bl -tag -width Er .It Bq Er EINVAL .Fa policy パラメータの値が定義されているスケジュール方針ではありません。 .It Bq Er ENOSYS -.Fn sched_get_priority_max -関数、 -.Fn sched_get_priority_min -関数、 -および +.Fn sched_get_priority_max , +.Fn sched_get_priority_min , .Fn sched_rr_get_interval -関数は、この実装ではサポートされていません。 +は、この実装ではサポートされていません。 .It Bq Er ESRCH .Fa pid で指定されるプロセスに対応するプロセスが見つかりません。 .El .Sh 関連項目 .Xr sched_get_scheduler 2 , .Xr sched_getparam 2 , .Xr sched_set_scheduler 2 , -.Xr sched_setparam 2 +.Xr sched_setparam 2 .Sh 規格 .Fn sched_setscheduler 関数と .Fn sched_getscheduler 関数は .St -p1003.1b-93 に準拠しています。 diff --git a/ja_JP.eucJP/man/man2/sched_setparam.2 b/ja_JP.eucJP/man/man2/sched_setparam.2 index 997f4a9b8a..fa1686075a 100644 --- a/ja_JP.eucJP/man/man2/sched_setparam.2 +++ b/ja_JP.eucJP/man/man2/sched_setparam.2 @@ -1,178 +1,176 @@ .\" %FreeBSD: src/lib/libc/sys/sched_setparam.2,v 1.4.2.4 2000/12/12 09:55:46 ru Exp % .\" Copyright (c) 1998 HD Associates, Inc. .\" All rights reserved. .\" .\" Redistribution and use in source and binary forms, with or without .\" modification, are permitted provided that the following conditions .\" are met: .\" 1. Redistributions of source code must retain the above copyright .\" notice, this list of conditions and the following disclaimer. .\" 2. Redistributions in binary form must reproduce the above copyright .\" notice, this list of conditions and the following disclaimer in the .\" documentation and/or other materials provided with the distribution. .\" .\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE .\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" .Dd March 12, 1998 .Dt SCHED_SETPARAM 2 .Os BSD 4 .Sh 名称 .Nm sched_setparam , .Nm sched_getparam -.Nd スケジュールパラメータの設定/取得 +.Nd スケジュールパラメータの設定 / 取得 .Sh ライブラリ .Lb libc .Sh 書式 .Fd #include .Ft int .Fn sched_setparam "pid_t pid" "const struct sched_param *param" .Ft int .Fn sched_getparam "pid_t pid" "struct sched_param *param" .Sh 解説 .Fn sched_setparam 関数は、 .Fa pid で指定するプロセスのスケジュールパラメータを、 .Fa param -が指す +が指す構造体 .Fa sched_param -構造体の指定する値に設定します。 +の指定する値に設定します。 構造体 .Fa param -の +のメンバ .Fa sched_priority -メンバの値は、 +の値は、 .Fa pid で指定するプロセスの現在のスケジュール方針用の 優先順位範囲内 (両端含む) の整数である必要があります。 優先順位の数値が高いほど優先順位が高いことを表します。 .Pp この実装では、 .Fa pid の値が負の場合、関数は処理に失敗します。 .Pp .Fa pid で指定するプロセスが存在し、かつ 呼び出し元プロセスにパーミッションがある場合、 プロセス ID が .Fa pid と等しいプロセスに対してスケジュールパラメータを設定します。 .Pp .Fa pid が 0 の場合、呼び出し元プロセスに対して スケジュールパラメータを設定します。 .Pp この実装では、あるプロセスが別のプロセスのスケジュールパラメータに いつ影響を及ぼせるのかという方針は、書込みスタイル操作として .Xr p1003_1b に指定されているものです。 .Pp ターゲットプロセスは、実行中にせよ実行中でないにせよ、 優先順位が等しいかまたはより高い、 他のすべての実行可能なプロセスが実行されるようにスケジュールされた後で、 実行を再開します。 .Pp .Fa pid 引数で指定するプロセスの優先順位が、 最も優先順位の低い実行中のプロセスの優先順位より高く設定されており、 しかも指定のプロセスの実行準備ができている場合、 .Fa pid 引数で指定するプロセスは 優先順位が最も低い実行中のプロセスをプリエンプトします。 同じように、 .Fn sched_setparam を呼び出しているプロセスがその優先順位を、 1 つまたは複数の空でないプロセスリストの優先順位より低く設定する場合、 優先順位が最も高いリストの先頭のプロセスも 呼び出し元プロセスをプリエンプトします。 このように、いずれのケースでも、 優先順位の高いプロセスが実行されてしまうまで、 元のプロセスが要求した優先順位変更の完了通知を受信しない可能性があります。 .Pp この実装では、 .Fa pid で指定するプロセスの現在のスケジュール方針が通常のタイムシェアリング (SCHED_OTHER; POSIX ソースでない場合は SCHED_NORMAL) であるかアイドル方針 (POSIX ソースでない場合は SCHED_IDLE) であるなら、 その動作は、実在するリアルタイム優先順位よりも低い優先順位の -SCHED_RR -でプロセスが実行されていたかのようになります。 +SCHED_RR でプロセスが実行されていたかのようになります。 .Pp .Fn sched_getparam 関数は、 .Fa pid で指定するプロセスのスケジュールパラメータを .Fa param が指す .Fa sched_param 構造体に入れて返します。 .Pp .Fa pid で指定するプロセスが存在してかつ、 呼び出し元プロセスにパーミッションがある場合、 プロセス ID が .Fa pid に等しいプロセスのスケジュールパラメータを返します。 .Pp この実装では、あるプロセスが別のプロセスのスケジュールパラメータを いつ得られるかの方針は、読取りスタイル操作として .Xr p1003_1b に詳説されているものです。 .Pp .Fa pid が 0 の場合、呼び出し元プロセスのスケジュールパラメータを返します。 この実装では、 .Fa pid が負の場合、 .Fa sched_getparam 関数は処理に失敗します。 .Sh 戻り値 関数は正常に完了すると 0 を返し、そうでない場合は、値 -1 を返し、エラーを示すために .Va errno -を設定します。 +が設定されます。 .Sh エラー 処理に失敗すると、 .Va errno を対応する値に設定します。 .Bl -tag -width Er .It Bq Er ENOSYS システムはこの機能をサポートするように構成されていません。 .It Bq Er EPERM 要求しているプロセスは、 .Xr p1003_1b で詳説されているパーミッションを持っていません。 .It Bq Er ESRCH .Fa pid で指定したプロセスに対応するプロセスが見つかりません。 .It Bq Er EINVAL .Fn sched_setparam -で、要求された -1 つ以上のスケジュールパラメータが、指定の +で、要求された 1 つ以上のスケジュールパラメータが、指定の .Fa pid のスケジュール方針で定義された範囲の外側にあります。 .El .Sh 関連項目 .Xr sched_get_priority_max 2 , .Xr sched_get_priority_min 2 , .Xr sched_getscheduler 2 , .Xr sched_rr_get_interval 2 , .Xr sched_setscheduler 2 , .Xr sched_yield 2 .Sh 規格 .Fn sched_setparam 関数と .Fn sched_getparam 関数は .St -p1003.1b-93 -に適合しています。 +に準拠しています。 diff --git a/ja_JP.eucJP/man/man2/sched_setscheduler.2 b/ja_JP.eucJP/man/man2/sched_setscheduler.2 index b6ec1906d8..77758a449b 100644 --- a/ja_JP.eucJP/man/man2/sched_setscheduler.2 +++ b/ja_JP.eucJP/man/man2/sched_setscheduler.2 @@ -1,169 +1,167 @@ .\" %FreeBSD: src/lib/libc/sys/sched_setscheduler.2,v 1.3.2.5 2000/12/12 09:55:46 ru Exp % .\" Copyright (c) 1998 HD Associates, Inc. .\" All rights reserved. .\" .\" Redistribution and use in source and binary forms, with or without .\" modification, are permitted provided that the following conditions .\" are met: .\" 1. Redistributions of source code must retain the above copyright .\" notice, this list of conditions and the following disclaimer. .\" 2. Redistributions in binary form must reproduce the above copyright .\" notice, this list of conditions and the following disclaimer in the .\" documentation and/or other materials provided with the distribution. .\" .\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE .\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" .Dd March 12, 1998 .Dt SCHED_SETSCHEDULER 2 .Os BSD 4 .Sh 名称 .Nm sched_setscheduler , .Nm sched_getscheduler -.Nd スケジュール方針とスケジューラパラメータの設定/取得 +.Nd スケジュール方針とスケジューラパラメータの設定 / 取得 .Sh ライブラリ .Lb libc .Sh 書式 .Fd #include .Ft int .Fn sched_setscheduler "pid_t pid" "int policy" "const struct sched_param *param" .Ft int .Fn sched_getscheduler "pid_t pid" .Sh 解説 .Fn sched_setscheduler 関数は、 .Fa pid -で指定したプロセスのスケジュール方針とスケジュールパラメータ -を、それぞれ、 +で指定したプロセスのスケジュール方針とスケジュールパラメータを、それぞれ、 .Fa policy および .Fa param が指す .Fa sched_param 構造体の指定するパラメータに設定します。 .Fa param -構造体の +構造体のメンバ .Fa sched_priority -メンバの値は、 +の値は、 .Fa policy で指定するスケジュール方針用の 優先度範囲内 (両端含む) の整数である必要があります。 .Pp この実装では、 .Fa pid の値が負である場合、関数は処理に失敗します。 .Pp .Fa pid で指定するプロセスが存在し、かつ呼び出し元プロセスにパーミッションがある場合、 プロセス ID が .Fa pid と等しいプロセスに対して スケジュール方針とスケジュールパラメータを設定します。 .Pp .Fa pid が 0 の場合、呼び出し元プロセスに対して スケジュール方針とスケジュールパラメータを設定します。 .Pp この実装では、あるプロセスが別のプロセスのスケジュールパラメータに いつ影響を及ぼせるのかという方針は、書き込みスタイル操作として .Xr p1003_1b に指定されているものです。 .Pp スケジュール方針は .Fa 内にあります。 .Bl -tag -width [SCHED_OTHER] .It Bq Er SCHED_FIFO ラウンドロビンスケジュールのない、 -先入先出優先順位固定スケジュール。 +先入先出 (FIFO) 優先順位固定スケジュール。 .It Bq Er SCHED_OTHER 標準のタイムシェアリングスケジューラ。 .It Bq Er SCHED_RR 同じ優先順位のプロセス間でのラウンドロビンスケジュール。 .El .Pp .Fa sched_param 構造体は .Fa に定義されています。 .Pp .Bd -literal -offset indent struct sched_param { int sched_priority; /* スケジュール優先順位 */ }; .Ed .Pp .Fn sched_getscheduler 関数は、 .Fa pid で指定するプロセスのスケジュール方針を返します。 .Pp .Fa pid で指定するプロセスが存在してかつ、 呼び出し元プロセスにパーミッションがある場合、 プロセス ID が .Fa pid に等しいプロセスのスケジュールパラメータを返します。 .Pp この実装では、あるプロセスが別のプロセスのスケジュールパラメータを いつ得られるかの方針は、読取りスタイル操作として .Xr p1003_1b に詳説されているものです。 .Pp .Fa pid が 0 の場合、呼び出し元プロセスのスケジュールパラメータを返します。 この実装では、 .Fa pid が負の場合、 .Fa sched_getscheduler 関数は処理に失敗します。 .Sh 戻り値 -処理が正常に完了すると関数は 0 を返し、そうでない場合は、値 -1 を返し、 +処理が正常に完了すると関数は 0 を返し、そうでない場合は値 -1 を返し、 エラーを示すために .Va errno -を設定します。 +が設定されます。 .Sh エラー 処理に失敗すると、 .Va errno を対応する値に設定します。 .Bl -tag -width Er .It Bq Er ENOSYS システムは、この機能をサポートするように構成されていません。 .It Bq Er EPERM 要求しているプロセスは .Xr p1003_1b で詳説されているパーミッションを持っていません。 .It Bq Er ESRCH .Fa pid で指定したプロセスに対応するプロセスが見つかりません。 .It Bq Er EINVAL .Fa policy パラメータの値が無効であるか、または .Fa param -に含まれている -1 つまたは複数のパラメータが、 +に含まれている 1 つまたは複数のパラメータが、 指定されたスケジュール方針で有効な範囲の外にあります。 .El .Sh 関連項目 .Xr sched_get_priority_max 2 , .Xr sched_get_priority_min 2 , .Xr sched_getparam 2 , .Xr sched_rr_get_interval 2 , .Xr sched_setparam 2 , .Xr sched_yield 2 .Sh 規格 .Fn sched_setscheduler 関数と .Fn sched_getscheduler 関数は .St -p1003.1b-93 -に適合しています。 +に準拠しています。 diff --git a/ja_JP.eucJP/man/man2/sched_yield.2 b/ja_JP.eucJP/man/man2/sched_yield.2 index 99eee32333..f0a24e6083 100644 --- a/ja_JP.eucJP/man/man2/sched_yield.2 +++ b/ja_JP.eucJP/man/man2/sched_yield.2 @@ -1,61 +1,61 @@ .\" %FreeBSD: src/lib/libc/sys/sched_yield.2,v 1.2.2.5 2000/12/29 14:44:53 ru Exp % .\" Copyright (c) 1998 HD Associates, Inc. .\" All rights reserved. .\" .\" Redistribution and use in source and binary forms, with or without .\" modification, are permitted provided that the following conditions .\" are met: .\" 1. Redistributions of source code must retain the above copyright .\" notice, this list of conditions and the following disclaimer. .\" 2. Redistributions in binary form must reproduce the above copyright .\" notice, this list of conditions and the following disclaimer in the .\" documentation and/or other materials provided with the distribution. .\" .\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE .\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" .Dd March 12, 1998 .Dt SCHED_YIELD 2 .Os BSD 4 .Sh 名称 .Nm sched_yield .Nd プロセッサを明け渡す .Sh ライブラリ .Lb libc .Sh 書式 .Fd #include .Ft int .Fn sched_yield void .Sh 解説 .Fn sched_yield 関数は、実行中のプロセスが再びプロセスリストの先頭になるまで、 プロセッサを放棄させます。 -引数は指定しません。 +引数はありません。 .Sh 戻り値 .Fn sched_yield 関数は、正常に完了すると 0 を返します。そうでない場合は値 -1 を返して、 エラーを示すために .Va errno -を設定します。 +が設定されます。 .Sh エラー 処理に失敗すると、 .Va errno -に対応する値を設定します。 +に対応する値が設定されます。 .Bl -tag -width Er .It Bq Er ENOSYS システムがこの機能をサポートするように構成されていません。 .El .Sh 規格 .Fn sched_yield 関数は .St -p1003.1b-93 に準拠しています。 diff --git a/ja_JP.eucJP/man/man2/select.2 b/ja_JP.eucJP/man/man2/select.2 index 89b3afedf6..1a334d5ca1 100644 --- a/ja_JP.eucJP/man/man2/select.2 +++ b/ja_JP.eucJP/man/man2/select.2 @@ -1,203 +1,194 @@ .\" Copyright (c) 1983, 1991, 1993 .\" The Regents of the University of California. All rights reserved. .\" .\" Redistribution and use in source and binary forms, with or without .\" modification, are permitted provided that the following conditions .\" are met: .\" 1. Redistributions of source code must retain the above copyright .\" notice, this list of conditions and the following disclaimer. .\" 2. Redistributions in binary form must reproduce the above copyright .\" notice, this list of conditions and the following disclaimer in the .\" documentation and/or other materials provided with the distribution. .\" 3. All advertising materials mentioning features or use of this software .\" must display the following acknowledgement: .\" This product includes software developed by the University of .\" California, Berkeley and its contributors. .\" 4. Neither the name of the University nor the names of its contributors .\" may be used to endorse or promote products derived from this software .\" without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE .\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" .\" @(#)select.2 8.2 (Berkeley) 3/25/94 .\" %FreeBSD: src/lib/libc/sys/select.2,v 1.14.2.1 2000/04/22 17:07:04 phantom Exp % .\" .Dd March 25, 1994 .Dt SELECT 2 .Os BSD 4.2 .Sh 名称 .Nm select .Nd 同期的な入出力の多重化 .Sh ライブラリ .Lb libc .Sh 書式 .Fd #include .Fd #include .Fd #include .Ft int .Fn select "int nfds" "fd_set *readfds" "fd_set *writefds" "fd_set *exceptfds" "struct timeval *timeout" .Fn FD_SET fd &fdset .Fn FD_CLR fd &fdset .Fn FD_ISSET fd &fdset .Fn FD_ZERO &fdset .Sh 解説 .Fn select は、 .Fa readfds , .Fa writefds および .Fa exceptfds でアドレスを渡された入出力記述子集合を調べ、 それらの記述子のいくつかがそれぞれ、読取り準備完了であるか、 書込み準備完了であるか、または保留されている例外条件があるかを調べます。 -検出可能な唯一の例外条件は、ソケット上に受信した帯外のデータです。 +検出可能な唯一の例外条件は、ソケット上に受信した帯域外のデータです。 最初の .Fa nfds 個の記述子が各集合内でチェックされます。すなわち、記述子集合中の  0 〜 .Fa nfds Ns No -1 の記述子が調べられます。戻り時に .Fn select は指定の記述子集合を、要求された操作の準備ができている記述子で 構成される部分集合で置き換えます。 .Fn select は、すべての集合の中で準備ができた記述子の総数を返します。 .Pp 記述子の集合は、整数配列内のビットフィールドとして保存されます。 このような記述子集合を操作するために次のマクロが用意されています。 .Fn FD_ZERO &fdset は記述子集合 .Fa fdset を空集合で初期化します。 .Fn FD_SET fd &fdset は特定の記述子 .Fa fd を .Fa fdset に含めます。 .Fn FD_CLR fd &fdset は .Fa fd を .Fa fdset から削除します。 .Fn FD_ISSET fd &fdset は .Fa fd が .Fa fdset のメンバである場合は非 0 の値を、そうでない場合は 0 を返します。 これらのマクロの動作は、記述子の値が 0 未満であるか、または .Dv FD_SETSIZE 以上である場合は未定義です。 .Dv FD_SETSIZE は通常、少なくとも、システムがサポートする記述子の最大数に等しくなります。 .Pp .Fa timeout -が、非 nil -のポインタである場合、それはセレクションの完了を +が、ヌルポインタでない場合、それはセレクションの完了を 待つ最大インターバルを指定します。 -システムの活動性が、このインターバルを不定時間延長する -ことがあります。 +システムの活動性が、このインターバルを不定時間延長することがあります。 .Pp .Fa timeout -が -nil -ポインタの場合、 +がヌルポインタの場合、 .Fn select -は無限にブロックします。 +は無期限にブロックします。 .Pp ポーリングのためには、 .Fa timeout -引数が非 -nil -で、値が 0 の  -timeval -構造体を指しているべきです。 +引数がヌルでなく、値が 0 の timeval 構造体を指しているべきです。 .Pp .Fa readfds , .Fa writefds および .Fa exceptfds のどれについても、いずれの記述子も興味がない場合は -nil ポインタとして指定できます。 +ヌルポインタを指定できます。 .Sh 戻り値 .Fn select は記述子集合に含まれている準備のできた記述子の数を返し、 エラーが起きた場合は -1 を返します。 タイムリミットが来ると、 .Fn select -は -0 を返します。 +は 0 を返します。 割り込みによるものも含めて .Fn select がエラーで戻る場合は、記述子集合は変更されません。 .Sh エラー .Fn select から戻るエラーは次のことを示します。 .Bl -tag -width Er .It Bq Er EBADF 記述子集合のどれかが無効な記述子を指定していました。 .It Bq Er EINTR タイムリミットが切れる前あるいは選択したイベントのいずれかが起きる前に、 シグナルが配送されました。 .It Bq Er EINVAL 指定のタイムリミットは無効です。 どれかが負であるか、または大きすぎます。 .It Bq Er EINVAL .Fa nfds が無効でした。 .El .Sh 関連項目 .Xr accept 2 , .Xr connect 2 , .Xr getdtablesize 2 , .Xr gettimeofday 2 , .Xr read 2 , .Xr recv 2 , .Xr send 2 , .Xr write 2 , .Xr clocks 7 .Sh 注釈 .Dv FD_SETSIZE のデフォルトのサイズは現時点では  1024 です。 多数のオープンファイルを使用する可能性があるプログラムで .Fn select を実行するために、 .Aq Pa sys/types.h を取り込むヘッダを含める前にプログラムで .Dv FD_SETSIZE を定義することで、このサイズを増加できます。 .Pp .Fa nfds がオープンファイルの数より大きい場合、 .Fn select が未使用のファイル記述子を調査することは保証されていません。 歴史的な理由で、 .Fn select は最初の 256 個の記述子を必ず調査します。 .Sh バグ .Fn select は、時間値を適切に修正することで、 指定したタイムアウトからの残り時間を返す必要がおそらくあります。 これはシステムの将来のバージョンで実装される可能性があります。 このように、タイムアウトの値が .Fn select 呼び出しによって修正されないと想定するのは賢明ではありません。 .Sh 歴史 .Fn select 関数は .Bx 4.2 で登場しました。 diff --git a/ja_JP.eucJP/man/man2/semctl.2 b/ja_JP.eucJP/man/man2/semctl.2 index 69ecf5a546..55f5f6ff1a 100644 --- a/ja_JP.eucJP/man/man2/semctl.2 +++ b/ja_JP.eucJP/man/man2/semctl.2 @@ -1,187 +1,186 @@ .\" .\" Copyright (c) 1995 David Hovemeyer .\" .\" All rights reserved. .\" .\" Redistribution and use in source and binary forms, with or without .\" modification, are permitted provided that the following conditions .\" are met: .\" 1. Redistributions of source code must retain the above copyright .\" notice, this list of conditions and the following disclaimer. .\" 2. Redistributions in binary form must reproduce the above copyright .\" notice, this list of conditions and the following disclaimer in the .\" documentation and/or other materials provided with the distribution. .\" .\" THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``AS IS'' AND ANY EXPRESS OR .\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES .\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. .\" IN NO EVENT SHALL THE DEVELOPERS BE LIABLE FOR ANY DIRECT, INDIRECT, .\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT .\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, .\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY .\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT .\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF .\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. .\" .\" %FreeBSD: src/lib/libc/sys/semctl.2,v 1.9.2.2 2000/12/29 14:44:53 ru Exp % .\" .Dd September 12, 1995 .Dt SEMCTL 2 .Os FreeBSD .Sh 名称 .Nm semctl .Nd セマフォ集合に対する操作を制御する .Sh ライブラリ .Lb libc .Sh 書式 .Fd #include .Fd #include .Fd #include .Ft int .Fn semctl "int semid" "int semnum" "int cmd" ... .Sh 解説 .Fn semctl は、 .Fa cmd が示す操作を .Fa semid で示されるセマフォ集合に対して実行します。 ある値の .Fa cmd に対しては、4 番目の引数 .Fa "union semun arg" が必要です。 .Fa arg パラメータを使用するコマンドの場合、 .Fa "union semun" は次のように定義されます。 .Bd -literal .\" .\" From : .\" union semun { int val; /* SETVAL 用の値 */ struct semid_ds *buf; /* IPC_STAT および IPC_SET 用のバッファ */ u_short *array; /* GETALL および SETALL 用の配列 */ }; .Ed .Pp コマンドは次のように実行されます。 .\" .\" This section based on Stevens, _Advanced Programming in the UNIX .\" Environment_. .\" .Bl -tag -width IPC_RMIDXXX .It Dv IPC_STAT セマフォ集合の .Fa "struct semid_ds" を取得し、 .Fa arg.buf が指すメモリに保存します。 .It Dv IPC_SET セマフォ集合の .Fa "struct semid_ds" のメンバ .Fa sem_perm.uid , .Fa sem_perm.gid および .Fa sem_perm.mode を、 .Fa arg.buf が指す構造体のメンバと一致するように変更します。 呼び出し元プロセスの実効ユーザ ID は、 .Fa sem_perm.uid または .Fa sem_perm.cuid のどちらかと一致する必要があるか、 またはスーパユーザ特権を持っている必要があります。 .It IPC_RMID セマフォ集合をただちにシステムから削除します。 呼び出し元プロセスの実効ユーザ ID がセマフォ集合の .Fa sem_perm.uid または .Fa sem_perm.cuid と等しいか、またはプロセスがスーパユーザ特権を持っている必要があります。 .It Dv GETVAL セマフォ番号 .Fa semnum の値を返します。 .It Dv SETVAL セマフォ番号 .Fa semnum の値を .Fa arg.val に設定します。 .It Dv GETPID セマフォ番号 .Fa semnum について操作を実行した最後のプロセスの プロセス ID を返します。 .It Dv GETNCNT セマフォ番号 .Fa semnum の値が現在の値より大きくなるのを待っているプロセスの数を返します。 .It Dv GETZCNT セマフォ番号 .Fa semnum の値が 0 になるのを待っているプロセスの数を返します。 .It Dv GETALL 集合内のすべてのセマフォの値を .Fa arg.array が指す配列内へ取得します。 .It Dv SETALL 集合内のすべてのセマフォの値を .Fa arg.array が指す配列内の値に設定します。 .El .Pp .Fa "struct semid_ds" は次のように定義されます。 .Bd -literal .\" .\" Taken straight from . .\" struct semid_ds { struct ipc_perm sem_perm; /* 操作パーミッション構造体 */ struct sem *sem_base; /* 集合内の最初のセマフォへのポインタ */ u_short sem_nsems; /* 集合内のセマフォの数 */ time_t sem_otime; /* 最後の操作時刻 */ long sem_pad1; /* SVABI/386 によるとこれが必要 */ - time_t sem_ctime; /* 最後の変更時刻 */ - /* 00:00:00 GMT, Jan. 1, 1970 */ - /* からの秒単位の経過時間 */ + time_t sem_ctime; /* 最後の変更時刻 + * 1970/01/01 00:00:00 GMT + * からの秒単位の経過時間 + */ long sem_pad2; /* SVABI/386 によるとこれが必要 */ long sem_pad3[4]; /* SVABI/386 によるとこれが必要 */ }; .Ed .Sh 戻り値 処理が正常に完了すると、 .Fa cmd が GETVAL, GETNCNT または GETZCNT のどれかであるとき、 .Fn semctl -は対応する値を返します。そうでない場合は -0 を返します。 -処理に失敗した場合は、 --1 を返し、エラーを示すために +は対応する値を返します。そうでない場合は 0 を返します。 +処理に失敗した場合は、-1 を返し、エラーを示すために .Va errno を設定します。 .Sh エラー .Fn semctl は次の場合に処理に失敗します。 .Bl -tag -width Er .It Bq Er EINVAL .Fa semid に対応するセマフォ集合がありません。 .It Bq Er EINVAL .Fa semnum が、指定のセマフォ集合に対して有効なセマフォの範囲内にありません。 .It Bq Er EPERM 呼び出し元プロセスの実効ユーザ ID が、 セマフォ集合の所有者または作成者のユーザ ID と一致しません。 .It Bq Er EACCES 操作とセマフォ集合のモードの間に不一致があったために パーミッションが拒否されました。 .El .Sh 関連項目 .Xr semget 2 , .Xr semop 2 diff --git a/ja_JP.eucJP/man/man2/semop.2 b/ja_JP.eucJP/man/man2/semop.2 index 24a91c27e5..98ace863e7 100644 --- a/ja_JP.eucJP/man/man2/semop.2 +++ b/ja_JP.eucJP/man/man2/semop.2 @@ -1,216 +1,216 @@ .\" .\" Copyright (c) 1995 David Hovemeyer .\" .\" All rights reserved. .\" .\" Redistribution and use in source and binary forms, with or without .\" modification, are permitted provided that the following conditions .\" are met: .\" 1. Redistributions of source code must retain the above copyright .\" notice, this list of conditions and the following disclaimer. .\" 2. Redistributions in binary form must reproduce the above copyright .\" notice, this list of conditions and the following disclaimer in the .\" documentation and/or other materials provided with the distribution. .\" .\" THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``AS IS'' AND ANY EXPRESS OR .\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES .\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. .\" IN NO EVENT SHALL THE DEVELOPERS BE LIABLE FOR ANY DIRECT, INDIRECT, .\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT .\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, .\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY .\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT .\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF .\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. .\" .\" %FreeBSD: src/lib/libc/sys/semop.2,v 1.7.2.3 2000/12/29 14:44:53 ru Exp % .\" .\" WORD: atomic 不可分な [POSIX] .\" WORD: adjust on exit 終了時調整 .Dd September 22, 1995 .Dt SEMOP 2 .Os FreeBSD .Sh 名称 .Nm semop .Nd セマフォ集合に対する不可分な操作の配列 .Sh ライブラリ .Lb libc .Sh 書式 .Fd #include .Fd #include .Fd #include .Ft int .Fn semop "int semid" "struct sembuf array[]" "unsigned nops" .Sh 解説 .Fn semop は、 .Fa semid が示すセマフォ集合に対して、 .Fa array が示す操作の配列を不可分に実行します。 .Fa array の長さは .Fa nops で示します。 各操作は .Fa "struct sembuf" 内にエンコードされており、 .Fa "struct sembuf" は次のように定義されます。 .Bd -literal .\" .\" From .\" struct sembuf { u_short sem_num; /* セマフォ番号 */ short sem_op; /* セマフォ操作 */ short sem_flg; /* 操作フラグ */ }; .Ed .Pp .Fa array 内の各要素に関し、 .Fa sem_op と .Fa sem_flg は、集合内のセマフォ番号 .Fa sem_num に対して実行される操作を決定します。 指定した操作の動作を変更するために、 SEM_UNDO と IPC_NOWAIT の値の論理和 ( .Em OR ) を取って .Fa sem_flg メンバに入れることが可能です。 .Pp 実行される操作は次のように .Fa sem_op の値に依存します。 .\" .\" This section is based on the description of semop() in .\" Stevens, _Advanced Programming in the UNIX Environment_. .\" .Bl -bullet .It .Fa sem_op が正の場合、セマフォの値を .Fa sem_op の値だけ増加させます。 SEM_UNDO を指定した場合、セマフォの終了時調整値を .Fa sem_op の値だけ減少させます。 .Fa sem_op についての正の値は、一般に、 セマフォに結び付けられた資源をリリースするプロセスに対応します。 .It .Fa sem_op が負の場合の動作は、セマフォの現在の値に依存します。 .Bl -bullet .It セマフォの現在の値が .Fa sem_op の絶対値と等しいかそれより大きい場合、セマフォの値を .Fa sem_op の絶対値だけ減少させます。 SEM_UNDO が指定されている場合、セマフォの終了時調整値を .Fa sem_op の絶対値だけ増加させます。 .It セマフォの現在値が .Fa sem_op の値未満の場合、次のどれかが発生します。 .\" XXX a *second* sublist? .Bl -bullet .It IPC_NOWAIT を指定した場合、 .Fn semop は戻り値 .Er EAGAIN でただちに復帰します。 .It .Fn semctl の IPC_RMID オプションを用いて、他のプロセスがセマフォを削除してしまった場合、 .Fn semop は戻り値 .Er EINVAL でただちに復帰します。 .It それ以外の場合、セマフォの値が .Fa sem_op の絶対値に等しいかそれより大きくなるまで、 呼び出し元プロセスは休眠状態になります。 この条件が真になるとき、セマフォの値を .Fa sem_op の絶対値だけ減少させ、セマフォの終了時調整値を .Fa sem_op の絶対値だけ増加させます。 .El .Pp .Fa sem_op が負の値であるときは、一般に、 資源が利用可能になるのをプロセスが待っていることに なります。 .El .Pp .It .Fa sem_op が 0 の場合、プロセスはセマフォの値が 0 になるのを待ちます。 既に 0 の場合は、 .Fn semop の呼び出しからただちに復帰します。 そうでない場合、呼び出し元プロセスは、セマフォの値が 0 になるまで休眠状態になります。 .El .Pp プロセスが使用しているセマフォごとに、カーネルは、 先に述べたように「終了時調整」値を保持します。 自発的であれ非自発的にであれ、プロセスが終了するときには、 各セマフォに対する終了時調整値がセマフォの値に追加されます。 これを、プロセスが予期せず終了してしまう場合に 資源を必ず解放することを保証するのに使用可能です。 .Sh 戻り値 正常に完了すると、 .Fn semop は 0 を返します。そうでない場合、 -1 を返し、エラーを示すために .Va errno -を設定します。 +が設定されます。 .Sh エラー .Fn semop は次の場合に失敗します。 .Bl -tag -width Er .It Bq Er EINVAL .Fa semid に対応するセマフォ集合がありません。 .It Bq Er EACCES 操作とセマフォ集合のモードの間で不一致があるため、 パーミッションが拒否されました。 .It Bq Er EAGAIN セマフォの値が .Fa sem_op 未満で、かつ IPC_NOWAIT が指定されました。 .It Bq Er E2BIG あまりに多くの操作が指定されました。 .It Bq Er EFBIG .\" .\" I'd have thought this would be EINVAL, but the source says .\" EFBIG. .\" .Fa sem_num が集合に対する有効なセマフォの範囲内にありませんでした。 .El .Sh 関連項目 .Xr semctl 2 , .Xr semget 2 diff --git a/ja_JP.eucJP/man/man2/send.2 b/ja_JP.eucJP/man/man2/send.2 index ffa00161a8..7cb4386334 100644 --- a/ja_JP.eucJP/man/man2/send.2 +++ b/ja_JP.eucJP/man/man2/send.2 @@ -1,204 +1,199 @@ .\" Copyright (c) 1983, 1991, 1993 .\" The Regents of the University of California. All rights reserved. .\" .\" Redistribution and use in source and binary forms, with or without .\" modification, are permitted provided that the following conditions .\" are met: .\" 1. Redistributions of source code must retain the above copyright .\" notice, this list of conditions and the following disclaimer. .\" 2. Redistributions in binary form must reproduce the above copyright .\" notice, this list of conditions and the following disclaimer in the .\" documentation and/or other materials provided with the distribution. .\" 3. All advertising materials mentioning features or use of this software .\" must display the following acknowledgement: .\" This product includes software developed by the University of .\" California, Berkeley and its contributors. .\" 4. Neither the name of the University nor the names of its contributors .\" may be used to endorse or promote products derived from this software .\" without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE .\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" .\" From: @(#)send.2 8.2 (Berkeley) 2/21/94 .\" %FreeBSD: src/lib/libc/sys/send.2,v 1.10.2.1 2000/04/22 17:07:05 phantom Exp % .\" .Dd February 15, 1995 .Dt SEND 2 .Os BSD 4.2 .Sh 名称 .Nm send , .Nm sendto , .Nm sendmsg .Nd ソケットからメッセージを送信する .Sh ライブラリ .Lb libc .Sh 書式 .Fd #include .Fd #include .Ft ssize_t .Fn send "int s" "const void *msg" "size_t len" "int flags" .Ft ssize_t .Fn sendto "int s" "const void *msg" "size_t len" "int flags" "const struct sockaddr *to" "socklen_t tolen" .Ft ssize_t .Fn sendmsg "int s" "const struct msghdr *msg" "int flags" .Sh 解説 .Fn send , .Fn sendto および .Fn sendmsg は、メッセージを別のソケットに送信するのに使用されます。 .Fn send は、ソケットが .Em 接続された 状態にあるときにだけ使用できるのに対し、 .Fn sendto と .Fn sendmsg はいつでも使用できます。 .Pp ターゲットのアドレスを .Fa to で与え、 .Fa tolen でそのサイズを指定します。 メッセージの長さは .Fa len で指定します。 メッセージが長すぎて基層となるプロトコルを不可分に通過できない場合、 エラー .Er EMSGSIZE を返し、メッセージを送信しません。 .Pp .Fn send では、配送できないことはまったく示されません。 戻り値 -1 はローカルで検出されたエラーを示します。 .Pp 送信するメッセージを保持するスペースがソケットに無い場合 .Fn send は通常ブロックします。 ただし、ソケットが非ブロッキング入出力モードに設定されている場合は別です。 .Xr select 2 -呼出しを使用して、さらに多くのデータをいつ送信できるか判定できます。 +呼び出しを使用して、さらに多くのデータをいつ送信できるか判定できます。 .Pp .Fa flags パラメータには次に示されるもののうち 1 つまたは複数を含めることが可能です。 .Bd -literal #define MSG_OOB 0x1 /* 帯域外データを処理する */ #define MSG_PEEK 0x2 /* 着信メッセージを覗く */ -#define MSG_DONTROUTE 0x4 /* ルーティングをバイパスし、インタフェースを直接使用する */ +#define MSG_DONTROUTE 0x4 /* ルーティングをバイパスし、 + インタフェースを直接使用する */ #define MSG_EOR 0x8 /* このデータでレコードを終了する */ #define MSG_EOF 0x100 /* このデータでトランザクションを終了する */ .Ed .Pp フラグ .Dv MSG_OOB は、この概念をサポートするソケット (たとえば、 .Dv SOCK_STREAM ) 上の .Dq 帯域外 データを送信するのに使用されます。 基層となっているプロトコルも .Dq 帯域外 データをサポートする必要があります。 .Dv MSG_EOR は、この概念をサポートするプロトコル用のレコード マークを示すのに使用されます。 .Dv MSG_EOF は、ソケットの送信側のシャットダウンを要求し、 指定データの終了時に、適切な指示の送信を要求します。 このフラグは、 .Dv PF_INET プロトコルファミリの .Dv SOCK_STREAM ソケットについてだけ実装され、トランザクション -.Tn TCP -( +.Tn TCP ( .Xr ttcp 4 -を参照 -) -を実装するのに使用されます。 +を参照) を実装するのに使用されます。 .Dv MSG_DONTROUTE は通常、診断プログラムまたは経路設定プログラムで使用されます。 .Pp .Fa msghdr 構造体の詳細については、 .Xr recv 2 を参照してください。 .Sh 戻り値 -この呼出しは送信された文字数を返し、エラーが起きた場合は +この呼び出しは送信された文字数を返し、エラーが起きた場合は -1 を返します。 .Sh エラー .Fn send , .Fn sendto および .Fn sendmsg は次の場合に実行に失敗します。 .Bl -tag -width Er .It Bq Er EBADF 無効な記述子が指定されました。 .It Bq Er EACCES 宛先アドレスはブロードキャストアドレスであり、 .Dv SO_BROADCAST がソケット上に設定されていません。 .It Bq Er ENOTSOCK 引数 .Fa s がソケットではありません。 .It Bq Er EFAULT パラメータについて無効なユーザ空間アドレスが指定されました。 .It Bq Er EMSGSIZE ソケットはメッセージが不可分に送信されることを要求していますが、 送信されるメッセージのサイズでは不可能です。 .It Bq Er EAGAIN ソケットは非ブロッキングとマークされており、 -要求された操作はブロックするでしょう。 +要求された操作はブロックされるでしょう。 .It Bq Er ENOBUFS -システムは内部バッファを割当てることができませんでした。 +システムは内部バッファを割り当てることができませんでした。 バッファが利用可能になったときに操作が成功する可能性があります。 .It Bq Er ENOBUFS ネットワークインタフェース用の出力キューが満杯でした。 これは一般に、インタフェースが送信を停止したものの、 それが一時的な輻輳によって起こったことを示します。 .It Bq Er EHOSTUNREACH リモートホストに到達できませんでした。 .El .Sh バグ .Fn sendmsg はデータが転送されてしまうまで必ずしもブロックしないので、 オープンされているファイル記述子を .Dv AF_UNIX -ドメインソケット -( +ドメインソケット ( .Xr recv 2 -を参照 -) -経由で送信し、それから実際に送信される前に +を参照) 経由で送信し、それから実際に送信される前に .Fn close する可能性があります。 その結果、受信側は閉じたファイル記述子を得ることになります。 これを防止する確認メカニズムの実装は アプリケーションで行う必要があります。 .Sh 関連項目 .Xr fcntl 2 , .Xr getsockopt 2 , .Xr recv 2 , .Xr select 2 , .Xr socket 2 , .Xr write 2 .Sh 歴史 .Fn send 関数呼び出しは .Bx 4.2 で登場しました。 diff --git a/ja_JP.eucJP/man/man2/sendfile.2 b/ja_JP.eucJP/man/man2/sendfile.2 index f13c150b0e..f835cfe3db 100644 --- a/ja_JP.eucJP/man/man2/sendfile.2 +++ b/ja_JP.eucJP/man/man2/sendfile.2 @@ -1,192 +1,192 @@ .\" Copyright (c) 1998, David Greenman .\" All rights reserved. .\" .\" Redistribution and use in source and binary forms, with or without .\" modification, are permitted provided that the following conditions .\" are met: .\" 1. Redistributions of source code must retain the above copyright .\" notice unmodified, this list of conditions, and the following .\" disclaimer. .\" 2. Redistributions in binary form must reproduce the above copyright .\" notice, this list of conditions and the following disclaimer in the .\" documentation and/or other materials provided with the distribution. .\" .\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE .\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" .\" %FreeBSD: src/lib/libc/sys/sendfile.2,v 1.6.2.3 2000/12/08 13:49:32 ru Exp % .\" .Dd November 5, 1998 .Dt SENDFILE 2 .Os .Sh 名称 .Nm sendfile .Nd ファイルをソケットに送信 .Sh ライブラリ .Lb libc .Sh 書式 .Fd #include .Fd #include .Fd #include .Ft int .Fn sendfile "int fd" "int s" "off_t offset" "size_t nbytes" "struct sf_hdtr *hdtr" "off_t *sbytes" "int flags" .Sh 解説 .Fn sendfile は、記述子 .Fa fd によって指定された通常のファイルを、記述子 .Fa s によって指定されたストリームソケットから送信します。 .Pp .Fa offset 引数はファイルのどこから開始すべきかを指定します。 .Fa nbytes 引数は、ファイルの何バイトを送信する必要があるかを指定します。 0 は、 -ファイルの終わりに到達するまで送信という特殊な意味を持ちます。 +ファイルの終わりまで送信するという特殊な意味を持ちます。 .Pp オプションのヘッダまたはトレーラ、またはその両方は、構造体 sf_hdtr を 指すポインタを指定することによってファイルの前と後で送信できます。 構造体 sf_hdtr の構造は次のとおりです。 .Pp .Bd -literal -offset indent -compact struct sf_hdtr { - struct iovec *headers; /*ヘッダ iovecs を指すポインタ*/ - int hdr_cnt; /*ヘッダ iovecs の数*/ - struct iovec *trailers; /*トレーラ iovecs を指すポインタ */ - int trl_cnt; /*トレーラ iovecs の数*/ + struct iovec *headers; /* ヘッダ iovecs を指すポインタ */ + int hdr_cnt; /* ヘッダ iovecs の数 */ + struct iovec *trailers; /* トレーラ iovecs を指すポインタ */ + int trl_cnt; /* トレーラ iovecs の数 */ }; .Ed .Pp .Fa headers ポインタと .Fa tailers ポインタは、 NULL でない場合に構造体 iovec 構造の配列を 指します。 iovec 構造体の詳細については、 .Fn writev システムコールを参照してください。 これらの配列内の iovecs の数は、 .Fa hdr_cnt と .Fa trl_cnt によって指定されます。 .Pp NULL でない場合に、システムは、ソケット上に送信された合計バイト数を、 .Fa sbytes によって指された変数に書込みます。 .Pp .Fa flags -引数は現時点では未定義であり、 0 として指定する必要があります。 +引数は現時点では未定義であり、 0 に指定する必要があります。 .Pp 非ブロッキング入出力用に指定されたソケットを使用するときに、 .Fn sendfile は要求されたよりも少ないバイトを送信することがあります。 この場合、正常に書込まれたバイト数が .Fa *sbytes (指定されている場合) に返され、エラー .Er EAGAIN が返されます。 .Sh 実装上の注釈 .Fn sendfile の .Fx での実装は「0 コピー」です。すなわち、ファイルデータのコピー が回避されるように最適化されています。 .Pp 非スレッドライブラリでは、 .Fn sendfile は .Va sendfile システムコールとして実装されています。 .Pp スレッドライブラリでは、 .Va sendfile システムコールは .Fn _thread_sys_sendfile にアセンブルされ、 .Fn sendfile は読取り用に .Fa fd 、書込み用に .Fa s をロックしてから .Fn _thread_sys_sendfile を呼び出す関数として実装されています。 .Fn _thread_sys_sendfile の呼び出しがブロックする場合は、コンテキストスイッチが実行されます。 戻る前に、 .Fn sendfile は .Fa fd と .Fa s をアンロックします。 .Sh 戻り値 正常に完了すると、 .Fn sendfile は 0 を返します。そうでない場合は -1 が返され、 エラーを示すためにグローバル変数 .Va errno が設定されます。 .Sh エラー .Bl -tag -width Er .It Bq Er EBADF .Fa fd が有効なファイル記述子ではありません。 .It Bq Er EBADF .Fa s が有効なソケット記述子ではありません。 .It Bq Er ENOTSOCK .Fa s がソケットではありません。 .It Bq Er EINVAL .Fa fd が通常のファイルではありません。 .It Bq Er EINVAL .Fa s が SOCK_STREAM 型のソケットではありません。 .It Bq Er EINVAL .Fa offset が負であるか、または範囲外です。 .It Bq Er ENOTCONN .Fa s は、未接続のソケットを指しています。 .It Bq Er EPIPE 通信相手が接続を閉じてしまいました。 .It Bq Er EIO .Fa fd から読取る間に入出力エラーが発生しました。 .It Bq Er EFAULT パラメータについて無効なアドレスが指定されました。 .It Bq Er EAGAIN ソケットは非ブロッキング入出力と指定されており、ソケットバッファが -満杯であるためにすべてのデータが送信されたわけではありません。 -指定された場合、送信が正常に完了したバイト数が +満杯であるためにすべてのデータが送信されませんでした。 +sbytes が指定された場合、送信が正常に完了したバイト数が .Fa *sbytes 内に返されます。 .El .Sh 関連項目 .Xr open 2 , .Xr send 2 , .Xr socket 2 , .Xr writev 2 .Sh 歴史 .Fn sendfile は、はじめて -.Fx 3.0 +.Fx 3.0 で登場しました。このマニュアルページは -.Fx 3.1 +.Fx 3.1 ではじめて登場しました。 .Sh 作者 .Fn sendfile とこのマニュアルページは .An David Greenman Aq dg@root.com が作成しました。