スポンサーリンク

GETFSSTAT(2) FreeBSD システムコールマニュアル GETFSSTAT(2)

名称

getfsstat − マウントされたすべてのファイルシステムのリストを得る

ライブラリ

標準 C ライブラリ (libc, −lc)

書式

#include <sys/param.h>
#include <sys/ucred.h>
#include <sys/mount.h>

int

getfsstat(struct statfs *buf, long bufsize, int flags);

解説

getfsstat() システムコールは、マウントされたすべてのファイルシステムに関 する情報を返します。 buf 引数は statfs(2) に記述された statfs 構造体への ポインタです。

特定のファイルシステムについて未定義となるフィールドは -1 に設定されま す。バッファは fsstat 構造体の配列で埋められます。マウントされた各ファイ ルシステムについて 1 つずつ、最高 bufsize で指定されたバイト数までです。 bufsize 引数は、 buf が保持することができるバイト数であり、保持することが できる statfs 構造体の数ではないことに、注意して下さい。

buf として NULL が指定されている場合、 getfsstat() はマウントされている ファイルシステムの数のみを返します。

通常、 flags には MNT_WAIT を指定するべきです。 flags として MNT_NOWAIT が指定されている場合、 getfsstat() は各ファイルシステムからの更新を要求せ ずに利用できる情報を返します。そのため、情報のうちには古くなっているもの があるでしょうが、 getfsstat() は応答できないファイルシステムからの情報を 待機してブロックすることはありません。

戻り値

正常に完了すると fsstat 構造体の数が返されます。そうでない場合は -1 が返 され、エラーを示すためにグローバル変数 errno が設定されます。

エラー

getfsstat() システムコールは以下の 1 つでも真の場合、処理に失敗します:

       [EFAULT]

buf 引数が無効なアドレスを指しています。

[EIO]
ファイルシステムを読み書きしている間に I/O (入出力) エ ラーが発生しました。

関連項目

statfs(2), fstab(5), mount(8)

歴史

getfsstat() システムコールは 4.4BSD ではじめて登場しました。

FreeBSD 10.0 November 20, 2003 FreeBSD 10.0

スポンサーリンク