bdflush - запуск, сброс или настройка демона, записывающего информацию из буфера памяти на диск
НАЗВАНИЕbdflush - запуск, сброс или настройка демона,
записывающего информацию из буфера памяти на диск
СИНТАКСИС
int bdflush(int func, long *address);
int bdflush(int func, long data);
ОПИСАНИЕ
bdflush предназначен для запуска, сброса или настройки
демона, записывающего информацию из буфера памяти на диск.
Вызов bdflush может быть сделан только суперпользователем.
Если значение func отрицательное или равно 0, а демон не
запущен, тогда bdflush запускает демона и не возвращается.
Если значение func равно 1, информация некоторых буферов
будет записана на диск.
Если значение func больше или равно двум и является четным
числом (младший бит равен 0), тогда address является
длинным целым числом, а параметр настройки с номером
(func-2)/2 возвращается вызывавшему по этому адресу.
Если значение func больше либо равно 3 и является нечетным
числом (младший бит равен 1), тогда data является длинным
словом, а параметр настройки с номером (func-3)/2
приобретает данное значение.
Набор параметров, их значений и диапазонов этих значений
определяется в файле fs/buffer.c.
ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ
Если func отрицательна или равна нулю и демон успешно
запустился, то bdflush никогда не возвращается. В случае
успешного выполнения задания возвращаемое значение равно
нулю, а в случае ошибки оно равно -1, и переменной errno
присваивается соответствующее значение.
КОДЫ ОШИБОК
EPERM Функция вызвана пользователем, который не обладает
правами суперпользователя.
EFAULT address находится за пределами доступного адресного
пространства.
EBUSY Попытка запустить уже запущенный демон.
EINVAL Попытка прочитать или записать параметр с неверным
номером или записать неверное его значение.
СООТВЕТСТВИЕ СТАНДАРТАМ
bdflush является функцией, предназначенной только для
работы в Linux, поэтому не должна использоваться в
программах, переносимых на другие платформы.