FreeBSD-understøttelse tilføjet til ZFS på Linux

Til kodebasen "ZFS på Linux", udviklet i regi af projektet OpenZFS som referenceimplementering af ZFS, accepteret ændringer tilføjer support FreeBSD operativsystem. Koden tilføjet til ZFS på Linux er blevet testet i grenene FreeBSD 11 og 12. Derfor behøver FreeBSD-udviklere ikke længere at vedligeholde deres egen synkroniserede ZFS på Linux-gaffel, og udviklingen af ​​alle FreeBSD-relaterede ændringer vil blive udført i hovedprojekt. Derudover vil ydeevnen af ​​hovedgrenen "ZFS på Linux" i FreeBSD blive testet i det kontinuerlige integrationssystem under udviklingsprocessen.

Husk, at i december 2018 kom FreeBSD-udviklerne ud med initiativ overgang til implementering af ZFS fra projektet "ZFS på Linux"(ZoL), som al aktivitet relateret til udviklingen af ​​ZFS for nylig har fokuseret på. Årsagen til migreringen var stagnationen af ​​ZFS-kodebasen fra Illumos-projektet (en forgrening af OpenSolaris), som tidligere blev brugt som grundlag for migrering af ZFS-relaterede ændringer til FreeBSD. Indtil for nylig blev hovedbidraget til understøttelse af ZFS-kodebasen i Illumos givet af Delphix, som udvikler styresystemet Delphix OS (Illumos gaffel). For to år siden tog Delphix beslutningen om at flytte til "ZFS på Linux", hvilket resulterede i, at ZFS stagnerede fra Illumos-projektet og koncentrerede al udviklingsaktivitet i "ZFS på Linux"-projektet, som nu betragtes som hovedimplementeringen OpenZFS.

FreeBSD-udviklerne besluttede at følge det generelle eksempel og ikke forsøge at holde på Illumos, da denne implementering allerede er langt bagud i funktionalitet og kræver store ressourcer for at vedligeholde koden og migrere ændringer. "ZFS på Linux" ses nu som det vigtigste, enkeltstående, kollaborative ZFS-udviklingsprojekt. Blandt de funktioner, der er tilgængelige i "ZFS på Linux" til FreeBSD, men ikke i ZFS-implementeringen fra Illumos: multihost-tilstand (MMP, Multi Modifier Protection), udvidet kvotesystem, datasætkryptering, separat udvælgelse af blokallokeringsklasser (allokeringsklasser), brug af vektorprocessorinstruktioner til at fremskynde RAIDZ-implementering og checksum-beregninger, forbedret kommandolinjeinstrumentering, fikser mange racetilstandsfejl og blokering.

Kilde: opennet.ru

Tilføj en kommentar