SYNC(2)

名称
sync - ファイルシステムの更新をスケジュールする

ライブラリ
libc

書式
<unistd.h> void sync(void)

解説
sync() 関数は、ブロックバッファキャッシュの修正済み バッファをディスクに強制的に書き出します。カーネルは この情報をメモリ上に維持し、システムが要求するディスク I/O 転送の数を減らします。システムのクラッシュ後に キャッシュの情報が失われると、ユーザプロセス syncer(4) が sync() を頻繁に呼び出します (約 30 秒ごと)。

それぞれのファイル記述子属性の同期を取るには、関数 fsync(2) を使用します。

関連項目
fsync(2), syncer(4), sync(8)

バグ
sync() は、バッファが完全にフラッシュされる前に戻る ことがあります。

歴史
sync() 関数呼び出しは、 AT&T UNIX で登場しました。