Madvise
madvise to wywołanie systemowe mające na celu poinformowanie systemu pamięci wirtualnej systemu operacyjnego o planowanym sposobie użycia danego obszaru pamięci (szczególnie pamięci mmapowanej lub dzielonej), tak żeby miał on możliwość użycia bardziej wydajnych algorytmów pamięci wirtualnej.
int madvise(void *start, size_t length, int advice);
Możliwe wartości advice:
MADV_NORMAL- typowe wzorce dostępuMADV_RANDOM- dostęp losowy - read ahead niewskazanyMADV_SEQUENTIAL- dostęp sekwencyjny - znaczny read ahead wskazany, można zwolnić przeczytane strony niedługo potemMADV_WILLNEED- prawdopodobnie będzie używana w najbliższej przyszłości - lepiej nie zwalniać cache tej pamięciMADV_DONTNEED- prawdopodobnie nie będzie używana w najbliższej przyszłości - można zwolnić cache tej pamięci
Wywołanie pojawiło się po raz pierwszy w 4.4BSD.