VFS_SET(9) | FreeBSD Kernel Developer's Manual | VFS_SET(9) |
名称
VFS_SET — ロード可能なファイルシステムを設定する vfsconf のセットアップ書式
#include < sys/param.h>#include < sys/kernel.h>
#include < sys/module.h>
#include < sys/mount.h>
void
VFS_SET( struct vfsops *vfsops, fsname, int flags);
解説
VFS_SET() は、与えられた vfsops, fsname と flags でロード可能なモジュールのための vfsconf 構造体を作成し、イベントハンドラとして vfs_modevent() を使用して DECLARE_MODULE(9) を呼び出すことによって宣言します。flags 引数のために指定できる値は、次の通りです:
- VFCF_STATIC
- ファイルシステムは、カーネルで静的に利用可能であるべきです。
- VFCF_NETWORK
- ネットワークにエクスポート可能なファイルシステム。
- VFCF_READONLY
- 書き込み操作をサポートしていません。
- VFCF_SYNTHETIC
- データがディスクのファイルを表さない、疑似ファイルシステム。
- VFCF_LOOPBACK
- ループバックファイルシステムレイヤ (層)。
- VFCF_UNICODE
- ファイル名は、Unicode として格納されます。
- VFCF_JAIL
- security.jail.mount_allowed sysctl が 1 に設定されるなら、jail 内からマウントすることができます。
- VFCF_DELEGADMIN
- vfs.usermount sysctl が 1 に設定されるなら、代理 (delegate) 管理をサポートします。
- VFCF_SBDRY
- VFS メソッドであるとき、スレッドのサスペンション (保留) は、停止アクションの到着でユーザの限界に延期されます。
疑似コード
/* * 特別の方法があるフィールドに書き込みます. 他のものは, 最初は null です. * これは, ファイルシステムの登録の間に, それらを vfs_std* 関数への * ポインタに変更するように vfs に伝えます. */ static struct vfsops myfs_vfsops = { .vfs_mount = myfs_mount, .vfs_root = myfs_root, .vfs_statfs = myfs_statfs, .vfs_unmount = myfs_unmount, }; VFS_SET(myfs_vfsops, myfs, 0);
作者
このマニュアルページは、 <davidc@acns.ab.ca>によって書かれました。February 21, 2013 | FreeBSD |