C.7. Puntos de trazado de Bmap
La asignación de bloques es una tarea central para cualquier sistema de archivos. GFS2 usa un sistema de archivos tradicional basado en bitmap con dos bits por bloque. El principal propósito de los puntos de trazado en este subsistema es permitir la monitorización del tiempo tomado para asignar los bloques de mapas.
El punto de trazado
gfs2_bmap
es llamado dos veces por cada operación bmap: una vez en el inicio para desplegar la solicitud de bmap, y otra al final para mostrar el resultado. Esto facilita la coincidencia de solicitudes y resultados y la medida del tiempo tomado para mapear bloques en partes diferentes de sistemas de archivos, en diferentes desplazamientos de archivos, o incluso en diferentes archivos. También es posible ver el tamaño promedio cuando se devuelven en comparación con los que se solicitan.
Para mantener el rastro de los bloques asignados,
gfs2_block_alloc
no solo se llama para asignar, sino también para liberar bloques. Puesto que se hace referencia a las asignaciones según el inodo para el bloque destinado, esto puede servir para rastrear qué bloques físicos pertenecen a cuáles archivos en el sistema de archivos en vivo. Esto es en particular muy útil cuando se combina con blktrace
, el cual muestra los patrones problemáticos de E/S que pueden referirse a los inodos relevantes mediante el mapa obtenido a través del punto de trazado.