sync
1. sync.2.man
Manpage of SYNC
SYNC
Section: Руководство программиста Linux (2)Updated: 2010-09-20
Index Return to Main Contents
ИМЯ
sync - записывает буферный кэш на дискОБЗОР
#include <unistd.h>void sync(void);
Требования макроса тестирования свойств для glibc (см. feature_test_macros(7)):
sync():
- _BSD_SOURCE || _XOPEN_SOURCE >= 500 || _XOPEN_SOURCE &&_XOPEN_SOURCE_EXTENDED
ОПИСАНИЕ
sync() сначала записывает индексные дескрипторы (inode) в буферы, а затем сами буферы на диск.ОШИБКИ
Данная функция всегда завершается успешно.СООТВЕТСТВИЕ СТАНДАРТАМ
SVr4, 4.3BSD, POSIX.1-2001.ЗАМЕЧАНИЯ
Начиная с glibc 2.2.2 Linux-прототип, описанный выше, стал соответствовать различным стандартам. В libc4, libc5 и glibc до версии 2.2.1, он объявлялся как "int sync(void)", а sync() всегда возвращала 0.ДЕФЕКТЫ
В соответствии со стандартной спецификацией (например POSIX.1-2001), sync() только планирует запись, и может закончить работу до того как запись будет на самом деле произведена. Однако в Linux, начиная с версии 1.3.20, выполняется ожидание завершения записи. (Это всё равно не гарантирует целостность данных: современные диски оснащаются большими кэшами.)СМОТРИТЕ ТАКЖЕ
bdflush(2), fdatasync(2), fsync(2), sync(8), update(8)
Index
This document was created by man2html using the manual pages.
Time: 17:42:02 GMT, May 11, 2012
2. sync.8.man
Manpage of SYNC
SYNC
Section: Руководство программиста Linux (8)Updated: 1998-11-01
Index Return to Main Contents
ИМЯ
sync - синхронизация данных на диске с данными в памятиОБЗОР
sync [--help] [--version]ОПИСАНИЕ
sync записывает данные, буферизованные в памяти, на диск. Это могут быть (и не только) изменённые суперблоки, индексные дескрипторы, отложенные операции чтения и записи. Буферизация должна быть реализована в ядре. Программа sync всего лишь делает системный вызов sync(2).Ядро хранит данные в памяти во избежание частых (обычно медленных) дисковых операций чтения и записи. Это повышает производительность, но если компьютер аварийно завершает работу, данные могут быть утеряны, либо может быть повреждена файловая система. sync делает всё, чтобы записать на диск все данные, хранящиеся в памяти.
sync должна вызываться перед тем, как процессор будет остановлен каким-то нестандартным образом (например, перед паникой в ядре при отладке). Обычно процессор должен быть остановлен при помощи программ shutdown(8), reboot(8), либо halt(8), которые пытаются перевести систему в неактивное состояние, прежде чем вызывать sync(2). (Существуют различные реализации этих команд; прочтите документацию на вашу систему; на некоторых системах нельзя непосредственно вызывать команды reboot(8) и halt(8).)
ПАРАМЕТРЫ
- --help
- Выдать справку по работе на стандартный вывод и успешно завершить работу.
- --version
- Выдать информацию о версии на стандартный вывод и успешно завершить работу.
- --
- Служит для обозначения конца списка параметров.
ОКРУЖЕНИЕ
Переменные LANG, LC_ALL, LC_CTYPE и LC_MESSAGES имеют своё обычное значение.СООТВЕТСТВИЕ СТАНДАРТАМ
POSIX.2.ЗАМЕЧАНИЯ
В Linux sync всего лишь гарантирует, что будет составлен список "грязных" блоков, которые нужно записать. Прежде чем они действительно будут записаны, пройдёт ещё некоторое время. Команды reboot(8) и halt(8) учитывают это, делая паузу в несколько секунд после вызова sync(2).Данная страница описывает версию sync из пакета fileutils-4.0; другие версии могут немного отличаться.
СМОТРИТЕ ТАКЖЕ
sync(2), halt(8), reboot(8), update(8)
Index
This document was created by man2html using the manual pages.
Time: 17:42:02 GMT, May 11, 2012




