Museum

Home

Lab Overview

Retrotechnology Articles

⇒ Online Manual

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

cron(8)

sync(8)

FSYNC(2)  —  SYSTEM CALLS

NAME

fsync − synchronize a file’s in-core state with that on disk

SYNOPSIS

int fsync(fd)

int fd;

DESCRIPTION

fsync() moves all modified data and attributes of fd to a permanent storage device: all in-core modified copies of buffers for the associated file have been written to a disk when the call returns.  Note: this is different than sync(8) which schedules disk I/O for all files (as though an fsync() had been done on all files) but returns before the I/O completes. 

fsync() should be used by programs which require a file to be in a known state; for example, a program which contains a simple transaction facility might use it to ensure that all modifications to a file or files caused by a transaction were recorded on disk. 

RETURN VALUE

A 0 value is returned on success.  A −1 value indicates an error. 

ERRORS

The fsync() fails if:

EBADF fd is not a valid descriptor. 

EINVAL fd refers to a socket, not a file. 

EIO An I/O error occurred while reading from or writing to the file system. 

SEE ALSO

cron(8), sync(8)

BUGS

The current implementation of this call is expensive for large files. 

Sun Release 4.0  —  Last change: 19 November 1987

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026