summaryrefslogtreecommitdiff
path: root/gnulib/doc/stat-size.texi
diff options
context:
space:
mode:
Diffstat (limited to 'gnulib/doc/stat-size.texi')
m---------gnulib0
-rw-r--r--gnulib/doc/stat-size.texi25
2 files changed, 25 insertions, 0 deletions
diff --git a/gnulib b/gnulib
deleted file mode 160000
-Subproject 443bc5ffcf7429e557f4a371b0661abe98ddbc1
diff --git a/gnulib/doc/stat-size.texi b/gnulib/doc/stat-size.texi
new file mode 100644
index 0000000..17b5be9
--- /dev/null
+++ b/gnulib/doc/stat-size.texi
@@ -0,0 +1,25 @@
+@node stat-size
+@section stat-size
+
+The @code{stat-size} module provides a small number of macros
+intended for interpreting the file size information in an instance of
+@code{struct stat}.
+
+@c We deliberately don't document DEV_BSIZE (it looks to James
+@c Youngman as if the ST_NBLOCKSIZE macro should be used instead).
+
+@findex ST_NBLOCKS
+@findex ST_NBLOCKSIZE
+@cindex block size
+On POSIX systems, the @code{st_blocks} member of @code{struct stat}
+contains the number of disk blocks occupied by a file. The
+@code{ST_NBLOCKS} macro is used to estimate this quantity on systems
+which don't actually have @code{st_blocks}. Each of these blocks
+contains @code{ST_NBLOCKSIZE} bytes.
+
+@findex ST_BLKSIZE
+The value of @code{ST_NBLOCKSIZE} is often quite small, small enough
+that performing I/O in chunks that size would be inefficient.
+@code{ST_BLKSIZE} is the I/O block size recommended for I/O to this
+file. This is not guaranteed to give optimum performance, but it
+should be reasonably efficient.