CACHEFLUSH(2)

BEZEICHNUNG
cacheflush - Befehls- und/oder Datencache(s) zurückschreiben und freigeben

ÜBERSICHT
#include <asm/cachectl.h>

int cacheflush(char *addr, int nbytes, int cache);

BESCHREIBUNG
cacheflush() schreibt den Inhalt der angegebenen Cache(s) für den Benutzeradressbereich addr bis (addr+nbytes-1) in den Speicher zurück. cache ist eine der folgenden Konstanten:

ICACHE
    den Befehlscache freigeben

DCACHE
    zurück in den Speicher schreiben und die betroffenen Bereiche des Caches für ungültig erklären, also freigeben.

BCACHE
    identisch mit (ICACHE|DCACHE)

RÜCKGABEWERT
cacheflush() gibt 0 bei Erfolg oder -1 im Fehlerfall zurück. Sollten Fehler erkannt werden, ist der Fehler in errno kodiert.

FEHLER

EFAULT
    Auf den Adressbereich von addr bis (addr+nbytes-1) kann (ganz oder teilweise) nicht zugegriffen werden.

EINVAL
    Dem Parameter cache ist keiner der Werte ICACHE, DCACHE oder BCACHE zugewiesen (siehe aber auch FEHLER).

KONFORM ZU
Historically, this system calls was available on all MIPS UNIX variants including RISC/os, IRIX, Ultrix, NetBSD, OpenBSD, and FreeBSD (and also on some non-UNIX MIPS operating systems), so that the existence of this call in MIPS operating systems is a de-facto standard.

  Caveat
cacheflush() should not be used in programs intended to be portable. On Linux, this call first appeared on the MIPS architecture, but nowadays, Linux provides a cacheflush() system call on some other architectures, but with different arguments.

FEHLER
Linux kernels older than version 2.6.11 ignore the addr and nbytes arguments, making this function fairly expensive. Therefore, the whole cache is always flushed.

This function is always behaving as if BCACHE has been passed for the cache argument and does not do any error checking on the cache argument.

KOLOPHON
Diese Seite ist Teil der Veröffentlichung 4.04 des Projekts Linux-man-pages. Eine Beschreibung des Projekts, Informationen, wie Fehler gemeldet werden können sowie die aktuelle Version dieser Seite finden sich unter http://www.kernel.org/doc/man-pages/.

ÜBERSETZUNG
Die deutsche Übersetzung dieser Handbuchseite wurde von Ralf Baechle <ralf@waldorf-gmbh.de> und Martin Eberhard Schauer <Martin.E.Schauer@gmx.de> 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 <debian-l10n-german@lists.debian.org>.