名 前
ustat − フ ァ イ ル シ ス テ ム (file system) の 統 計 を 得 る
書 式
#include
<sys/types.h>
#include <unistd.h> /* libc[45] */
#include <ustat.h> /* glibc2 */
int ustat(dev_t dev, struct ustat *ubuf);
説 明
ustat() は マ ウ ン ト (mount) さ れ た フ ァ イ ル シ ス テ ム の 情 報 を 返 す 。 dev は 調 べ る フ ァ イ ル シ ス テ ム を 含 ん で い る デ バ イ ス (device) の デ バ イ ス 番 号 。 ubuf は 以 下 の メ ン バ ー を 含 む ustat 構 造 体 へ の ポ イ ン タ ー :
daddr_t
f_tfree; /* Total free blocks */
ino_t f_tinode; /* Number of free inodes */
char f_fname[6]; /* Filsys name */
char f_fpack[6]; /* Filsys pack name */ 後 の
二 つ の フ ィ ー
ル ド f_fname と f_fpack
は 実 装 さ れ て
お ら ず 、 常 に
ヌ ル バ イ ト ('\0') で
埋 め ら れ る 。
返 り 値
成 功 し た 場 合 に は ゼ ロ が 返 さ れ 、 ubuf が 指 す ustat 構 造 体 が 埋 め ら れ る 。 エ ラ ー の 場 合 は −1 が 返 さ れ 、 errno が 適 切 に 設 定 さ れ る 。
エ ラ ー
EFAULT |
ubuf が ア ク セ ス 可 能 な 空 間 の 外 側 を 指 し て い る 。 | ||
EINVAL |
dev が マ ウ ン ト さ れ た フ ァ イ ル シ ス テ ム を 含 む デ バ イ ス を 参 照 し て い な い 。 | ||
ENOSYS |
dev で 参 照 さ れ る マ ウ ン ト さ れ た フ ァ イ ル シ ス テ ム が こ の 操 作 (operation) を サ ポ ー ト し て い な い か 、 Linux の バ ー ジ ョ ン が 1.3.16 以 前 で あ る 。 |
準 拠
SVr4.
注 意
ustat() は 推 奨 さ れ ず 、 互 換 性 の た め だ け に 提 供 さ れ る 。 新 し い プ ロ グ ラ ム は 全 て こ れ の 代 り に statfs(2) を 使 用 す る べ き で あ る 。
HP−UX
に お け る 注 意
HP−UX 版 の 構 造 体
ustat に は 、 そ の
他 に フ ィ ー ル
ド f_blksize が 存 在
す る が 、 他 で
は 見 か け な い
。 HP−UX は 次 の よ
う に 警 告 し て
い る : フ ァ イ ル
シ ス テ ム の 中
に は 、 解 放 さ
れ て い る inode の 数
を 変 更 し な い
も の も あ る 。
こ の よ う な フ
ァ イ ル シ ス テ
ム は 、 フ ィ ー
ル ド f_tinode に −1 を
返 す 。 フ ァ イ
ル シ ス テ ム の
中 に は 、 inode を 動
的 に 確 保 す る
も の も あ る 。
こ の よ う な フ
ァ イ ル シ ス テ
ム は 、 現 在 解
放 さ れ て い る inode
の 数 を 返 す 。
関 連 項 目
こ の 文 書 に つ い て
こ の man ペ ー ジ は Linux man−pages プ ロ ジ ェ ク ト の リ リ ー ス 3.79 の 一 部 で あ る 。 プ ロ ジ ェ ク ト の 説 明 と バ グ 報 告 に 関 す る 情 報 は http://www.kernel.org/doc/man−pages/ に 書 か れ て い る 。