table of contents
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¶
- EPERM
- Wywołujący nie jest superużytkownikiem.
- EFAULT
- address wskazuje poza dostępną dla użytkownika przestrzeń adresową.
- EBUSY
- Próbowano wejść w kod demona po tym, jak inny proces zrobił to samo.
- EINVAL
- 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¶
1995-04-15 | Linux 1.2.4 |