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

int bdflush(int func, long *address);
int bdflush(int func, long data);

OPIS

bdflush uruchamia, wypróżnia, lub dostraja demona bdflush. Tylko superużytkownik może wywołać 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.

Zestaw parametrów, ich wartości i dozwolonych zakresów jest zdefiniowany w kodzie źdródłowym kernela, w pliku 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

Wywołujący nie jest superużytkownikiem.
address wskazuje poza dostępną dla użytkownika przestrzeń adresową.
Próbowano wejść w kod demona po tym, jak inny proces zrobił to samo.
Próbowano odczytać lub zapisać nieprawidłowy numer parametru, lub nadać parametrowi nieprawidłową wartość.

ZGODNE Z

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

ZOBACZ TAKŻE

fsync(2), sync(2), update(8), sync(8).

1995-04-15 Linux 1.2.4