Manpages

NAZWA

cacheflush - wypróżnienie zawartości bufora podręcznego z instrukcjami i/lub z danymi

SKŁADNIA

#include <asm/cachectl.h>

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

OPIS

cacheflush wypróżnia zawartość wskazanego(-ych) bufora(-ów) podręcznego(-ych) dla adresów przestrzeni użytkownika w zakresie od addr do (addr+nbytes-1). Parametr cache może być jednym z:

ICACHE

Wypróżnia bufor z instrukcjami.

DCACHE

Zapisuje z powrotem do pamięci i unieważnia dotknięte tym prawidłowe linie buforowe.

BCACHE

Identyczne z (ICACHE|DCACHE).

WARTOŚĆ ZWRACANA

cacheflush() zwraca 0 po pomyślnym zakończeniu, a -1 w wypadku błędu. Jeśli wystąpi błąd, errno będzie wskazywać jego rodzaj.

BŁĘDY

EFAULT

Część lub cała przestrzeń od addr do (addr+nbytes-1) jest niedostępna.

EINVAL

cache is not one of ICACHE, DCACHE, or BCACHE (but see BUGS).

ZGODNE Z

Historically, this system call 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.

BŁĘDY

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 always behaves as if BCACHE has been passed for the cache argument and does not do any error checking on the cache argument.

O STRONIE

Angielska wersja tej strony pochodzi z wydania 5.07 projektu Linux man-pages. Opis projektu, informacje dotyczące zgłaszania błędów oraz najnowszą wersję oryginału można znaleźć pod adresem https://www.kernel.org/doc/man-pages/.

TŁUMACZENIE

Autorami polskiego tłumaczenia niniejszej strony podręcznika są: Przemek Borys <pborys [AT] dione.pl> i Andrzej Krzysztofowicz <ankry [AT] green.pl>

Niniejsze tłumaczenie jest wolną dokumentacją. Bliższe informacje o warunkach licencji można uzyskać zapoznając się z GNU General Public License w wersji 3 lub nowszej. Nie przyjmuje się ŻADNEJ ODPOWIEDZIALNOŚCI.

Błędy w tłumaczeniu strony podręcznika prosimy zgłaszać na adres <manpages-pl-list [AT] lists.net>.