Catch up with 5.0-CURRENT-20030222-JPSNAP

Submitted by:	Akira Ikeuchi <a_ikeuchi@mic.mitsumi.co.jp>
This commit is contained in:
Kazuo Horikawa 2003-03-09 22:54:29 +00:00
parent ca1400906e
commit b1539bd153
Notes: svn2git 2020-12-08 03:00:23 +00:00
svn path=/head/; revision=16239
23 changed files with 99 additions and 97 deletions

View file

@ -26,7 +26,7 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF .\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. .\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\" .\"
.\" %FreeBSD: src/share/man/man9/DEVICE_PROBE.9,v 1.13 2002/03/18 10:43:49 ru Exp % .\" %FreeBSD: src/share/man/man9/DEVICE_PROBE.9,v 1.15 2002/12/24 16:52:31 ru Exp %
.\" .\"
.\" $FreeBSD$ .\" $FreeBSD$
.Dd June 16, 1998 .Dd June 16, 1998
@ -85,7 +85,6 @@
.Xr DEVICE_ATTACH 9 , .Xr DEVICE_ATTACH 9 ,
.Xr DEVICE_DETACH 9 , .Xr DEVICE_DETACH 9 ,
.Xr DEVICE_IDENTIFY 9 , .Xr DEVICE_IDENTIFY 9 ,
.Xr DEVICE_PROBE 9 ,
.Xr DEVICE_SHUTDOWN 9 .Xr DEVICE_SHUTDOWN 9
.Sh 作者 .Sh 作者
このマニュアルページは このマニュアルページは

View file

@ -26,7 +26,7 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF .\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. .\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\" .\"
.\" %FreeBSD: src/share/man/man9/VOP_ATTRIB.9,v 1.22 2002/12/12 17:25:58 ru Exp % .\" %FreeBSD: src/share/man/man9/VOP_ATTRIB.9,v 1.23 2002/12/24 13:41:46 ru Exp %
.\" .\"
.\" $FreeBSD$ .\" $FreeBSD$
.Dd July 24, 1996 .Dd July 24, 1996
@ -61,7 +61,7 @@
スレッド。 スレッド。
.El .El
.Pp .Pp
.Xr VOP_SETATTR 9 .Fn VOP_SETATTR
によって更新されようとしていない属性は によって更新されようとしていない属性は
.Dv VNOVAL .Dv VNOVAL
が設定されているべきです。 が設定されているべきです。
@ -70,22 +70,22 @@
.Fa *vap .Fa *vap
の値の明示の前にその内容をリセットするために使用されるべきです。 の値の明示の前にその内容をリセットするために使用されるべきです。
.Sh ロック .Sh ロック
.Xr VOP_GETATTR 9 .Fn VOP_GETATTR
は、入る時に vnode がロックされていて、戻り時まで vnode がロックされたままで は、入る時に vnode がロックされていて、戻り時まで vnode がロックされたままで
あることを期待します。 あることを期待します。
そのロックの型は共有または排他が可能です。 そのロックの型は共有または排他が可能です。
.Pp .Pp
.Xr VOP_SETATTR 9 .Fn VOP_SETATTR
は、入る時に vnode がロックされていて、戻り時まで vnode がロックされたままで は、入る時に vnode がロックされていて、戻り時まで vnode がロックされたままで
あることを期待します。 あることを期待します。
そのロックの型は排他でなければなりません。 そのロックの型は排他でなければなりません。
.Sh 戻り値 .Sh 戻り値
.Xr VOP_GETATTR 9 .Fn VOP_GETATTR
.Fa *vap .Fa *vap
を介して属性データを取り出すことができた場合には 0 を返し、 を介して属性データを取り出すことができた場合には 0 を返し、
そうでない場合には適切なエラーが返されます。 そうでない場合には適切なエラーが返されます。
.Xr VOP_SETATTR 9 .Fn VOP_SETATTR
は属性がうまく変更された場合には 0 を返し、 は属性がうまく変更された場合には 0 を返し、
そうでない場合には適切なエラーが返されます。 そうでない場合には適切なエラーが返されます。
.Sh 疑似コード .Sh 疑似コード

View file

@ -26,7 +26,7 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF .\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. .\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\" .\"
.\" %FreeBSD: src/share/man/man9/VOP_INACTIVE.9,v 1.10 2002/12/12 17:25:58 ru Exp % .\" %FreeBSD: src/share/man/man9/VOP_INACTIVE.9,v 1.11 2002/12/24 13:41:46 ru Exp %
.\" .\"
.\" $FreeBSD$ .\" $FreeBSD$
.Dd July 24, 1996 .Dd July 24, 1996
@ -50,14 +50,14 @@
回収されている vnode。 回収されている vnode。
.El .El
.Pp .Pp
.Xr VOP_INACTIVE 9 .Fn VOP_INACTIVE
は、カーネルがもはやその vnode を使用しなくなった時に呼び出されます。 は、カーネルがもはやその vnode を使用しなくなった時に呼び出されます。
これは、参照カウントが 0 になった時、 これは、参照カウントが 0 になった時、
またはオープンされているファイルがあるファイルシステムが またはオープンされているファイルがあるファイルシステムが
強制的にアンマウントされた時に起こります。 強制的にアンマウントされた時に起こります。
「オープンされているが削除された」ファイルのための領域を回収するために、 「オープンされているが削除された」ファイルのための領域を回収するために、
使用可能です。 使用可能です。
.Xr VOP_RECLAIM 9 .Fn VOP_RECLAIM
は、異なるファイルシステムのために vnode が再利用される時に呼び出されます。 は、異なるファイルシステムのために vnode が再利用される時に呼び出されます。
vnode に関連しているあらゆるファイルシステム固有の資源は、解放されるべきです。 vnode に関連しているあらゆるファイルシステム固有の資源は、解放されるべきです。
.Sh ロック .Sh ロック

View file

@ -26,7 +26,7 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF .\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. .\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\" .\"
.\" %FreeBSD: src/share/man/man9/VOP_LINK.9,v 1.18 2002/11/29 11:39:20 ru Exp % .\" %FreeBSD: src/share/man/man9/VOP_LINK.9,v 1.19 2002/12/24 13:41:46 ru Exp %
.\" .\"
.\" $FreeBSD$ .\" $FreeBSD$
.Dd July 24, 1996 .Dd July 24, 1996
@ -62,7 +62,7 @@
.Em ありません .Em ありません
.Sh ロック .Sh ロック
.Xr VOP_LINK 9 .Fn VOP_LINK
はディレクトリおよびファイルの vnode は入る時にロックされ、戻る時まで はディレクトリおよびファイルの vnode は入る時にロックされ、戻る時まで
ロックされ続けていることを期待します。 ロックされ続けていることを期待します。
.Sh 戻り値 .Sh 戻り値

View file

@ -26,7 +26,7 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF .\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. .\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\" .\"
.\" %FreeBSD: src/share/man/man9/VOP_OPENCLOSE.9,v 1.10 2002/12/12 17:25:58 ru Exp % .\" %FreeBSD: src/share/man/man9/VOP_OPENCLOSE.9,v 1.11 2002/12/24 13:41:46 ru Exp %
.\" .\"
.\" $FreeBSD$ .\" $FreeBSD$
.Dd July 24, 1996 .Dd July 24, 1996
@ -44,10 +44,10 @@
.Ft int .Ft int
.Fn VOP_CLOSE "struct vnode *vp" "int mode" "struct ucred *cred" "struct thread *td" .Fn VOP_CLOSE "struct vnode *vp" "int mode" "struct ucred *cred" "struct thread *td"
.Sh 解説 .Sh 解説
.Xr VOP_OPEN 9 .Fn VOP_OPEN
エントリポイントは、 エントリポイントは、
ファイルがプロセスによってアクセスされる前に呼び出され、 ファイルがプロセスによってアクセスされる前に呼び出され、
.Xr VOP_CLOSE 9 .Fn VOP_CLOSE
エントリポイントは、 エントリポイントは、
ファイルに対するプロセスの仕事の完了後に呼び出されます。 ファイルに対するプロセスの仕事の完了後に呼び出されます。
.Pp .Pp
@ -68,12 +68,12 @@
.Dv O_APPEND .Dv O_APPEND
を含むフラグの組です。 を含むフラグの組です。
.Sh ロック .Sh ロック
.Xr VOP_OPEN 9 .Fn VOP_OPEN
は、入る時に は、入る時に
.Fa vp .Fa vp
がロックされていることを期待し、戻り時までロックされたままにします。 がロックされていることを期待し、戻り時までロックされたままにします。
.Pp .Pp
.Xr VOP_CLOSE 9 .Fn VOP_CLOSE
は、vnode に結びつけられた参照が少なくとも 1 個は存在することを期待し、 は、vnode に結びつけられた参照が少なくとも 1 個は存在することを期待し、
vnode がロックされているかどうかは気にしません。 vnode がロックされているかどうかは気にしません。
ロックおよび参照状態は、戻る時に変更されずにそのままになります。 ロックおよび参照状態は、戻る時に変更されずにそのままになります。

View file

