Scroll to navigation

CACHEFLUSH(2) Manual del Programador de Linux CACHEFLUSH(2)

NOMBRE

cacheflush - vacía el contenido de la caché de instrucciones y/o datos

SINOPSIS

#include <asm/cachectl.h>
int cacheflush(char *addr, int nbytes, int cache);

DESCRIPCIÓN

cacheflush() vacía el contenido de la(s) caché(s) indicada(s) por las direcciones de usuario en el rango addr a (addr+nbytes-1). cache puede ser uno de los siguientes valores:

Purga la caché de instrucciones.
Escribe en memoria e invalida las líneas de caché válidas afectadas.
Igual que (ICACHE|DCACHE).

VALOR DEVUELTO

cacheflush() devuelve 0 si finaliza con éxito o -1 en caso de error. Si se detectan errores, la variable errno indicará el tipo de error.

ERRORES

Todo o parte del rango de direcciones de addr a (addr+nbytes-1) no es accesible.
cache no es ninguno de los valores aceptados ICACHE, DCACHE, o BCACHE (vea ERRORES).

CONFORME A

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.

ERRORES

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.

COLOFÓN

Esta página es parte de la versión 4.16 del proyecto Linux man-pages. Puede encontrar una descripción del proyecto, información sobre cómo informar errores y la última versión de esta página en https://www.kernel.org/doc/man-pages/.

TRADUCCIÓN

La traducción al español de esta página del manual fue creada por Miguel Angel Sepulveda <angel@vivaldi.princeton.edu> y Juan Piernas <piernas@ditec.um.es>

Esta traducción es documentación libre; lea la GNU General Public License Version 3 o posterior con respecto a las condiciones de copyright. No existe NINGUNA RESPONSABILIDAD.

Si encuentra algún error en la traducción de esta página del manual, envíe un correo electrónico a debian-l10n-spanish@lists.debian.org.

15 Septiembre 2017 Linux