En el código base de ««, desarrollado bajo la égida del proyecto como una implementación de referencia de ZFS, los cambios que agregan al sistema operativo FreeBSD. El código añadido en «ZFS en Linux» ha sido probado en las ramas FreeBSD 11 y 12. Así, los desarrolladores de FreeBSD ya no necesitan mantener su propia ramificación sincronizada de «ZFS en Linux» y el desarrollo de todos los cambios relacionados con FreeBSD se llevará a cabo en el proyecto principal. Además, la funcionalidad de la rama principal de «ZFS en Linux» en proceso de desarrollo será probada en un sistema de integración continua.
Recordemos que en diciembre de 2018, los desarrolladores de FreeBSD propusieron de migrar a la implementación de ZFS del proyecto «» (ZoL), en torno al cual se ha concentrado últimamente toda la actividad relacionada con el desarrollo de ZFS. Se mencionó la stagnación del código base de ZFS del proyecto Illumos (un fork de OpenSolaris) como la razón para la migración, ya que anteriormente se utilizaba como base para trasladar los cambios relacionados con ZFS a FreeBSD. La principal contribución al soporte del código base de ZFS en Illumos fue proporcionada hasta hace poco por la compañía Delphix, que desarrolla el sistema operativo (fork de Illumos). Hace dos años, la compañía Delphix decidió migrar a «ZFS en Linux», lo que llevó a la stagnación de ZFS del proyecto Illumos y a la concentración de toda la actividad de desarrollo en el proyecto «ZFS en Linux», que ahora se considera la implementación principal .
Los desarrolladores de FreeBSD decidieron seguir el ejemplo general y no intentar aferrarse a Illumos, ya que esta implementación ya está muy rezagada en funcionalidad y requiere muchos recursos para mantener el código y trasladar los cambios. «ZFS en Linux» ahora se considera como el único proyecto colaborativo principal para el desarrollo de ZFS. Entre las funcionalidades que están disponibles en «ZFS en Linux» para FreeBSD, pero que faltan en la implementación de ZFS de Illumos, se encuentran: el modo multihost (, Protección de Múltiples Modificadores), un sistema de cuotas avanzado, cifrado de conjuntos de datos, selección separada de clases de asignación de bloques (allocation classes), uso de instrucciones de procesador vectorial para acelerar la implementación de RAIDZ y el cálculo de sumas de verificación, mejor herramientas de línea de comandos, y la corrección de muchos errores relacionados con condiciones de carrera y bloqueos.
Fuente: opennet.ru
