BDFLUSH(2) System Calls Manual BDFLUSH(2)

bdflush - startet und stellt den »buffer-dirty-flush«-Daemon ein, gibt Puffer frei

ÜBERSICHT

#include <sys/kdaemon.h>
[[veraltet]] int bdflush(int Funk, long *Adresse);
[[veraltet]] int bdflush(int Funk, long Daten);

Anmerkung: Seit Linux 2.6 ist dieser Systemaufruf missbilligt und hat keine Funktion mehr. Wahrscheinlich wird er in einer zukünftigen Kernelveröffentlichung wegfallen. Heutzutage wird die Aufgabe, die von bdflush() durchgeführt wurde, vom Kernel-Thread pdflush bearbeitet.

bdflush() startet den »buffer-dirty-flush«-Daemon, stellt ihn ein und veranlasst die Speicherung der Daten von veränderten Puffern (dirty buffers). Nur ein privilegierter Prozess (er muss über die CAP_SYS_ADMIN-Capability verfügen) darf bdflush() ausführen.

Wenn Funk negativ oder 0 ist und kein Daemon gestartet wurde, wechselt bdflush() in den Daemon-Modus und kehrt nicht mehr zurück.

Wenn Funk 1 ist, werden einige veränderte Puffer auf die Platte geschrieben.

Wenn Funk 2 oder größer und gerade ist (das niedrigste Bit 0 ist), dann ist Adresse die Adresse eines Long Words und der Einstell-Parameter Nummer (Funk-2)/2 wird dem Aufrufenden an dieser Adresse zurückgeliefert.

Wenn Funk 3 oder größer und ungerade ist (das niedrigste Bit ist 1), dann ist Daten ein Long Word und der Kernel setzt den Einstell-Parameter mit der Nummer (Funk-3)/2 auf diesen Wert.

Mögliche Parameter, ihre Werte und gültige Wertebereiche sind in der Linux-Kernel-Quelltexdatei fs/buffer.c definiert.

Wenn Funk 0 oder negativ ist und der Daemon erfolgreich gestartet wurde, kehrt bdflush nicht wieder zurück. Ansonsten wird bei Erfolg 0 und -1 bei Fehlern zurückgegeben. errno wird gesetzt, um den Fehler anzuzeigen.

Es wurde versucht, den Daemon-Code aufzurufen, nachdem ihn schon ein anderer Prozess aufgerufen hat.
Adresse liegt außerhalb des vom Programm adressierbaren Speicherbereiches.
Es wurde versucht, eine ungültige Parameternummer zu lesen oder zu schreiben oder einem Parameter einen ungültigen Wert zuzuweisen.
Dem aufrufenden Programm fehlt die CAP_SYS_ADMIN-Capability.

Seit Glibc 2.23 unterstützt Glibc diesen veralteten Systemaufruf nicht mehr.

Die Funktion bdflush() ist Linux-spezifisch und sollte nicht für portable Programme verwendet werden.

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

ÜBERSETZUNG

Die deutsche Übersetzung dieser Handbuchseite wurde von Martin Schulze <joey@infodrom.org>, Martin Eberhard Schauer <Martin.E.Schauer@gmx.de> und Mario Blättermann <mario.blaettermann@gmail.com> erstellt.

Diese Übersetzung ist Freie Dokumentation; lesen Sie die GNU General Public License Version 3 oder neuer bezüglich der Copyright-Bedingungen. Es wird KEINE HAFTUNG übernommen.

Wenn Sie Fehler in der Übersetzung dieser Handbuchseite finden, schicken Sie bitte eine E-Mail an die Mailingliste der Übersetzer.

9. Oktober 2022 Linux-Handbuchseiten 6.01