EN JA
VRELE(9)
VRELE(9) FreeBSD Kernel Developer's Manual VRELE(9)

名称

vput, vrele, vunrefvnode のための使用カウントを減少させる

書式

#include < sys/param.h>
#include < sys/vnode.h>

void
vput( struct vnode *vp);

void
vrele( struct vnode *vp);

void
vunref( struct vnode *vp);

解説

vnode の v_usecount フィールドを減少させます。
vp
減少される vnode。

vrele() 関数は、アンロックされた vnode を取って、アンロックされた vnode の状態で戻ります。

vput() 関数は、引数としてロックされた vnode が与えられるべきであり、関数が返った後に、vnode は、アンロックされます。 vput() は、より少ないオーバヘッドで vrele(9) が、続く VOP_UNLOCK(9) を呼び出すのと操作上同等です。

vunref() 関数は、引数としてロックされた vnode を取り、ロックされた vnode の状態で戻ります。

usecount によって vnode の使用を意味するシステムの任意コードは、使用するカウントを減少させるためにリストされた関数の 1 つを呼び出すべきです。 non-doomed された vnode の v_usecount フィールドが 0 に到達するなら、不活性化されて、フリー (空き) リストに置かれます。関数が、vnode のために VOP を呼び出す必要があるかもしれないので、 Giant ミューテックスは、呼び出しの周りで条件付きロックされるべきです。

vnode のための保持カウントは、常に usecount 以上です。強制的でない unmount は、マウントポイントが、0 でない usecount がある vnode を所有しているとき、失敗します、 vflush(9) を参照してください。

作者

このマニュアルページは、 Doug RabsonKonstantin Belousov によって書かれました。
November 20, 2010 FreeBSD