NetBSD 9.0 operacinės sistemos išleidimas

Galima pagrindinis operacinės sistemos leidimas „NetBSD 9.0“, kuriame įdiegta kita naujų funkcijų dalis. Dėl pakrovimo paruoštas diegimo vaizdai 470 MB dydžio. NetBSD 9.0 leidimas yra oficialiai prieinamas versijose 57 sistemos architektūros ir 15 skirtingų procesorių šeimų.

Atskirai yra 8 pirmiausia palaikomi prievadai, kurie sudaro NetBSD plėtros strategijos pagrindą: amd64, i386, evbarm, evbmips, evbppc, hpcarm, sparc64 ir xen. 49 prievadai, susiję su tokiais procesoriais kaip alfa, hppa, m68010, m68k, sh3, sparc ir vax, priskiriami antrajai kategorijai, t.y. vis dar palaikomi, tačiau prarado savo aktualumą arba neturi pakankamai jų plėtra suinteresuotų kūrėjų. Vienas uostas (acorn26) yra įtrauktas į trečiąją kategoriją, kurioje yra neveikiančių prievadų, kuriuos galima pašalinti, jei neatsiras entuziastų, besidominčių jų plėtra.

Raktas patobulinimai NetBSD 9.0:

  • Pridėtas naujas hipervizorius NVMM, kuris palaiko aparatinės įrangos virtualizacijos mechanizmus SVM, skirtus AMD procesoriams, ir VMX, skirtus Intel procesoriams. Ypatinga NVMM ypatybė yra ta, kad branduolio lygiu atliekamas tik minimalus privalomas aparatinės įrangos virtualizacijos mechanizmų susiejimo rinkinys, o visas aparatūros emuliacijos kodas perkeliamas iš branduolio į vartotojo erdvę. Virtualioms mašinoms valdyti buvo parengti įrankiai, paremti libnvmm biblioteka, taip pat paketas qemu-nvmm, skirtas svečių sistemoms paleisti naudojant NVMM. Libnvmm API apima tokias funkcijas kaip virtualios mašinos kūrimas ir paleidimas, atminties paskirstymas svečių sistemai ir VCPU paskirstymas. Tačiau libnvmm neapima emuliatoriaus funkcijų, o suteikia tik API, leidžiančią integruoti NVMM palaikymą į esamus emuliatorius, tokius kaip QEMU;
  • Palaiko 64 bitų AArch64 architektūrą (ARMv8-A), įskaitant ARM suderinamas serverių sistemas Serveris paruoštas (SBBR+SBSA), ir big.LITTLE sistemos (galingų, bet daug energijos suvartojančių branduolių ir mažiau produktyvių, bet energiją taupančių branduolių derinys viename luste). Jis palaiko 32 bitų programų paleidimą 64 bitų aplinkoje naudojant COMPAT_NETBSD32. Galima naudoti iki 256 procesorių. Palaikomas veikimas QEMU emuliatoriuje ir SoC:
    • Allwinner A64, H5, H6
    • Amlogic S905, S805X, S905D, S905W, S905X
    • Broadcom BCM2837
    • NVIDIA Tegra X1 (T210)
    • „Rockchip“ RK3328, RK3399
    • SBSA / SBBR serverių plokštės, tokios kaip Amazon Graviton, Graviton2, AMD Opteron A1100, Ampere eMAG 8180, Cavium ThunderX, Marvell ARMADA 8040.
  • Išplėstas ARMv7-A architektūros įrenginių palaikymas. Pridėtas big.LITTLE sistemų palaikymas ir paleidimas per UEFI. Galima naudoti iki 8 procesorių. Pridėtas SoC palaikymas:
    • Allwinner A10, A13, A20, A31, A80, A83T, GR8, H3, R8
    • Amlogic S805
    • Rankena Versatile Express V2P-CA15
    • Broadcom BCM2836, BCM2837
    • Intel Cyclone V SoC FPGA
    • NVIDIA Tegra K1 (T124)
    • "Samsung Exynos 5422"
    • TI AM335x, OMAP3
    • Xilinx Zynq 7000
  • Atnaujintos grafikos tvarkyklės, skirtos Intel GPU (pridėtas Intel Kabylake), NVIDIA ir AMD x86 sistemų palaikymas. DRM/KMS posistemis sinchronizuojamas su Linux 4.4 branduoliu. Pridėtos naujos GPU tvarkyklės, naudojamos ARM sistemose, įskaitant DRM/KMS tvarkykles, skirtas Allwinner DE2, Rockchip VOP ir TI AM335x LCDC, kadrų buferio tvarkykles, skirtas ARM PrimeCell PL111 ir TI OMAP3 DSS;
  • Patobulintas NetBSD paleidimas kaip svečio OS. Pridėtas palaikymas fw_cfg įrenginiui (QEMU Firmware Configuration), Virtio MMIO ir PCI, skirtas ARM. Suteiktas palaikymas HyperV, skirtas x86;
  • Buvo įdiegti skaitikliai, skirti stebėti našumą, leidžiantį analizuoti branduolio ir vartotojo programų našumą. Valdymas atliekamas per komandą tprof. Palaikomos Armv7, Armv8 ir x86 (AMD ir Intel) platformos;
  • Skirta x86_64 architektūrai pridėta branduolio adresų erdvės atsitiktinio paskirstymo mechanizmas (KASLR, Kernel Address Space Layout Randomization), leidžiantis padidinti atsparumą tam tikrų tipų atakoms, kurios išnaudoja branduolio pažeidžiamumą, generuojant atsitiktinį branduolio kodo išdėstymą atmintyje kiekvienos įkrovos metu;
  • Pridėtas x86_64 architektūros palaikymas KLEAK, branduolio atminties nutekėjimo aptikimo technika, kuri leido rasti ir ištaisyti daugiau nei 25 branduolio klaidas;
  • x86_64 ir Aarch64 architektūroms yra įdiegtas KASan (Kernel address sanitizer) derinimo mechanizmas, leidžiantis nustatyti atminties klaidas, tokias kaip prieiga prie jau atlaisvintų atminties blokų ir buferio perpildymo;
  • Pridėtas KUBSAN (branduolio neapibrėžtos elgsenos dezinfekavimo priemonė) mechanizmas, skirtas aptikti neapibrėžtos elgsenos branduolyje atvejus
  • x86_64 architektūrai buvo įdiegta KCOV (branduolių aprėpties) tvarkyklė, skirta analizuoti branduolio kodo aprėptį;
  • Pridėta „Userland Sanitizer“, kad aptiktų klaidas ir anomalijas, kai programos vykdomos vartotojo erdvėje;
  • Pridėtas KHH (Kernel Heap Hardening) mechanizmas, apsaugantis krūvą nuo tam tikrų tipų atminties klaidų;
  • Atlikta tinklo kamino saugumo auditas;
  • Patobulinti ptrace derinimo įrankiai;
  • Branduolys buvo išvalytas nuo senų ir neprižiūrimų posistemių, tokių kaip NETISDN (tvarkyklės daic, iavc, ifpci, ifritz, iwic, isic), NETNATM, NDIS, SVR3, SVR4, n8, vm86 ir ipkdb;
  • Paketų filtro galimybės buvo išplėstos ir našumas optimizuotas NPF, kuri dabar įjungta pagal numatytuosius nustatymus;
  • ZFS failų sistemos diegimas buvo atnaujintas, kad būtų tinkamas kasdieniam naudojimui. Galimybė paleisti iš ZFS ir naudoti ZFS šakniniame skaidinyje dar nepalaikoma;
  • Pridėtos naujos tvarkyklės, įskaitant „bwfm“, skirtą „Broadcom“ belaidžiams įrenginiams (Full-MAC), „ena“, skirta „Amazon Elastic Network Adapter“ ir „mcx“, skirta „Mellanox ConnectX-4 Lx EN“, „ConnectX-4 EN“, „ConnectX-5 EN“, „ConnectX-6 EN“ eterneto adapteriams. ;
  • SATA posistemis buvo perkurtas, pridėjus NCQ palaikymą ir pagerinant disko generuojamų klaidų tvarkymą;
  • Siūloma nauja usbnet sistema, skirta sukurti Ethernet adapterių tvarkykles su USB sąsaja;
  • Atnaujintos trečiųjų šalių komponentų versijos, įskaitant GCC 7.4, GDB 8.3, LLVM 7.0.0, OpenSSL 1.1.1d, OpenSSH 8.0 ir SQLite 3.26.0.

    Šaltinis: opennet.ru

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