Dukungan FreeBSD ditambahkan ke ZFS di Linux

Ke basis kode "ZFS di Linux", dikembangkan di bawah naungan proyek OpenZFS sebagai referensi implementasi ZFS, diterima perubahan menambahkan mendukung Sistem operasi FreeBSD. Kode yang ditambahkan ke ZFS di Linux telah diuji di cabang FreeBSD 11 dan 12. Dengan demikian, pengembang FreeBSD tidak perlu lagi memelihara ZFS tersinkronisasi mereka sendiri di fork Linux, dan pengembangan semua perubahan terkait FreeBSD akan dilakukan di proyek utama. Selain itu, kinerja cabang utama β€œZFS di Linux” di FreeBSD akan diuji dalam sistem integrasi berkelanjutan selama proses pengembangan.

Ingatlah bahwa pada bulan Desember 2018, pengembang FreeBSD datang dengan prakarsa transisi ke implementasi ZFS dari proyek "ZFS di Linux"(ZoL), yang menjadi fokus seluruh aktivitas terkait pengembangan ZFS baru-baru ini. Alasan migrasi ini adalah stagnasi basis kode ZFS dari proyek Illumos (cabang OpenSolaris), yang sebelumnya digunakan sebagai dasar untuk memigrasikan perubahan terkait ZFS ke FreeBSD. Hingga saat ini, kontribusi utama untuk mendukung basis kode ZFS di Illumos dibuat oleh Delphix, yang mengembangkan sistem operasi DelphixOS (Garpu Illumos). Dua tahun lalu, Delphix mengambil keputusan untuk pindah ke "ZFS di Linux", yang mengakibatkan ZFS stagnan dari proyek Illumos dan memusatkan semua aktivitas pengembangan di proyek "ZFS di Linux", yang sekarang dianggap sebagai implementasi utama OpenZFS.

Pengembang FreeBSD memutuskan untuk mengikuti contoh umum dan tidak mencoba mempertahankan Illumos, karena implementasi ini sudah jauh tertinggal dalam fungsionalitas dan memerlukan sumber daya yang besar untuk memelihara kode dan memigrasi perubahan. "ZFS di Linux" sekarang dipandang sebagai proyek pengembangan ZFS kolaboratif utama, tunggal. Di antara fitur-fitur yang tersedia di "ZFS di Linux" untuk FreeBSD, tetapi tidak dalam implementasi ZFS dari Illumos: mode multihost (MMP, Perlindungan Multi Modifier), sistem kuota yang diperluas, enkripsi kumpulan data, pemilihan kelas alokasi blok (kelas alokasi) yang terpisah, penggunaan instruksi prosesor vektor untuk mempercepat implementasi RAIDZ dan penghitungan checksum, peningkatan instrumentasi baris perintah, memperbaiki banyak kesalahan kondisi balapan dan pemblokiran.

Sumber: opennet.ru

Tambah komentar