Manpages

ИМЯ

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

ОБЗОР

#include <asm/cachectl.h>

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

ОПИСАНИЕ

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

ICACHE

Выталкивает кэш инструкций.

DCACHE

Выталкивает кэш данных.

BCACHE

Тоже что и (ICACHE|DCACHE).

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

cacheflush возвращает 0 в случае успеха и −1 при ошибке. Если произошла ошибка, значение errno будет установлено соответствующим образом.

ОШИБКИ

EINVAL

параметр cache не является одним из ICACHE, DCACHE или BCACHE.

EFAULT

Некоторые или все адреса диапазона от addr до (addr+nbytes-1) недоступны.

ОШИБКИ

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

ЗАМЕЧАНИЕ

Этот системный вызов доступен только на системах, основанных на MIPS (на MIPS платформе). Он не должен использоватьсяв программах, которые задумываются как переносимые.

ПЕРЕВОД

Перевёл с английского Виктор Вислобоков <corochoone [AT] perm.ru> 2003