Какова цель электронного диска, когда fadvise существует?

Мое понимание - это fadvise скажет системе, что обозначенные файлы должны храниться в кэше файловой системы (RAM).

Что является целью смонтировать каталог в электронном диске, когда Вы можете просто fadvise --willneed каталог?

1
задан 1 May 2015 в 23:46
1 ответ

Давайте прочитаем страницу руководства для вызова базовой библиотеки :

Программы могут использовать posix_fadvise (), чтобы объявить о намерении получить доступ к данным файла по определенному шаблону в будущем, что позволит ядру выполнить соответствующую оптимизацию.

Совет применяется к (не обязательно существующей) области, начинающейся с ] смещение и расширяется на len байтов (или до конца файла, если len равно 0) в файле, на который ссылается fd . Рекомендация не является обязательной; это просто представляет собой ожидание от имени приложения.

(Курсив добавлен.)

Все на RAM-диске гарантированно находится в RAM, по дизайну (хотя tmpfs можно выгружать). Но причуда - всего лишь совет; ядру не требуется ни предварительно загружать данные в ОЗУ, ни всегда хранить их в ОЗУ.

3
ответ дан 3 December 2019 в 18:39

Теги

Похожие вопросы