ИМЯ¶
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@perm.ru> 2003