@ -26,7 +26,7 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF .\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. .\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\" .\"
.\" %FreeBSD: src/share/man/man9/device_add_child.9,v 1.13 2001/10/01 16:09:24 ru Exp % .\" %FreeBSD: src/share/man/man9/device_add_child.9,v 1.14 2002/12/24 13:41:46 ru Exp %
.\" .\"
.\" $FreeBSD$ .\" $FreeBSD$
.Dd June 16, 1998 .Dd June 16, 1998
@ -81,13 +81,13 @@
指定の順序でプローブされなければならないバス (例えば、ISA バス用の幾つかの 指定の順序でプローブされなければならないバス (例えば、ISA バス用の幾つかの
デバイスは関連の無いドライバのプローブの試みの失敗に敏感で、それゆえ デバイスは関連の無いドライバのプローブの試みの失敗に敏感で、それゆえ
最初にプローブされなければならない) にアタッチされたデバイスの場合には、 最初にプローブされなければならない) にアタッチされたデバイスの場合には、
.Xr device_add_child_ordered 9 .Fn device_add_child_ordered
.Fa order .Fa order
引数が半順序を指定するために使用されるべきです。 引数が半順序を指定するために使用されるべきです。
新しいデバイスは、 新しいデバイスは、
既存のより大きい順序を持つすべてのデバイスの前に追加されます。 既存のより大きい順序を持つすべてのデバイスの前に追加されます。
.Xr device_add_child 9 .Fn device_add_child
が使用された場合には、順序が 0 であるとして新しい子が追加されます。 が使用された場合には、順序が 0 であるとして新しい子が追加されます。
.Sh 戻り値 .Sh 戻り値
成功時には新しいデバイスが、そうでなければ NULL が返されます。 成功時には新しいデバイスが、そうでなければ NULL が返されます。

View file

@ -26,7 +26,7 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF .\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. .\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\" .\"
.\" %FreeBSD: src/share/man/man9/device_enable.9,v 1.7 2002/01/09 11:43:47 mpp Exp % .\" %FreeBSD: src/share/man/man9/device_enable.9,v 1.8 2002/12/24 13:41:46 ru Exp %
.\" .\"
.\" $FreeBSD$ .\" $FreeBSD$
.Dd June 16, 1998 .Dd June 16, 1998
@ -51,11 +51,11 @@
デバイスは生成時にはデフォルトで有効になっていますが、(例えば、破壊的または デバイスは生成時にはデフォルトで有効になっていますが、(例えば、破壊的または
時間を消費するプローブの試みを防ぐために) 無効にできます。 時間を消費するプローブの試みを防ぐために) 無効にできます。
デバイスを無効にするには デバイスを無効にするには
.Xr device_disable 9 .Fn device_disable
を呼び出し、再度有効にするには を呼び出し、再度有効にするには
.Xr device_enable 9 .Fn device_enable
を呼び出し、デバイスが有効かどうか確認するには を呼び出し、デバイスが有効かどうか確認するには
.Xr device_is_enabled 9 .Fn device_is_enabled
を呼び出します。 を呼び出します。
.Sh 関連項目 .Sh 関連項目
.Xr device 9 .Xr device 9

View file

@ -26,7 +26,7 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF .\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. .\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\" .\"
.\" %FreeBSD: src/share/man/man9/device_get_state.9,v 1.8 2001/10/01 16:09:24 ru Exp % .\" %FreeBSD: src/share/man/man9/device_get_state.9,v 1.9 2002/12/24 13:41:46 ru Exp %
.\" .\"
.\" $FreeBSD$ .\" $FreeBSD$
.Dd June 16, 1998 .Dd June 16, 1998
@ -58,18 +58,18 @@
( (
.Xr device 9 .Xr device 9
で説明されています) を返す で説明されています) を返す
.Xr device_get_state 9 .Fn device_get_state
の呼び出しによってアクセスされます。 の呼び出しによってアクセスされます。
デバイスがうまくプローブされたことを確認するには、単純に状態が デバイスがうまくプローブされたことを確認するには、単純に状態が
.Dv DS_ALIVE .Dv DS_ALIVE
以上であるかどうかを返す 以上であるかどうかを返す
.Xr device_is_alive 9 .Fn device_is_alive
を呼び出します。 を呼び出します。
.Pp .Pp
個々のデバイスは、 個々のデバイスは、
.Xr device_busy 9 .Fn device_busy
が呼び出された時にインクリメントされ、 が呼び出された時にインクリメントされ、
.Xr device_unbusy 9 .Fn device_unbusy
が呼び出された時にデクリメントされるビジーカウントを持っています。 が呼び出された時にデクリメントされるビジーカウントを持っています。
どちらのルーチンもデバイスの状態が どちらのルーチンもデバイスの状態が
.Dv DS_ATTACHED .Dv DS_ATTACHED
@ -78,11 +78,11 @@
デバイスが デバイスが
.Dv DS_ATTACHED .Dv DS_ATTACHED
状態で 状態で
.Xr device_busy 9 .Fn device_busy
が呼び出された時には、デバイスは が呼び出された時には、デバイスは
.Dv DS_BUSY .Dv DS_BUSY
状態に遷移します。 状態に遷移します。
.Xr device_unbusy 9 .Fn device_unbusy
が呼び出されでデクリメントされた後にデバイスのビジーカウントが 0 ならば、 が呼び出されでデクリメントされた後にデバイスのビジーカウントが 0 ならば、
デバイスは デバイスは
.Dv DS_ATTACHED .Dv DS_ATTACHED

