総合手引 | セクション 3 | オプション |
#include <sys/param.h>
#include <sys/mount.h>
vfc_name | ファイルシステムの名前。 |
vfc_index | カーネルによって割り当てられ mount(2) の呼び出しに使用された、ファイルシステムのタイプ番号。 |
vfc_refcount | このファイルシステムの参照数 (通常はマウント数ですが、 アンロードできないかカーネルに静的にリンクされている ファイルシステムでは、マウント数に 1 を加えたものになります)。 |
vfc_flags | フラグビット。 |
フラグは次のように定義されています:
VFCF_STATIC | カーネルに静的に組み込まれている |
VFCF_NETWORK | データをネットワーク経由で取得し得る |
VFCF_READONLY | 書き込みは未実装 |
VFCF_SYNTHETIC | |
データは実ファイルを表現しない | |
VFCF_LOOPBACK | マウント済みのファイルシステムに対する別名 |
VFCF_UNICODE | ファイル名を Unicode で格納 |
setvfsent() および endvfsent() 関数は、 sysctl(3) によってカーネル からまとめて取得されるファイルシステムリストの、キャッシング制御に 使用されます。 setvfsent() の cachelist パラメータが 0 でなければ、これら 検索関数のどれかを最初に呼び出した時点でリストはただ 1 回だけ取り出され、 キャッシュをクリアするために endvfsent() が呼び出されるまで保持されます。 一般に setvfsent(1) は、 getvfsent() を使用するプログラムによって呼び出される必要があり、 setvfsent() は (これもデフォルトの状態で)、 vfsload() 関数を使用するプログラムによって呼び出される必要があります。
vfsisloadable() 関数は、後で vfsload(name) の呼び出しが続きそうだと非 0 値を返します。ここで "そう" と言うのは、 vfsisloadable() は vfsload() が成功するための条件をチェックしないからです。
vfsload() 関数は、ファイルシステム name の実装カーネルモジュールをロード しようと試みます。ファイルシステムモジュールを無事に突き止めてロードした 場合は 0 が、その他の場合は非 0 が返ります。この関数を呼び出せるのは次に 示す状況だけです。
mount_cd9660(8) のソースから取った使用例を次に示します。
struct vfsconf *vfc; int error;/* ここにセットアップコードが入る */
error = getvfsbyname("cd9660", &vfc); if (error && vfsisloadable("cd9660")) { if (vfsload("cd9660")) err(EX_OSERR, "vfsload(cd9660)"); endvfsent(); /* flush cache */ error = getvfsbyname("cd9660", &vfc); } if (error) errx(1, "cd9660 filesystem is not available");
if (mount(vfc.vfc_name, dir, mntflags, &args) < 0) err(1, NULL);
vfsload() 関数は失敗すると非 0 値を、成功すると 0 を返します。 vfsload() が失敗した場合、 kldload(2) 用に記述された errno 値が設定され得ます。
GETVFSENT (3) | September 24, 1994 |
総合手引 | セクション 3 | オプション |
このマニュアルページサービスについてのご意見は Ben Bullock にお知らせください。 Privacy policy.
“ | Our grievance is not just against Unix itself, but against the cult of Unix zealots who defend and nurture it. They take the heat, disease, and pestilence as givens, and, as ancient shamans did, display their wounds, some self-inflicted, as proof of their power and wizardry. We aim, through bluntness and humor, to show them that they pray to a tin god, and that science, not religion, is the path to useful and friendly technology. | ” |
— The Unix Haters' handbook |