Scroll to navigation

BDFLUSH(2) Podręcznik programisty Linuksa BDFLUSH(2)

NAZWA

bdflush - uruchomienie, wypróżnienie lub dostrojenie demona wypróżniania buforów (bdflush)

SKŁADNIA

#include <sys/kdaemon.h>
int bdflush(int func, long *address);
int bdflush(int func, long data);

Note: There is no glibc wrapper for this system call; see VERSIONS.

OPIS

Note: Since Linux 2.6, this system call is deprecated and does nothing. It is likely to disappear altogether in a future kernel release. Nowadays, the task performed by bdflush() is handled by the kernel pdflush thread.

bdflush() starts, flushes, or tunes the buffer-dirty-flush daemon. Only a privileged process (one with the CAP_SYS_ADMIN capability) may call bdflush().

Jeśli func jest liczbą ujemną, lub zerem, a demon nie był uruchomiony, bdflush() wchodzi w kod daemona i nigdy nie powraca.

Jeśli func wynosi 1, niektóre bufory są zapisywane na dysk.

Jeśli func wynosi 2 lub więcej i jest parzyste (najniższy bit jest 0), to address jest adresem długiego słowa, a parametr dostrajający o numerze (func-2)/2 zostaje zwrócony pod tym adresem do wywołującego.

Jeśli func jest równe 3, lub więcej i jest nieparzyste (najniższy bit wynosi 1), to data jest długim słowem, a kernel nadaje tę wartość parametrowi dostrajającemu o numerze (func-3)/2.

The set of parameters, their values, and their valid ranges are defined in the Linux kernel source file fs/buffer.c.

WARTOŚĆ ZWRACANA

Jeśli func jest ujemne lub jest zerem, a demon uruchomi się pomyślnie, bdflush() nigdy nic nie zwraca.W pozostałych wypadkach po pomyślnym zakończeniu funkcji zwracana jest wartość 0, a w przypadku błędu zwracana jest wartość -1 i ustawiane errno wskazując rodzaj błędu.

BŁĘDY

Próbowano wejść w kod demona po tym, jak inny proces zrobił to samo.
address wskazuje poza dostępną dla użytkownika przestrzeń adresową.
Próbowano odczytać lub zapisać nieprawidłowy numer parametru, lub nadać parametrowi nieprawidłową wartość.
Caller does not have the CAP_SYS_ADMIN capability.

WERSJE

Since version 2.23, glibc no longer supports this obsolete system call.

ZGODNE Z

bdflush() jest specyficzne dla Linuksa i nie powinno być używane w przenośnych programach.

ZOBACZ TAKŻE

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

O STRONIE

Angielska wersja tej strony pochodzi z wydania 5.13 projektu Linux man-pages. Opis projektu, informacje dotyczące zgłaszania błędów oraz najnowszą wersję oryginału można znaleźć pod adresem https://www.kernel.org/doc/man-pages/.

TŁUMACZENIE

Autorami polskiego tłumaczenia niniejszej strony podręcznika są: Przemek Borys <pborys@dione.ids.pl> i Andrzej Krzysztofowicz <ankry@green.mf.pg.gda.pl>

Niniejsze tłumaczenie jest wolną dokumentacją. Bliższe informacje o warunkach licencji można uzyskać zapoznając się z GNU General Public License w wersji 3 lub nowszej. Nie przyjmuje się ŻADNEJ ODPOWIEDZIALNOŚCI.

Błędy w tłumaczeniu strony podręcznika prosimy zgłaszać na adres listy dyskusyjnej manpages-pl-list@lists.sourceforge.net.

22 marca 2021 r. Linux