Linus Torvalds paaiškina ZFS branduolio įgyvendinimo problemas. Linux

Diskusijos metu bandymai užduočių planuoklę, vienas iš diskusijos dalyvių pateikė pavyzdį, kaip, nepaisant teiginių apie būtinybę išlaikyti suderinamumą kuriant branduolį, Linux, naujausi branduolio pakeitimai sutrikdė teisingą modulio veikimą.ZFS įjungtas Linux“. Linas Torvaldsas atsakėkad principas "nesulaužyk Vartotojų“ reiškia išorinių branduolio sąsajų, naudojamų vartotojo erdvės programų, ir paties branduolio išsaugojimą. Tačiau jis neapima atskirai sukurtų trečiųjų šalių priedų per branduolį, kurie nepriimami į pagrindinę branduolio sudėtį, kurių autoriai turi stebėti branduolio pokyčius savo rizika ir rizika.

Dėl projekto „ZFS on Linux„Linus nerekomenduoja naudoti zfs modulio dėl CDDL ir GPLv2 licencijų nesuderinamumo. Padėtis tokia, kad dėl „Oracle“ licencijavimo politikos tikimybė, jog ZFS kada nors bus įtrauktas į pagrindinį branduolį, yra labai maža. Siūlomi tarpininkai, suteikiantys prieigą prie branduolio funkcijų išoriniam kodui, yra abejotinas sprendimas, tęsia teisininkai.“ ginčytis apie tai, ar pakartotinai eksportuojant GPL branduolio funkcijas per paketus sukuriamas išvestinis darbas, kuris turi būti platinamas pagal GPL.

Vienintelė galimybė, kai Linusas sutiktų priimti ZFS kodą į pagrindinį branduolį, yra gauti oficialų „Oracle“ leidimą, patvirtintą pagrindinio teisininko arba dar geriau, paties Larry Ellisono. Tarpiniai sprendimai, tokie kaip sluoksniai tarp branduolio ir ZFS kodo, neleidžiami, atsižvelgiant į agresyvią „Oracle“ politiką, susijusią su programavimo sąsajų intelektine nuosavybe (pvz., teismo procesas su Google dėl Java API). Be to, norą naudoti ZFS Linus laiko tik duokle madai, o ne techniniams pranašumams. Linus išnagrinėti etalonai nepalaiko ZFS, o visiško palaikymo trūkumas negarantuoja ilgalaikio stabilumo.

Primename, kad ZFS kodas platinamas pagal nemokamą CDDL licenciją, kuri nesuderinama su GPLv2 ir neleidžia integruoti ZFS į Linux į pagrindinę branduolio šaką Linux, nes kodo maišymas pagal GPLv2 ir CDDL licencijas yra nepriimtinas. Siekiant apeiti šį licencijavimo nesuderinamumą, „ZFS įjungtas Linux"Buvo nuspręsta produktą platinti tik pagal CDDL licenciją kaip atskirai atsisiunčiamą modulį, kuris tiekiamas atskirai nuo branduolio.

Galimybė platinti paruoštą ZFS modulį kaip platinimo rinkinių dalį yra prieštaringa tarp teisininkų. Advokatai iš programinės įrangos laisvės apsaugos (SFC) apsvarstykitekad dvejetainio branduolio modulio pristatymas platinant sudaro produktą kartu su GPL su reikalavimu, kad gautas darbas būtų platinamas pagal GPL. Kanoniniai teisininkai nesutikti ir nurodykite, kad zfs modulio pristatymas yra priimtinas, jei komponentas tiekiamas kaip savarankiškas modulis, atskirai nuo branduolio paketo. „Canonical“ pažymi, kad platintojai jau seniai naudoja panašų metodą tiekdami patentuotas tvarkykles, pvz., NVIDIA tvarkykles.

Kita pusė prieštarauja, kad branduolio suderinamumo problema su patentuotomis tvarkyklėmis išsprendžiama pateikiant nedidelį GPL licencijuotą tarpininką (į branduolį įkeliamas GPL licencijuotas modulis, kuris tada įkelia patentuotus komponentus). ZFS atveju toks tarpininkas gali būti sukurtas tik tuo atveju, jei „Oracle“ suteikia licencijos išimtis. Oracle Linux GPL nesuderinamumo problemą išsprendžia „Oracle“ pateikta licencijos išimtis, kuri panaikina reikalavimą licencijuoti sujungtą kūrinį pagal CDDL, tačiau ši išimtis netaikoma kitiems platinimams.

Sprendimas – platinti tik modulio šaltinio kodą, kuris nesukuria susiejimo ir yra laikomas dviejų atskirų produktų tiekimu. Debian Šiuo tikslu naudojama DKMS (Dynamic Kernel Module Support) sistema, kurioje modulis pateikiamas kaip šaltinio kodas ir yra kompiliuojamas vartotojo sistemoje iškart po paketo įdiegimo.

Šaltinis: opennet.ru

Pirkite patikimą prieglobą svetainėms su DDoS apsauga, VPS VDS serveriais 🔥 Įsigykite patikimą svetainių talpinimą su DDoS apsauga, VPS VDS serveriais | ProHoster