Linux görev zamanlayıcı testi tartışması sırasında, katılımcılardan biri tartışmada bir örnek verdi ihtiyaç konusundaki ifadelere rağmen Linux çekirdeğini geliştirirken uyumluluğu korumak için, çekirdekte yapılan son değişiklikler doğruyu kesintiye uğrattı Linux'ta ZFS modülünün çalışması.
Linus Torvalds şöyle cevapladı: "Kullanıcılar kırılmaz" ilkesi, kullanıcı alanındaki uygulamalar tarafından kullanılan harici çekirdek arabirimlerinin ve çekirdeğin kendisinin korunmasını ifade eder. Fakat çekirdekte ayrı olarak geliştirilen XNUMX. taraf eklentileri kapsamaz Çekirdeğin çekirdek bileşiminde kabul edilmeyen, yazarları riski kendilerine ait olan çekirdekteki değişiklikleri kendileri takip etmelidir.
Linux'taki ZFS projesiyle ilgili olarak, Linus, CDDL ve GPLv2 lisanslarının uyumsuzluğu nedeniyle zfs modülünün kullanılmasını önermedi.
Durum öyle ki, Oracle'ın lisanslama politikası nedeniyle, ZFS'nin bir gün çekirdek makyajına girme şansı çok düşük.
Harici kod için temel işlevlere erişimi çeviren lisans uyumsuzluğunu aşmak için önerilen katmanlar şüpheli bir karardır.
Tek seçenek Linus'un ana çekirdekteki ZFS kodunu kabul edeceği Oracle'dan resmi izin almaktır, Baş avukat tarafından onaylanmıştır ve en iyisi Larry Ellison tarafından yapılmıştır.
Ara çözümler, çekirdek ve ZFS kodu arasındaki katmanlar olarakkabul edilemez Oracle'ın program arayüzlerindeki fikri mülkiyetle ilgili agresif politikası (ör. Google'ın Java API testi).
Buna ek olarak, Linus, ZFS'yi modaya bir hediye olarak kullanma arzusunu görüyor ve teknik avantajlar değil. Linus'un çalıştığı performans testleri ZFS lehine tanıklık etmiyor ve tam desteğin olmaması uzun vadeli istikrarı garanti etmiyor.
ZFS, GPLv2 ve CDDL lisansları altındaki kodu karıştırmak kabul edilemez olduğundan, Linux çekirdeğinin ana dalında ZFS'nin Linux'a entegrasyonuna izin vermediğinden, GPLv2 ile uyumsuz olan ücretsiz CDDL lisansı altında dağıtılmaktadır.
Bu uyumsuzluğu önlemek için lisanslı, ZFS projesi Linux'ta tüm ürünü CDDL lisansı altında dağıtmaya karar verdi çekirdekten ayrı olarak sağlanan ayrı bir indirilebilir modül olarak.
Bitmiş ZFS modülünü dağıtımların bir parçası olarak dağıtma olasılığı avukatlar arasında tartışmalara neden oluyor.
Avukatlar Yazılım Özgürlüğünün Korunması (SFC) bir çekirdek modülü teslim etmenin bir dağıtım paketindeki ikili bir ürün oluşturur GPL altında nihai çalışmanın dağıtımını gerektiren GPL ile birlikte.
Avukatlar aynı fikirde değil ve tartışmak zfs modülü dağıtımına izin verildiği bileşen bağımsız bir modül olarak sağlanmışsa, çekirdek paketinden ayrı olarak. Canonical, dağıtımların NVIDIA sürücüleri gibi tescilli sürücüleri sağlamak için uzun süredir benzer bir yaklaşım kullandığını belirtiyor.
Diğer taraf uyumluluk sorununun tescilli sürücülerde çekirdek ile GPL lisansı altında dağıtılan küçük bir katman sağlayarak çözülür (GPL lisansı altındaki bir modül, tescilli bileşenleri zaten yükleyen çekirdeğe yüklenir).
ZFS için böyle bir katman ancak Oracle lisanslı istisnalar sağlıyorsa hazırlanabilir. Oracle Linux'ta GPL uyumsuzluğu, Oracle'a birleşik CDDL işi için lisans gerekliliğini ortadan kaldıran bir lisans istisnası sağlanarak çözülür, ancak bu istisna diğer dağıtımlar için geçerli değildir.
Çözüm, dağıtımdaki modülün yalnızca kaynak kodunu sağlamaktır.bağlantıya yol açmayan ve iki ayrı ürünün teslimatı olarak kabul edilir. Debian bunun için DKMS (Dinamik Kernel Modül Desteği) sistemini kullanır, burada modül kaynak kodunda sağlanır ve paket kurulduktan hemen sonra kullanıcının sistemine monte edilir.
kaynak: https://www.realworldtech.com/