Para discusión en la lista de correo de desarrolladores del núcleo de Linux, se han publicado parches que implementan el sistema de archivos BeamFS, el cual utiliza la codificación de Reed-Solomon para identificar y recuperar datos dañados en ubicaciones en configuraciones con un solo almacenamiento. Las principales áreas de aplicación de BeamFS son las computadoras a bordo de satélites, equipos en salas de radioterapia y otros sistemas que operan en condiciones de alta radiación, donde la recuperación de datos distorsionados es más crítica que la incapacidad de leer la información.
Por defecto, BeamFS puede recuperar hasta 8 bytes perdidos en cada bloque de 255 bytes con un costo adicional del 7% (288 bytes de códigos de recuperación por cada 4096 bytes de datos almacenados). Los códigos de corrección de errores se aplican no solo a los datos, sino también a la información de administración en el superbloque, inode, índices de directorios y mapas de bits. La verificación de integridad y los intentos de recuperación de datos faltantes se realizan en cada operación de lectura. Si no se puede garantizar la corrección de la información, la operación finaliza con un error "-EIO", lo que excluye la posibilidad de devolver datos dañados de forma oculta.
Los experimentos realizados mostraron que al irradiar la placa i.MX 8M Plus con Linux y el sistema de archivos ext4 con protones con energía de 20 a 58 MeV, el 90% de todos los fallos ocurrían en el nivel del sistema de archivos y los controladores de dispositivos de almacenamiento. También se realizó una simulación de distorsiones individuales de bits al leer desde el medio: BeamFS y Btrfs reconocieron exitosamente la corrupción de datos y siempre devolvieron un error, mientras que ext4 y ext3 devolvieron silenciosamente datos distorsionados.
BeamFS asegura la integridad y recuperación solo en la etapa de lectura desde el medio físico hasta la transmisión en el caché por páginas en la memoria RAM. La integridad del almacenamiento en la memoria RAM puede mantenerse mediante chips de memoria con corrección de errores.
Entre las limitaciones de BeamFS se destaca la falta de soporte para registro y modo Copy-on-Write (CoW); los metadatos se escriben de manera desordenada en el almacenamiento, por lo que, en caso de un cierre incorrecto, se requiere una verificación completa mediante fsck.
Además de BeamFS, recientemente se han propuesto otros dos sistemas de archivos para el núcleo de Linux:
- En la conferencia Linux Plumbers Conference 2026, que tuvo lugar hace unos días, un ingeniero de Huawei presentó (video, diapositivas) el sistema de archivos XMFS (cross-node eXpress Memory File System) para el núcleo de Linux, diseñado para su uso en clústeres con memoria compartida accesible por todos los nodos (similar a tmpfs, pero para la memoria de todos los nodos). XMFS permite utilizar una interfaz de sistema de archivos POSIX estándar para trabajar con memoria externa, dirigida directamente mediante tecnologías como CXL 3.0 (Compute Express Link) y Huawei United Bus. El proyecto se encuentra en etapa de prototipo experimental, realizando pruebas internas, y aún no está listo para ser integrado en el núcleo.

El sistema de archivos tiene una arquitectura clásica para sistemas de archivos distribuidos con asignación servidores, encargado de la gestión de registros, mantenimiento de tablas de inode y correlación de contenido y metadatos con la memoria de los nodos individuales.

Al probar el uso de XMFS para tareas como el acceso compartido a imágenes de contenedores desde diferentes nodos, la implementación mostró un rendimiento cercano al de tmpfs con la inclusión de grandes páginas de memoria (páginas grandes de 2 MB).


- Con la ayuda de la IA, se ha desarrollado el sistema de archivos MeshXFS, un fork de XFS, adaptado para su uso simultáneo en múltiples nodos de un clúster. MeshXFS permite montar un dispositivo de bloques compartido en modo de lectura-escritura en diferentes nodos, mantener la integridad y gestionar bloqueos durante el acceso concurrente a los datos. El proyecto comenzó como un experimento para verificar la posibilidad de crear, utilizando modelos de IA, un controlador de Linux con un sistema de archivos que soporte bloqueos distribuidos, acceso paralelo y recuperación ante fallos. El trabajo principal se realizó con Claude Opus, pero para resolver problemas especialmente complejos se involucraron modelos como Claude Fable, GPT, Gemini y Astra. El experimento se consideró exitoso y ya se han publicado varias versiones operativas de MeshXFS.
Entre las características adicionales implementadas sobre XFS, se destacan dos modos de gestión de bloqueos distribuidos (sincronización a través de la red y almacenamiento del estado en un disco compartido separado), asegurando la coherencia de la caché en diferentes nodos, registro para recuperación y adaptación del formato de disco y utilidades específicas para sistemas de archivos en clúster. Se admite el funcionamiento con almacenamiento compartido conectado a través de iSCSI (probado en 16 nodos), o al replicar un dispositivo de bloque mediante DRBD. La coordinación de bloqueos, las funciones de detección de nodos, la verificación de disponibilidad y la identificación de nodos fallidos están implementadas en un módulo central común del núcleo. El funcionamiento ha sido verificado en Proxmox VE 9, RHEL 9, Ubuntu 24.04/26.04 y Debian 12/13.
Fuente: opennet.ru




