Provided by: manpages-ru-dev_4.27.0-1_all bug

НАИМЕНОВАНИЕ

       bdflush - запускает, сбрасывает на диск или настраивает службу записи буферов кэша

ОБЗОР

       #include <sys/kdaemon.h>

       [[deprecated]] int bdflush(int func, long *address);
       [[deprecated]] int bdflush(int func, long data);

ОПИСАНИЕ

       Замечание: Начиная с Linux 2.6, данный системный вызов считается устаревшим и ничего не делает. Вероятно,
       он будет удалён в будущих версиях ядра. Сейчас задачу bdflush() выполняет нить ядра pdflush.

       bdflush()  запускает,  сбрасывает  на  диск  или настраивает службу записи буферов кэша. Только процесс с
       определёнными правами (с мандатом CAP_SYS_ADMIN) может вызвать bdflush().

       Если значение func отрицательно или 0,  и  служба  не  запущена,  то  bdflush()  запускает  службу  и  не
       возвращает управление.

       Если значение func равно 1, то некоторые «грязные» (dirty) буферы записываются на диск.

       Если  значение  func  равно 2 или более и чётно (младший бит равен 0), то в address задаётся адрес ячейки
       размером с длинное слово, и по этому адресу возвращается для вызывающего процесса  параметр  настройки  с
       номером (func-2)/2.

       Если  значение func равно 3 или более и не чётно (младший бит равен 1), то аргумент data является длинным
       словом, и ядро устанавливает в это значение параметр настройки с номером (func-3)/2.

       Набор параметров и разрешённых диапазонов их значений определён в файле fs/buffer.c исходного  кода  ядра
       Linux.

ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ

       Если  аргумент  func отрицателен или равен нулю, и служба запускается успешно, то bdflush() не возвращает
       управление. В противном случае при успешном запуске возвращается ноль, и -1 в  случае  ошибки,  при  этом
       errno устанавливается в соответствующее значение.

ОШИБКИ

       EBUSY  Попытка запустить службу, которая уже запущена.

       EFAULT address указывает за пределы доступного адресного пространства.

       EINVAL Попытка прочитать или записать параметр с неверным номером, или записать неверное значение.

       EPERM  Вызывающий процесс не имеет мандата CAP_SYS_ADMIN.

СТАНДАРТЫ

       Linux.

ИСТОРИЯ

       Начиная с glibc 2.23, glibc больше не поддерживает этот устаревший системный вызов.

СМОТРИТЕ ТАКЖЕ

       sync(1), fsync(2), sync(2)

ПЕРЕВОД

       Русский  перевод  этой  страницы руководства разработал(и) Artyom Kunyov <artkun@guitarplayer.ru>, Azamat
       Hackimov <azamat.hackimov@gmail.com>, Dmitriy  Ovchinnikov  <dmitriyxt5@gmail.com>,  Dmitry  Bolkhovskikh
       <d20052005@yandex.ru>,  ITriskTI  <ITriskTI@gmail.com>,  Yuri  Kozlov  <yuray@komyakino.ru>,  Иван Павлов
       <pavia00@gmail.com> и Kirill Rekhov <krekhov.dev@gmail.com>

       Этот перевод является свободной программной документацией; он распространяется на условиях  общедоступной
       лицензии  GNU  (GNU  General Public License - GPL, https://www.gnu.org/licenses/gpl-3.0.html версии 3 или
       более поздней) в отношении авторского права, но БЕЗ КАКИХ-ЛИБО ГАРАНТИЙ.

       Если вы обнаружите какие-либо ошибки в переводе этой страницы руководства, пожалуйста, сообщите  об  этом
       разработчику(ам)   по   его(их)  адресу(ам)  электронной  почты  или  по  адресу  списка рассылки русских
       переводчиков.

Справочные страницы Linux 6.9.1                   2 мая 2024 г.                                       bdflush(2)