Mi entendimiento es quefadvise
le indicará al sistema que los archivos indicados deben almacenarse en la memoria caché del sistema de archivos (RAM).
¿Cuál es el propósito de montar un directorio en un disco RAM cuando solo se puede montar fadvise --willneed
el directorio?
Respuesta1
Déjanos leerla página de manual para la llamada a la biblioteca subyacente:
Los programas pueden usar posix_fadvise() para anunciar la intención de acceder a los datos del archivo en un patrón específico en el futuro, permitiendo así que el kernel realice las optimizaciones apropiadas.
Elconsejose aplica a una región (no necesariamente existente) que comienza encompensary extendiéndose porlenbytes (o hasta el final del archivo silenes 0) dentro del fichero al que hace referenciafd.Elconsejono es vinculante; simplemente constituye una expectativa en nombre de la solicitud.
(Énfasis añadido.)
Se garantiza que todo lo que hay en un disco RAM estará en RAM, por diseño (aunque los tmpfs se pueden intercambiar). Pero la moda caprichosa es meramente consultiva; No es necesario que el kernel precargue los datos en la RAM, ni que los mantenga siempre en la RAM.