NAME
ustat() — get mounted file system statistics
SYNOPSIS
#include <ustat.h>
int ustat(dev_t dev, struct ustat *buf);
DESCRIPTION
The
ustat()
system call returns information about a mounted file system.
dev
is a device number identifying a device containing a mounted file system.
buf
is a pointer to a
ustat
structure (defined in
<ustat.h>)
that includes the following elements:
int32_t f_tfree; /* Total free blocks */
ino_t f_tinode; /* Number of free inodes */
char f_fname[6]; /* Filsys name or null */
char f_fpack[6]; /* Filsys pack name or null */
int f_blksize; /* Block size */
The value of
f_tfree
is the number of free blocks of size
f_blksize.
RETURN VALUE
ustat()
returns the following values:
- 0
Successful completion.
- -1
Failure.
errno
is set to indicate the error.
ERRORS
If
ustat()
fails,
errno
is set to one of the following values.
- [EFAULT]
buf
points outside the process's allocated address space.
The reliable detection of this error is implementation dependent.
- [EINVAL]
dev
is not the device number of a device containing a mounted file system.
- [EOVERFLOW]
Result would overflow
f_tfree
or another field of the
ustat
struct.
WARNINGS
ustat()
is deprecated and should be used only by legacy 32-bit applications.
statvfs()
or
statvfs64()
are the recommended replacements.
For some file systems,
the number of free inodes does not change.
Such file systems will return
-1
in the field
f_tinode.
For some file systems,
the inodes can be dynamically allocated.
For such file systems, the field
f_tinode
contains the number of free inodes at the current time.
AUTHOR
ustat()
was developed by AT&T and HP.
STANDARDS CONFORMANCE
ustat(): SVID2, SVID3, XPG2