¿Qué argumentos posix_fadvise () para la escritura secuencial de archivos?
Estoy trabajando en una aplicación que escribe secuencialmente un archivo grande (y no lee en absoluto), y me gustaría usarposix_fadvise()
para optimizar el comportamiento del sistema de archivos.
La descripción de la función en la página de manual sugiere que la estrategia más apropiada seríaPOSIX_FADV_SEQUENTIAL
. Sin embargo, la descripción de la implementación de Linux duda de que:
Bajo Linux,POSIX_FADV_NORMAL
establece la ventana readahead en el tamaño predeterminado para el dispositivo de respaldo;POSIX_FADV_SEQUENTIAL
duplica este tamaño yPOSIX_FADV_RANDOM
deshabilita completamente la lectura de archivos.
Como solo estoy escribiendo datos (posiblemente sobrescribiendo archivos posiblemente), no espero ninguna lectura. ¿Debería seguir con miPOSIX_FADV_SEQUENTIAL
o más bien usarPOSIX_FADV_RANDOM
para deshabilitarlo?
¿Qué hay de otras opciones, comoPOSIX_FADV_NOREUSE
? O tal vez no useposix_fadvise()
para escribir en absoluto?