ИМЯ¶
sync - записывает
буферный кэш
на диск
ОБЗОР¶
#include <unistd.h>
void sync(void);
ОПИСАНИЕ¶
sync сперва
записывает
индексные
дескрипторы
(inode) в буферы и
затем буферы
на диск.
ОШИБКИ¶
Данная
функция
всегда
выполняется
без ошибок.
СООТВЕТСТВИЕ
СТАНДАРТАМ¶
SVr4, SVID, X/OPEN, BSD 4.3
БАГИ¶
В
соответствии
со
стандартной
спецификацией
(например SVID),
функция
sync()
выполняет
запись, но
возврат из
неё может
произойти
перед тем
как запись
будет
фактически
завершена.
Однако,
начиная с
версии 1.3.30, Linux
выполняет
ожидание
окончания
записи. (Это
впрочем не
гарантирует
целостность
данных:
современные
диски имеют
свои
собственные
большие
кэши).
ЗАМЕЧАНИЯ¶
Начиная с glibc 2.2.2
прототип
функции в Linux
такой как
показано
выше. В libc4, libc5, и glibc
до версии 2.2.1,
он выглядит
как "int sync(void)" и sync
всегда
возвращает 0.
СМОТРИ
ТАКЖЕ¶
bdflush(2),
fsync(2),
fdatasync(2),
update(8),
sync(8)
ПЕРЕВОД¶
Перевёл с
английского
Виктор
Вислобоков
<corochoone@perm.ru> 2004
ПЕРЕВОД¶
Перевёл с
английского
Виктор
Вислобоков
<corochoone@perm.ru> 2004