BEZEICHNUNG

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);

BESCHREIBUNG

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.

RÜCKGABEWERT

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.

FEHLER

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

VERSIONEN

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

STANDARDS

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

SIEHE AUCH

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

ÜBERSETZUNG

Die deutsche Übersetzung dieser Handbuchseite wurde von Martin Schulze <[email protected]>, Martin Eberhard Schauer <[email protected]> und Mario Blättermann <[email protected]> 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

Recommended readings

Pages related to bdflush you should read also: