Estoy trabajando en un daemon que monitorea eventos de archivos a través de inotify para activar varios tipos de eventos cuando se accede a los archivos. He leído que los relojes son un poco caros, porque el Kernel almacena el nombre de ruta completo de cada archivo que se está mirando.¿Cuál es una cantidad razonable de relojes inotify con Linux?
¿Cuántos relojes serían demasiados?
Editar: En su mayoría, me pregunto ... ¿alguna vez has visto un golpe de rendimiento notable, de ser así, en cuántos relojes sucedió? Sí, tengo que monitorear/recursivamente (sin embargo, es un sistema bootstrapped mínimo).
¿por qué no debería estar usando inotify para ver todo el sistema de archivos? puedes ser específico? – Blub
@Blub, ¿por qué querrías hacerlo? A menos que esté depurando una implementación del sistema de archivos, no puedo pensar en un buen caso de uso, y si eso es lo que está haciendo, probablemente sea mejor conectarse al código del sistema de archivos. Sin mencionar, probablemente no tendrá suficientes relojes para ver todo en un sistema de archivos con un sistema operativo moderno. Pero supongo que si lo hace (es decir, si está trabajando con un conjunto reducido de archivos), probablemente no sea lo peor. Mientras su computadora pueda manejarlo, no va a dañar nada AFAIK. –
Quiero indexar un volumen y, por lo tanto, si un archivo cambia en algún lugar, necesito actualizar mi índice. He echado un vistazo al código fuente ext4, no está hecho exactamente para los complementos del usuario ... solo hay una utilidad dumpe2fs que puede imprimir "bloques", pero todavía no se tiene idea de cómo sacar los archivos de acceso de allí. Y aún así ... Tendría que ejecutar esa utilidad constantemente, al menos una vez por segundo para volver a actualizar el índice. No es exactamente genial, preferiría recuperar algún evento, como lo hace inotify. – Blub