Suport FreeBSD adăugat la ZFS pe Linux

La baza de coduri "ZFS pe Linux„, dezvoltat sub egida proiectului OpenZFS ca implementare de referință a ZFS, admis modificări adăugând a sustine Sistem de operare FreeBSD. Codul adăugat la ZFS pe Linux a fost testat în ramurile FreeBSD 11 și 12. Astfel, dezvoltatorii FreeBSD nu mai trebuie să-și mențină propriul ZFS sincronizat pe Linux furk, ​​iar dezvoltarea tuturor modificărilor legate de FreeBSD va fi efectuată în proiect principal. În plus, performanța ramului principal „ZFS on Linux” în FreeBSD va fi testată în sistemul de integrare continuă în timpul procesului de dezvoltare.

Să ne amintim că în decembrie 2018, dezvoltatorii FreeBSD au venit cu inițiativă trecerea la implementarea ZFS din proiect "ZFS pe Linux„(ZoL), în jurul căruia s-a concentrat recent toată activitatea legată de dezvoltarea ZFS. Motivul invocat pentru migrare a fost stagnarea bazei de cod ZFS din proiectul Illumos (o furcă a OpenSolaris), care a fost folosit anterior ca bază pentru migrarea modificărilor legate de ZFS la FreeBSD. Până de curând, principala contribuție la suportul pentru baza de cod ZFS din Illumos a fost făcută de Delphix, care dezvoltă sistemul de operare DelphixOS (furcă Illumos). În urmă cu doi ani, Delphix a luat decizia de a trece la „ZFS on Linux”, ceea ce a dus la stagnarea ZFS din proiectul Illumos și concentrarea întregii activități de dezvoltare în proiectul „ZFS on Linux”, care acum este considerat principala implementare. OpenZFS.

Dezvoltatorii FreeBSD au decis să urmeze exemplul general și să nu încerce să păstreze Illumos, deoarece această implementare este deja cu mult în urmă în funcționalitate și necesită resurse mari pentru a menține codul și a migra modificările. „ZFS on Linux” este acum văzut ca principalul proiect de dezvoltare ZFS, unic și colaborativ. Printre caracteristicile care sunt disponibile în „ZFS on Linux” pentru FreeBSD, dar nu și în implementarea ZFS de la Illumos: modul multigazdă (MMP, Protecție cu modificatori multiple), sistem de cote extins, criptare setului de date, selecție separată a claselor de alocare a blocurilor (clasele de alocare), utilizarea instrucțiunilor procesorului vectorial pentru a accelera implementarea RAIDZ și calculele sumelor de control, instrumentarea îmbunătățită a liniei de comandă, remediază multe erori de condiție de cursă și blocare.

Sursa: opennet.ru

Adauga un comentariu