View file

@ -26,7 +26,7 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF .\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. .\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\" .\"
.\" %FreeBSD: src/share/man/man9/device_quiet.9,v 1.8 2002/01/09 11:43:47 mpp Exp % .\" %FreeBSD: src/share/man/man9/device_quiet.9,v 1.9 2002/12/24 13:41:46 ru Exp %
.\" .\"
.\" $FreeBSD$ .\" $FreeBSD$
.Dd June 21, 1999 .Dd June 21, 1999
@ -51,14 +51,14 @@
デバイスは生成時のデフォルトでは冗長ですが、プローブ中に デバイスは生成時のデフォルトでは冗長ですが、プローブ中に
デバイス識別文字列の出力を妨げるために、沈黙させられます。 デバイス識別文字列の出力を妨げるために、沈黙させられます。
デバイスを沈黙させるには デバイスを沈黙させるには
.Xr device_quiet 9 .Fn device_quiet
を呼び出し、プローブメッセージを再度有効 (例えば を呼び出し、プローブメッセージを再度有効 (例えば
.Xr device_detach 9 .Xr device_detach 9
の後に、メッセージが再び現れるようにします) にするには の後に、メッセージが再び現れるようにします) にするには
.Xr device_verbose 9 .Fn device_verbose
を呼び出します。 を呼び出します。
デバイスが沈黙状態かどうかを確認するためには デバイスが沈黙状態かどうかを確認するためには
.Xr device_is_quiet 9 .Fn device_is_quiet
を呼び出します。 を呼び出します。
.Sh 関連項目 .Sh 関連項目
.Xr device 9 .Xr device 9

View file

@ -26,7 +26,7 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF .\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. .\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\" .\"
.\" %FreeBSD: src/share/man/man9/device_set_desc.9,v 1.8 2001/10/01 16:09:24 ru Exp % .\" %FreeBSD: src/share/man/man9/device_set_desc.9,v 1.9 2002/12/24 13:41:46 ru Exp %
.\" .\"
.\" $FreeBSD$ .\" $FreeBSD$
.Dd June 16, 1998 .Dd June 16, 1998
@ -52,7 +52,7 @@
自動コンフィギュレーションの間のアタッチ時に、 自動コンフィギュレーションの間のアタッチ時に、
メッセージの一部として表示されます。 メッセージの一部として表示されます。
変種の 変種の
.Xr device_set_desc_copy 9 .Fn device_set_desc_copy
は、渡される文字列が上書きされるかも知れない一時的なバッファである場合に、 は、渡される文字列が上書きされるかも知れない一時的なバッファである場合に、
使用されます。 使用されます。
この場合にはシステムはその文字列をコピーしますが、 この場合にはシステムはその文字列をコピーしますが、

View file

@ -26,7 +26,7 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF .\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. .\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\" .\"
.\" %FreeBSD: src/share/man/man9/device_set_flags.9,v 1.6 2001/10/01 16:09:24 ru Exp % .\" %FreeBSD: src/share/man/man9/device_set_flags.9,v 1.7 2002/12/24 13:41:46 ru Exp %
.\" .\"
.\" $FreeBSD$ .\" $FreeBSD$
.Dd September 6, 1999 .Dd September 6, 1999
@ -47,9 +47,9 @@
個々のデバイスは、デバイスの振舞いを制御するために使用される 個々のデバイスは、デバイスの振舞いを制御するために使用される
ドライバ依存のフラグの組を、しばしばサポートしています。 ドライバ依存のフラグの組を、しばしばサポートしています。
これらのフラグは これらのフラグは
.Xr device_get_flags 9 .Fn device_get_flags
の呼び出しによって読み込まれ、 の呼び出しによって読み込まれ、
.Xr device_set_flags 9 .Fn device_set_flags
の呼び出しによって書き込まれます。 の呼び出しによって書き込まれます。
.Sh 関連項目 .Sh 関連項目
.Xr device 9 .Xr device 9

View file

@ -34,7 +34,7 @@
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE .\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
.\" POSSIBILITY OF SUCH DAMAGE. .\" POSSIBILITY OF SUCH DAMAGE.
.\" .\"
.\" %FreeBSD: src/share/man/man9/kernacc.9,v 1.12 2001/12/26 23:14:04 davidc Exp % .\" %FreeBSD: src/share/man/man9/kernacc.9,v 1.13 2003/01/21 11:34:57 alfred Exp %
.\" .\"
.\" $FreeBSD$ .\" $FreeBSD$
.Dd June 16, 1996 .Dd June 16, 1996
@ -50,9 +50,9 @@
.In vm/vm.h .In vm/vm.h
.In vm/vm_extern.h .In vm/vm_extern.h
.Ft int .Ft int
.Fn kernacc "caddr_t addr" "int len" "int rw" .Fn kernacc "void *addr" "int len" "int rw"
.Ft int .Ft int
.Fn useracc "caddr_t addr" "int len" "int rw" .Fn useracc "void *addr" "int len" "int rw"
.Sh 解説 .Sh 解説
.Fn kernacc .Fn kernacc
および および

