Nel codice sorgente di ««, sviluppato sotto l'egida del progetto come implementazione di riferimento di ZFS, modifiche che aggiungono del sistema operativo FreeBSD. Il codice aggiunto in «ZFS on Linux» è stato testato nelle versioni 11 e 12 di FreeBSD. Pertanto, ora gli sviluppatori di FreeBSD non devono mantenere un ramo sincronizzato specifico per «ZFS on Linux», e lo sviluppo di tutte le modifiche correlate a FreeBSD sarà effettuato nel progetto principale. Inoltre, la funzionalità del ramo principale di «ZFS on Linux» in FreeBSD sarà testata nel sistema di integrazione continua durante il processo di sviluppo.
Ricordiamo che a dicembre 2018 gli sviluppatori di FreeBSD hanno presentato per passare all'implementazione di ZFS del progetto «» (ZoL), attorno al quale si è concentrata di recente tutta l'attività relativa allo sviluppo di ZFS. Il motivo della migrazione è stata la stagnazione della base di codice di ZFS dal progetto Illumos (fork di OpenSolaris), che in precedenza era utilizzata come base per il trasferimento delle modifiche correlate a ZFS in FreeBSD. Il principale contributo al supporto della base di codice di ZFS in Illumos è stato fornito fino a poco tempo fa dalla società Delphix, che sviluppa il sistema operativo (fork di Illumos). Due anni fa, la società Delphix ha deciso di passare a «ZFS on Linux», il che ha portato alla stagnazione di ZFS dal progetto Illumos e alla concentrazione di tutta l'attività di sviluppo nel progetto «ZFS on Linux», che ora è considerato come l'implementazione principale di .
Gli sviluppatori di FreeBSD hanno deciso di seguire l'esempio generale e di non cercare di rimanere legati a Illumos, poiché questa implementazione è già molto indietro in termini di funzionalità e richiede maggiori risorse per la manutenzione del codice e il trasferimento delle modifiche. «ZFS on Linux» è ora visto come il principale progetto collaborativo unico per lo sviluppo di ZFS. Tra le funzionalità disponibili in «ZFS on Linux» per FreeBSD, ma assenti nell'implementazione di ZFS di Illumos: la modalità multihost (, Multi Modifier Protection), un sistema avanzato di quote, crittografia dei set di dati, selezione separata delle classi di allocazione dei blocchi, utilizzo delle istruzioni dei processori vettoriali per accelerare l'implementazione di RAIDZ e il calcolo dei checksum, migliorato strumento della riga di comando, correzione di molti bug legati a condizioni di gara e blocchi.
Fonte: opennet.ru
