Linusas Torvaldsas paaiškino problemas diegiant ZFS Linux branduoliui

Diskusijos metu bandymai užduočių planuoklis, vienas iš diskusijos dalyvių pateikė pavyzdį, kad nepaisant teiginių apie būtinybę išlaikyti suderinamumą kuriant Linux branduolį, naujausi branduolio pakeitimai sutrikdė teisingą modulio veikimą.ZFS sistemoje „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.

Kalbant apie ZFS on Linux projektą, Linusas nerekomendavo naudoti zfs modulio dėl CDDL ir GPLv2 licencijų nesuderinamumo. Situacija tokia, kad dėl „Oracle“ licencijavimo politikos tikimybė, kad ZFS kada nors galės patekti į pagrindinį branduolį, yra labai maža. Licencijavimo nesuderinamumui apeiti siūlomi sluoksniai, kurie prieigą prie branduolio funkcijų paverčia išoriniu kodu, 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, kuri neleidžia ZFS sistemoje Linux integruoti į pagrindinę Linux branduolio šaką, nes maišomas kodas pagal GPLv2 ir CDDL licencijas. yra nepriimtina. Siekdamas apeiti šį licencijavimo nesuderinamumą, ZFS on Linux projektas nusprendė platinti visą produktą pagal CDDL licenciją atskirai įkelto modulio pavidalu, 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 patentuotų tvarkyklių branduolio suderinamumo problema išspręsta tiekiant nedidelį sluoksnį, platinamą pagal GPL licenciją (į branduolį įkeliamas GPL licencijos modulis, kuris jau įkelia patentuotus komponentus). ZFS atveju tokį sluoksnį galima paruošti tik tuo atveju, jei licencijos išimtys pateikiamos iš „Oracle“. „Oracle Linux“ sistemoje nesuderinamumas su GPL išsprendžiamas „Oracle“ pateikiant licencijos išimtį, kuri pašalina reikalavimą licencijuoti kombinuotą darbą pagal CDDL, tačiau ši išimtis netaikoma kitiems platinimams.

Sprendimas yra pateikti tik modulio šaltinio kodą platinant, o tai nesukelia paketų ir yra laikoma dviejų atskirų produktų pristatymu. Debian'e tam naudojama DKMS (Dynamic Kernel Module Support) sistema, kurioje modulis tiekiamas šaltinio kodu ir surenkamas vartotojo sistemoje iškart po paketo įdiegimo.

Šaltinis: opennet.ru

Добавить комментарий