The POSIX systems to which I have access all include moving modified
file data and attributes to permanent storage in their description of
the fsync(2) system call. And from my knowledge of the internals of
three of these systems (HP-UX, SPP-UX, and ConvexOS), I know that the
system call does not return until the writes have completed.
This functionality is necessary to support applications that
periodically checkpoint themselves. They don't want to remove the old
checkpoint file until they are sure the new file is on disk.
-- Steve Landherr -- landherr@convex.hp.com -- (972)497-4104 Kernel Software Development -- File Systems Convex Division of Hewlett-Packard Company -- Richardson, Texas