[<<Previous Entry]
[^^Up^^]
[Next Entry>>]
[Menu]
[About The Guide]
Ожидание физической записи на диск
fsync(2) осуществляет те же функции, что и open(2) с флагом O_SYNC.
fsync(2) завершается только после переноса данных на физический
носитель. В отличие от флага O_SYNC, который заставляет ждать все
записи, fsync(2) может быть использован для избирательного контроля.
fsync(2) может быть использован программами, для которых необходимо,
чтобы файл находился в заданном состоянии. Например, программа,
которая содержит простейшие возможности выполнения транзакций, должна
использовать fsync(2), чтобы гарантировать, что все модификации файла
или файлов, осуществленные в процессе транзакции, были записаны на
носитель.
Системный вызов sync(2) упорядочивает вызовы ввода/вывода, но может
вернуться прежде, чем эти операции будут завершены. Это касается
модифицированных суперблоков, модифицированных inode и отложенного
блочного ввода/вывода. Этот вызов должен использоваться программами,
которые анализируют файловую систему, и не рекомендуется к
использованию прикладными программами общего назначения. Система
автоматически производит регулярные вызовы sync(2).
Новое в SVR4: fsync(2)
ОЖИДАНИЕ ФИЗИЧЕСКОЙ ЗАПИСИ
fsync(2)
ИМЯ
fsync - синхронизирует состояние файла в памяти с состоянием на
физическом носителе.
ИСПОЛЬЗОВАНИЕ
#include <unistd.h>
int fsync(int fildes);
ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ
успех - 0
неуспех - -1 и errno установлена