SYNC
Section: Linux Programmer's Manual (2)
Updated: 2007-07-26
Index
JM Home Page
roff page
名前
sync - バッファキャッシュをディスクに書き込む
書式
#include <unistd.h>
void sync(void);
glibc 向けの機能検査マクロの要件
(feature_test_macros(7)
参照):
sync():
_BSD_SOURCE || _XOPEN_SOURCE >= 500
説明
sync()
はまず inode をバッファへ書き込み、
それからバッファ(buffer)をディスクへ書き込む。
エラー
この関数は常に成功する。
準拠
SVr4, 4.3BSD, POSIX.1-2001.
注意
さまざまな標準規格での規定にしたがって、
glibc 2.2.2 から Linux でのプロトタイプは上述のようになった。
libc4, libc5 と、2.2.1 までの glibc では "int sync(void)" で、
sync()
は常に 0 を返していた。
バグ
標準規格 (例えば POSIX.1-2001) によると、
sync()
は書き込むことを予定に
組み込むのみで実際に書き込みが終了する前に戻ってもよいことになっている。
一方で Linux はバージョン 1.3.20 からは書き込みが終了するまで待つ。
(最近のディスクは大きなキャッシュを持っているため、
これはデータの完全性 (data integrity) までは保証していない。)
関連項目
bdflush(2),
fdatasync(2),
fsync(2),
sync(8),
update(8)
Index
- 名前
-
- 書式
-
- 説明
-
- エラー
-
- 準拠
-
- 注意
-
- バグ
-
- 関連項目
-
This document was created by
man2html,
using the manual pages.
Time: 04:32:06 GMT, November 19, 2007