Scroll to navigation

CACHEFLUSH(2) Руководство программиста Linux CACHEFLUSH(2)

ИМЯ

cacheflush - выталкивает содержимое кэша инструкций и/или данных

ОБЗОР

#include <asm/cachectl.h>

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

ОПИСАНИЕ

cacheflush() выталкивает содержимое указанного кэша(ей) обратно в пользовательское адресное пространство в диапазоне с addr по (addr+nbytes-1). Параметр cache может принимать одно из значений:

Выталкивает кэш инструкций.
Записать обратно в память и объявить недействительными задетые достоверные строки кэша.
Тоже что и (ICACHE|DCACHE).

ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ

При успешном завершении cacheflush() возвращает 0 или -1 при ошибке. Если обнаружены ошибки, то errno будет содержать номер ошибки.

ОШИБКИ

Некоторая часть или весь диапазон адресов с addr по (addr+nbytes-1) недоступен.
Значение cache не равно ICACHE, DCACHE или BCACHE.

СООТВЕТСТВИЕ СТАНДАРТАМ

Данный системный вызов есть только в Linux и доступен только в системах на основе MIPS. Он не должен использоваться в переносимых программах.

ДЕФЕКТЫ

Текущая реализация игнорирует аргументы addr и nbytes. Таким образом, кэш всегда выталкивается полностью.

2007-05-26 Linux