SYNC(2)

名前
sync - バッファキャッシュ(buffer cache)の内容をディスクに書き込む

書式
#include <unistd.h>

int sync(void);

説明
sync は、まずiノード(inodes)をバッファに書き込み、 その後でバッファ(buffers)をディスクに書き込む。

返り値
sync は常に 0 を返す。

準拠
SVID, AT&T, X/OPEN, BSD 4.3

バグ
SVID等の標準規格によると、 sync() は書き込むことをスケジュール(schedules)するものの、 実際に書き込みが終了する前に戻ってもいいことになっている。 しかしながら、Linuxのバージョン1.3.20からは書き込みが終了するまで待つ ようになっている (データの保全性(data integrity)までは保証していない。 今のディスクは大きなキャッシュ(cache)を持っているためである)。

関連項目
bdflush(2), fsync(2), fdatasync(2), update(8), sync(8)