スポンサーリンク

VGET(9) FreeBSD カーネル開発者マニュアル VGET(9)

名称

vget − フリーリストから vnode を取得

書式

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

int

vget(struct vnode *vp, int lockflag, struct thread *td);

解説

フリーリストから vnode を取得し、その参照カウントをインクリメントします。

       vp

フリーリストから取り除く vnode。

lockflag
0 でない場合は、その vnode はロックもされるでしょう。

使用されなくなった時、vnode はフリーリストに保持されます。これらの vnode は有効なファイルを参照していますが、いつでも新しいファイルを参照するため に再利用され得ます。 vnode は、名前キャッシュ等のシステム中のキャッシュの 中にも、しばしば保持されます。

フリーリスト上にある vnode が再利用される時、例えば VOP_LOOKUP(9) を呼び 出した結果名前キャッシュにその vnode が見つかった場合、参照カウントのイン クリメントとフリーリストからの削除のために、新しい使用者は vget() を呼び 出すことが必要です。

関連項目

vnode(9), vput(9), vref(9), vrele(9)

作者

このマニュアルページは Doug Rabson が書きました。

FreeBSD 10.0 July 24, 1996 FreeBSD 10.0

スポンサーリンク