search

Module Unix.LargeFile

module LargeFile: sig .. end
File operations on large files. This sub-module provides 64-bit variants of the functions Unix.lseek (for positioning a file descriptor), Unix.truncate and Unix.ftruncate (for changing the size of a file), and Unix.stat, Unix.lstat and Unix.fstat (for obtaining information on files). These alternate functions represent positions and sizes by 64-bit integers (type int64) instead of regular integers (type int), thus allowing operating on files whose sizes are greater than max_int.

val lseek : Unix.file_descr -> int64 -> Unix.seek_command -> int64
val truncate : string -> int64 -> unit
val ftruncate : Unix.file_descr -> int64 -> unit
type stats = {
   st_dev :int; (*Device number*)
   st_ino :int; (*Inode number*)
   st_kind :Unix.file_kind; (*Kind of the file*)
   st_perm :Unix.file_perm; (*Access rights*)
   st_nlink :int; (*Number of links*)
   st_uid :int; (*User id of the owner*)
   st_gid :int; (*Group ID of the file's group*)
   st_rdev :int; (*Device minor number*)
   st_size :int64; (*Size in bytes*)
   st_atime :float; (*Last access time*)
   st_mtime :float; (*Last modification time*)
   st_ctime :float; (*Last status change time*)
}
val stat : string -> stats
val lstat : string -> stats
val fstat : Unix.file_descr -> stats