Deweloperzy którzy są odpowiedzialni za kod podstawowy „ZFS w systemie Linux” który jest rozwijany pod auspicjami projektu OpenZFS jako wzorcowa implementacja ZFS, niedawno opublikowali wiadomości czego przyjął pewne zmiany które dodają obsługę systemu operacyjnego FreeBSD.
Kod dodany do „ZFS on Linux” został przetestowany na gałęzi FreeBSD 11 i 12. Dlatego programiści FreeBSD nie muszą już utrzymywać własnej zsynchronizowanej gałęzi „ZFS on Linux”, a rozwój wszystkich zmian związanych z FreeBSD będzie się odbywał w głównym projekcie.
Poza tym il Wydajność FreeBSD w głównej gałęzi „ZFS on Linux” w trakcie rozwoju se będzie testowany w systemie ciągłej integracji.
Pamiętaj, że eW grudniu 2018 programiści FreeBSD podjęli inicjatywę zmiany do wykonania ZFS z projektu ZFS na Linuksie (ZoL), wokół którego w ostatnim czasie koncentrowała się cała działalność związana z rozwojem ZFS.
Powodem migracji był impas w bazie kodu ZFS projektu Illumos (rozwidlenie OpenSolaris), który był wcześniej używany jako podstawa do przenoszenia zmian związanych z ZFS do FreeBSD.
Do niedawna Delphix, firma programistyczna dla systemu operacyjnego DelphixOS, miała główny wkład w obsługę bazy kodu ZFS na Illumos (rozwidlenie Illumos). Dwa lata temu Delphix zdecydował się przejść na ZFS w systemie Linux, podpowiadając el Stoisko ZFS projektu Illumos oraz koncentracja wszystkich działań związanych z rozwojem na projekcie ZFS w systemie Linux, który jest obecnie uważany za podstawową implementację OpenZFS.
Od czasu wdrożenia Illumos ya jest znacznie w tyle za „ZFS on Linux” pod względem funkcjonalności, Deweloperzy FreeBSD zrealizowali że społeczność FreeBSD nie miał dość siły, by samodzielnie się utrzymywać i rozwijać istniejąca baza kodu. Jeśli nadal będziesz korzystać z Illumos, luka w funkcjonalności będzie się tylko zwiększać, a transfer poprawek będzie wymagał coraz większej ilości zasobów.
Zamiast próbować trzymać się Illumosa, Zespół wsparcia ZFS on FreeBSD zdecydował się na przyjęcie „ZFS on Linux” jako główny wspólny projekt programistyczny dla ZFS, kieruj istniejącymi zasobami, aby zwiększyć przenośność kodu i wykorzystaj bazę kodu jako podstawę do wdrożenia ZFS dla FreeBSD. Wsparcie FreeBSD zostanie bezpośrednio zintegrowane z kodem „ZFS on Linux” i będzie rozwijane głównie w repozytoriach tego projektu (kwestia wspólnego rozwoju w jednym repozytorium została już uzgodniona z Brianem Behlendorfem, liderem projektu ZFS w systemie Linux).
Programiści FreeBSD postanowili pójść za wspólnym przykładem i nie próbować trzymać się Illumos, ponieważ ta implementacja jest już daleko w tyle pod względem funkcjonalności i wymaga dużych zasobów do obsługi kodu i przenoszenia zmian.
„ZFS on Linux” jest obecnie postrzegany jako wiodący wspólny projekt rozwojowy unikalne dla ZFS.
Wśród funkcji, które są dostępne w "ZFS on Linux" dla FreeBSD, ale niedostępne w implementacji ZFS Illumos, to tryb wielu hostów (MMP, ochrona wielu modyfikatorów), rozszerzony system przydziałów, szyfrowanie zestawów danych, oddzielny wybór klas alokacji dla bloków (klas alokacji), wykorzystanie instrukcji procesora wektorowego w celu przyspieszenia implementacji RAIDZ i obliczania sum kontrolnych, ulepszone narzędzia wiersza poleceń i wiele powiązanych poprawek błędów związanych z warunkami wyścigu.
Stąd wsparcie FreeBSD dla ZoL ułatwi przenoszenie zmian między FreeBSD a Linuksem, poza tym programiści wspominają, że otrzymamy pewne ulepszenia, o których wspominają:
- import FreeBSD SPL
- dodaj ifdefs we wspólnym kodzie tam, gdzie jest to bardziej sensowne niż kopiowanie kodu w oddzielnych plikach
Wreszcie tak chcesz wiedzieć więcej na ten temat, możesz sprawdzić szczegóły w poniższy link.