View file

@ -33,8 +33,8 @@
.\" POSSIBILITY OF SUCH DAMAGE. .\" POSSIBILITY OF SUCH DAMAGE.
.\" .\"
.\" $NetBSD: malloc.9,v 1.3 1996/11/11 00:05:11 lukem Exp $ .\" $NetBSD: malloc.9,v 1.3 1996/11/11 00:05:11 lukem Exp $
.\" %FreeBSD: src/share/man/man9/malloc.9,v 1.23 2002/03/18 10:52:09 ru Exp % .\" %FreeBSD: src/share/man/man9/malloc.9,v 1.29 2003/02/05 14:00:46 charnier
,\" $FreeBSD$ .\" $FreeBSD$
.\" .\"
.Dd June 16, 1996 .Dd June 16, 1996
.Dt MALLOC 9 .Dt MALLOC 9
@ -65,7 +65,7 @@
で指定された大きさの 1 つのオブジェクトとして割り当てます。 で指定された大きさの 1 つのオブジェクトとして割り当てます。
.Pp .Pp
.Fn free .Fn free
関数
.Fn malloc .Fn malloc
で先に割り当てられていた で先に割り当てられていた
.Fa addr .Fa addr
@ -152,23 +152,15 @@ free((addr), type)
はブロックせずに はブロックせずに
.Dv NULL .Dv NULL
を返します。 を返します。
.Dv M_WAITOK
が 0 に定義されていることに注意してください。
これはブロッキング操作がデフォルトだということです。
割り込みコンテキストでの動作時には 割り込みコンテキストでの動作時には
.Dv M_NOWAIT .Dv M_NOWAIT
が必要であることにも注意してください。 が必要であることに注意してください。
.It Dv M_WAITOK
リソースを待つことが可能(OK)であることを示します。
都合の悪いことに 0 と定義されているので、直接この値に対して比較したり、
フラグとして論理積(AND)をとったりしないように注意されなければなりません。
デフォルトの操作はメモリの割り当てが成功するまでブロックします。
.Dv M_NOWAIT .Dv M_NOWAIT
が指定されると が指定されると
.Fn malloc , .Fn malloc ,
.Fn realloc , .Fn realloc ,
.Fn reallocf .Fn reallocf
は単に 関数は単に
.Dv NULL .Dv NULL
を返すことが出来ます。 を返すことが出来ます。
.It Dv M_USE_RESERVE .It Dv M_USE_RESERVE
@ -216,7 +208,7 @@ MALLOC(buf, struct foo_buf *, sizeof *buf, M_FOOBUF, M_NOWAIT);
.Fn malloc , .Fn malloc ,
.Fn realloc , .Fn realloc ,
.Fn reallocf .Fn reallocf
はすべてのタイプのオブジェクトの格納に適切なように整列された 関数はすべてのタイプのオブジェクトの格納に適切なように整列された
カーネル仮想アドレスを返すか、 カーネル仮想アドレスを返すか、
または要求が満足できず (すなわち または要求が満足できず (すなわち
.Dv M_NOWAIT .Dv M_NOWAIT
@ -229,8 +221,22 @@ MALLOC(buf, struct foo_buf *, sizeof *buf, M_FOOBUF, M_NOWAIT);
より大きな要求に対しては、1 個以上のページが割り当てられます。 より大きな要求に対しては、1 個以上のページが割り当てられます。
この動作に依存してはなりませんが、 この動作に依存してはなりませんが、
この情報がメモリ使用効率の最適化に有用かもしれません。 この情報がメモリ使用効率の最適化に有用かもしれません。
.Pp
以上に記載された malloc のフラグは、望まれていない結果を引き起こすため、
.Xr mbuf 9
のルーチンと一緒に使用されるべき
.Em ではありません
.Pp
.Xr vnode 9
インタロックを保持している時の
.Fn malloc
または
.Fn free
への全ての呼出しは、VM オブジェクトと vnode の相互獲得のために、
LOR (ロック順序の逆転) を引き起こします。
.Sh 関連項目 .Sh 関連項目
.Xr vmstat 8 .Xr vmstat 8 ,
.Xr vnode 9
.Sh 診断 .Sh 診断
.Dv DIAGNOSTIC .Dv DIAGNOSTIC
コンフィギュレーションオプションを付けてコンパイルされたカーネルは、 コンフィギュレーションオプションを付けてコンパイルされたカーネルは、

View file

@ -34,7 +34,7 @@
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE .\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
.\" POSSIBILITY OF SUCH DAMAGE. .\" POSSIBILITY OF SUCH DAMAGE.
.\" .\"
.\" %FreeBSD: src/share/man/man9/mi_switch.9,v 1.16 2002/08/13 14:51:17 ru Exp % .\" %FreeBSD: src/share/man/man9/mi_switch.9,v 1.17 2002/12/27 12:15:34 schweikh Exp %
.\" .\"
.\" $FreeBSD$ .\" $FreeBSD$
.Dd November 24, 1996 .Dd November 24, 1996

View file

@ -22,7 +22,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE. .\" SUCH DAMAGE.
.\" .\"
.\" %FreeBSD: src/share/man/man9/microseq.9,v 1.16 2001/10/01 16:09:25 ru Exp % .\" %FreeBSD: src/share/man/man9/microseq.9,v 1.17 2002/12/27 12:15:34 schweikh Exp %
.\" $FreeBSD$ .\" $FreeBSD$
.\" .\"
.Dd June 6, 1998 .Dd June 6, 1998

View file

@ -23,7 +23,7 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF .\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. .\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\" .\"
.\" %FreeBSD: src/share/man/man9/sleep.9,v 1.34 2002/03/18 10:43:49 ru Exp % .\" %FreeBSD: src/share/man/man9/sleep.9,v 1.38 2003/02/04 08:53:45 guido Exp %
.\" $FreeBSD$ .\" $FreeBSD$
.\" " .\" "
.Dd December 17, 1998 .Dd December 17, 1998
@ -85,7 +85,7 @@
システムが飽和することを防ぐことが可能です。 システムが飽和することを防ぐことが可能です。
.Pp .Pp
.Nm tsleep .Nm tsleep
は一般的なスリープの呼び出しです。 関数は一般的なスリープの呼び出しです。
明示された識別子上の wakeup が実行されるまでの間、 明示された識別子上の wakeup が実行されるまでの間、
現在のプロセスを一時停止させます。 現在のプロセスを一時停止させます。
それからそのプロセスは明示された優先度 それからそのプロセスは明示された優先度
@ -113,7 +113,7 @@
が返されます。 が返されます。
.Pp .Pp
.Nm msleep .Nm msleep
は tsleep の変種です。パラメータ 関数は tsleep の変種です。パラメータ
.Ar mtx .Ar mtx
は、スリープの前に抜け、 は、スリープの前に抜け、
.Nm msleep .Nm msleep
@ -141,17 +141,17 @@ sleep/wakeup
で登場しました。 で登場しました。
.Pp .Pp
.Nm tsleep .Nm tsleep
関数
.Bx 4.4 .Bx 4.4
で登場しました。 で登場しました。
.Pp .Pp
.Nm sleep .Nm
は伝統的な形式のために使用されます。 関数は伝統的な形式のために使用されます。
これはタイムアウトまたは これはタイムアウトまたは
.Ar wmesg .Ar wmesg
を明示させないため、中止されています。 を明示させないため、中止されています。
.Sh 作者 .Sh 作者
.An -nosplit .An -nosplit
このマニュアルページは このマニュアルページは
.An J\(:org Wunsch . .An J\(:org Wunsch Aq joerg@FreeBSD.org
が書きました。 が書きました。

View file

@ -22,7 +22,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE. .\" SUCH DAMAGE.
.\" .\"
.\" %FreeBSD: src/share/man/man9/style.9,v 1.97 2002/11/29 11:39:20 ru Exp % .\" %FreeBSD: src/share/man/man9/style.9,v 1.98 2002/12/27 12:15:34 schweikh Exp %
.\" $FreeBSD$ .\" $FreeBSD$
.\" .\"
.Dd December 7, 2001 .Dd December 7, 2001
@ -50,7 +50,7 @@
* CSRG の KNF (Kernel Normal Form, カーネル標準書式) に基づいています。 * CSRG の KNF (Kernel Normal Form, カーネル標準書式) に基づいています。
* *
* @(#)style 1.14 (Berkeley) 4/28/95 * @(#)style 1.14 (Berkeley) 4/28/95
* $\&FreeBSD: src/share/man/man9/style.9,v 1.97 2002/11/29 11:39:20 ru Exp $ * $\&FreeBSD: src/share/man/man9/style.9,v 1.98 2002/12/27 12:15:34 schweikh Exp $
*/ */
/* /*
@ -94,7 +94,7 @@ static char sccsid[] = "@(#)style 1.14 (Berkeley) 4/28/95";
#endif #endif
#include <sys/cdefs.h> #include <sys/cdefs.h>
__FBSDID("$\&FreeBSD: src/share/man/man9/style.9,v 1.95 2002/11/01 16:20:31 rwatson Exp $"); __FBSDID("$\&FreeBSD: src/share/man/man9/style.9,v 1.98 2002/12/27 12:15:34 schweikh Exp $");
.Ed .Ed
.Pp .Pp
ヘッダファイルの前に、空行を 1 行付けます。 ヘッダファイルの前に、空行を 1 行付けます。

View file

@ -25,7 +25,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE. .\" SUCH DAMAGE.
.\" .\"
.\" %FreeBSD: src/share/man/man9/sysctl_add_oid.9,v 1.16 2002/01/09 11:43:48 mpp Exp % .\" %FreeBSD: src/share/man/man9/sysctl_add_oid.9,v 1.17 2003/01/04 17:01:50 schweikh Exp %
.\" $FreeBSD$ .\" $FreeBSD$
.\" .\"
.Dd July 15, 2000 .Dd July 15, 2000
@ -268,7 +268,7 @@ oid
.Aq sys/sysctl.h .Aq sys/sysctl.h
ヘッダファイルの中で定義される型とアクセス値のビットマスクとして明示されます。 ヘッダファイルの中で定義される型とアクセス値のビットマスクとして明示されます。
動的に作成された oid は常に 動的に作成された oid は常に
.Dv CTLTYPE_DYN .Dv CTLFLAG_DYN
フラグが設定されます。 フラグが設定されます。
アクセスフラグはこの oid が読み取り専用か読み書き可能か、および アクセスフラグはこの oid が読み取り専用か読み書き可能か、および
全てのユーザによってまたはスーパユーザによってのみ修正可能かを明示します。 全てのユーザによってまたはスーパユーザによってのみ修正可能かを明示します。

View file

@ -26,7 +26,7 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF .\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. .\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\" .\"
.\" %FreeBSD: src/share/man/man9/vget.9,v 1.7 2001/12/26 23:14:04 davidc Exp % .\" %FreeBSD: src/share/man/man9/vget.9,v 1.8 2002/12/24 13:41:46 ru Exp %
.\" .\"
.\" $FreeBSD$ .\" $FreeBSD$
.Dd July 24, 1996 .Dd July 24, 1996
@ -60,7 +60,7 @@ vnode
を呼び出した結果名前キャッシュにその vnode が見つかった場合、 を呼び出した結果名前キャッシュにその vnode が見つかった場合、
参照カウントのインクリメントとフリーリストからの削除のために、 参照カウントのインクリメントとフリーリストからの削除のために、
新しい使用者は 新しい使用者は
.Xr vget 9 .Fn vget
を呼び出すことが必要です。 を呼び出すことが必要です。
.Sh 関連項目 .Sh 関連項目
.Xr vnode 9 , .Xr vnode 9 ,

View file

@ -26,7 +26,7 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF .\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. .\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\" .\"
.\" %FreeBSD: src/share/man/man9/vnode.9,v 1.21 2002/12/12 17:25:58 ru Exp % .\" %FreeBSD: src/share/man/man9/vnode.9,v 1.23 2003/01/19 15:44:32 sheldonh Exp %
.\" .\"
.\" $FreeBSD$ .\" $FreeBSD$
.Dd June 30, 1999 .Dd June 30, 1999
@ -45,18 +45,6 @@
*/ */
enum vtype { VNON, VREG, VDIR, VBLK, VCHR, VLNK, VSOCK, VFIFO, VBAD }; enum vtype { VNON, VREG, VDIR, VBLK, VCHR, VLNK, VSOCK, VFIFO, VBAD };
/*
* vnode のタグ型です。
* 外部プログラム (例えば、pstat) のためだけにあり、決してカーネル
* によって検査されるべきではありません。
*/
enum vtagtype {
VT_NON, VT_UFS, VT_NFS, VT_UNUSED, VT_PC, VT_LFS, VT_LOFS, VT_FDESC,
VT_PORTAL, VT_NULL, VT_UMAP, VT_KERNFS, VT_PROCFS, VT_AFS, VT_ISOFS,
VT_UNION, VT_MSDOSFS, VT_DEVFS, VT_TFS, VT_VFS, VT_CODA, VT_NTFS,
VT_HPFS, VTNWFS, VT_PSEUDOFS
};
/* /*
* 個々の下位ファイルシステムはその私的な領域を割り当て、それを * 個々の下位ファイルシステムはその私的な領域を割り当て、それを
* v_data から吊るします。ヌルでないならば、この領域は getnewvnode() で * v_data から吊るします。ヌルでないならば、この領域は getnewvnode() で
@ -107,7 +95,7 @@ struct vnode {
struct vm_object *v_object; /* VM オブジェクトの保存場所 */ struct vm_object *v_object; /* VM オブジェクトの保存場所 */
struct simplelock v_interlock; /* 使用カウントとフラグのロック */ struct simplelock v_interlock; /* 使用カウントとフラグのロック */
struct lock *v_vnlock; /* 非ロックファイルシステム用 */ struct lock *v_vnlock; /* 非ロックファイルシステム用 */
enum vtagtype v_tag; /* 下位データの型 */ const char *v_tag; /* 下位データの型 */
void *v_data; /* ファイルシステムの私的データ */ void *v_data; /* ファイルシステムの私的データ */
LIST_HEAD(, namecache) v_cache_src; /* 我々からのキャッシュエントリ */ LIST_HEAD(, namecache) v_cache_src; /* 我々からのキャッシュエントリ */
TAILQ_HEAD(, namecache) v_cache_dst; /* 我々へのキャッシュエントリ */ TAILQ_HEAD(, namecache) v_cache_dst; /* 我々へのキャッシュエントリ */
@ -253,7 +241,7 @@ FIFO (̾
.It Dv VBAD .It Dv VBAD
古い形式のバッドセクタマップです。 古い形式のバッドセクタマップです。
.El .El
.Sh .Sh 実装に関する
VFIFO は VFIFO は
.Pa /sys/kern/sys_pipe.c .Pa /sys/kern/sys_pipe.c
の "struct fileops" を使用します。 の "struct fileops" を使用します。
@ -266,7 +254,16 @@ VSOCK
.Pp .Pp
VFIFO/VSOCK のコードになぜか "struct fileops" が使用されている理由は、 VFIFO/VSOCK のコードになぜか "struct fileops" が使用されている理由は、
カーネルへの VFS コードの不完全な統合の文化遺産です。 カーネルへの VFS コードの不完全な統合の文化遺産です。
.Pp
.Xr vnode 9
インタロックを保持している時の
.Fn malloc
または
.Fn free
への全ての呼出しは、VM オブジェクトと vnode の相互獲得のために、
LOR (ロック順序の逆転) を引き起こします。
.Sh 関連項目 .Sh 関連項目
.Xr malloc 9 ,
.Xr VFS 9 .Xr VFS 9
.Sh 作者 .Sh 作者
このマニュアルページは このマニュアルページは

View file

@ -26,7 +26,7 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF .\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. .\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\" .\"
.\" %FreeBSD: src/share/man/man9/vref.9,v 1.8 2001/10/01 16:09:25 ru Exp % .\" %FreeBSD: src/share/man/man9/vref.9,v 1.9 2002/12/24 13:41:46 ru Exp %
.\" .\"
.\" $FreeBSD$ .\" $FreeBSD$
.Dd July 24, 1996 .Dd July 24, 1996
@ -57,7 +57,7 @@ vnode
.Pp .Pp
vnode を使用中のシステム中の全てのコード (例えば、 vnode を使用中のシステム中の全てのコード (例えば、
あるアルゴリズムの操作中や、データ構造の格納時) は、 あるアルゴリズムの操作中や、データ構造の格納時) は、
.Xr vref 9 .Fn vref
を呼び出すべきです。 を呼び出すべきです。
.Sh 関連項目 .Sh 関連項目
.Xr vget 9 , .Xr vget 9 ,

View file

@ -26,7 +26,7 @@
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF .\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. .\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\" .\"
.\" %FreeBSD: src/share/man/man9/vrele.9,v 1.9 2001/10/01 16:09:25 ru Exp % .\" %FreeBSD: src/share/man/man9/vrele.9,v 1.10 2002/12/24 13:41:46 ru Exp %
.\" .\"
.\" $FreeBSD$ .\" $FreeBSD$
.Dd July 24, 1996 .Dd July 24, 1996
@ -51,7 +51,7 @@ vnode
.Pp .Pp
vnode を使用中のシステム中の全てのコードは、 vnode を使用中のシステム中の全てのコードは、
その vnode を使い終えた時には、 その vnode を使い終えた時には、
.Xr vrele 9 .Fn vrele
を呼び出すべきです。 を呼び出すべきです。
その vnode の その vnode の
.Dv v_usecount .Dv v_usecount

View file

@ -34,7 +34,7 @@
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE .\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
.\" POSSIBILITY OF SUCH DAMAGE. .\" POSSIBILITY OF SUCH DAMAGE.
.\" .\"
.\" %FreeBSD: src/share/man/man9/vslock.9,v 1.9 2001/12/26 23:14:04 davidc Exp % .\" %FreeBSD: src/share/man/man9/vslock.9,v 1.10 2003/01/21 11:34:57 alfred Exp %
.\" .\"
.\" $FreeBSD$ .\" $FreeBSD$
.Dd June 15, 1996 .Dd June 15, 1996
@ -50,9 +50,9 @@
.In vm/vm.h .In vm/vm.h
.In vm/vm_extern.h .In vm/vm_extern.h
.Ft void .Ft void
.Fn vslock "caddr_t addr" "u_int len" .Fn vslock "void *addr" "u_int len"
.Ft void .Ft void
.Fn vsunlock "caddr_t addr" "u_int len" .Fn vsunlock "void *addr" "u_int len"
.Sh 解説 .Sh 解説
.Fn vslock .Fn vslock
および および