Bcachefs ya fue añadido en la rama linux-next y podría estar llegando en Linux 6.7
Tal parece que los esfuerzos del autor de BcacheFS han dado frutos, pues hace poco se dio a conocer la noticia de que su sistema de archivos, por fin ha logrado ser aceptado y fusionado dentro del código del kernel de Linux, siendo específicos en la rama linux-next (que prueba características para futuras versiones del kernel de Linux).
Y es que por poco más de 3 años Kent Overstreet, autor de BcacheFS, ha trabajado bastante en pulir su sistema de archivos para que este sea incluido dentro del código de la rama principal del Kernel de Linux.
A pesar de que BcacheFS ha sido aceptado y fusionado en la rama linux-next, la solicitud extracción a para incluir el código de BcacheFS en la rama principal fue rechazada por Linus Torvalds, a lo que en comentarios del padre de Linux, le recomendó a Kent Overstreet que evaluara primero la idoneidad de los parches propuestos en la rama experimental de Linux-next, por lo que si la revisión tiene éxito, BcachefsFS podría incluirse en el kernel 6.7, cuyo lanzamiento se espera para diciembre.
Para quienes desconocen de BcachefsFS, deben saber que este es un sistema de archivos desarrollado utilizando tecnologías ya probadas en el desarrollo del dispositivo de bloque Bcache, diseñado para almacenar en caché el acceso a discos duros lentos en unidades SSD rápidas (incluido en el kernel desde la versión 3.10).
Bcachefs utiliza un mecanismo de copia en escritura (COW) en el que los cambios no provocan la sobrescritura de datos: el nuevo estado se escribe en una nueva ubicación, después de lo cual se cambia el puntero del estado actual.
El objetivo de Bcachefs es lograr el nivel de rendimiento, confiabilidad y escalabilidad de XFS, al tiempo que proporciona características adicionales de Btrfs y ZFS, como partición multidispositivo, diseños de unidades multicapa, replicación (RAID 1/10), almacenamiento en caché y datos transparentes, compresión en los modos LZ4, gzip y ZSTD, cortes de estado, verificación de integridad mediante sumas de verificación, capacidad de almacenar códigos de corrección de errores Reed-Solomon (RAID 5/6), almacenamiento de información en forma cifrada (se utilizan ChaCha20 y Poly1305 ).
En términos de rendimiento, Bcachefs está por delante de Btrfs y otros sistemas de archivos basados en el mecanismo de copia en escritura y demuestra una velocidad de funcionamiento cercana a Ext4 y XFS.
Una característica especial de Bcachefs es la compatibilidad con conexiones de unidades de múltiples capas, en las que el almacenamiento se compone de varias capas: las unidades más rápidas (SSD) están conectadas a la capa inferior, que se utiliza para almacenar en caché los datos de uso frecuente, y la capa superior está formado por unidades de disco más espaciosas y económicas que proporcionan almacenamiento de datos menos utilizados.
El almacenamiento en caché en modo de escritura diferida se puede utilizar entre capas. Las unidades se pueden agregar y desconectar dinámicamente de una partición sin detener el uso del sistema de archivos (los datos migran automáticamente).
Cabe mencionar que de los últimos logros en el desarrollo de Bcachefs se destaca la estabilización de la implementación de instantáneas grabables. En comparación con Btrfs, las instantáneas en Bcachefs ahora escalan mucho mejor y están libres de los problemas inherentes a Btrfs. En la práctica, se ha probado el funcionamiento de las instantáneas al organizar copias de seguridad de MySQL.
Por la parte de los planes futuros incluyen el deseo de utilizar el lenguaje Rust al desarrollar Bcachefs. Según el autor de Bcachefs, a quien le gusta programar en lugar de depurar código, sería una locura escribir código en C ahora que hay una mejor opción disponible.
Rust ya participa en Bcachefs en la implementación de algunas utilidades que se ejecutan en el espacio del usuario. Además, se está gestando la idea de reescribir gradualmente Bcachefs por completo en Rust, ya que el uso de este lenguaje ahorra significativamente tiempo de depuración.
Fuente: https://www.phoronix.com