märkimisväärne operatsioonisüsteemi väljalase , mis toob kaasa uue hulga funktsioone. Laadimiseks 470 MB suurused installipildid. NetBSD 9.0 on ametlikult saadaval kogustes ja 15 erineva CPU pere.
Eraldi on esile tõstetud 8 algselt toetatud porti, mis moodustavad NetBSD arendusstrateegia tuuma: amd64, i386, evbarm, evbmips, evbppc, hpcarm, sparc64 ja xen. 49 porti, mis on seotud selliste CPU-dega nagu alpha, hppa, m68010, m68k, sh3, sparc ja vax, liigitatakse teise kategooriasse, s.t. neid toetatakse endiselt, kuid nad on juba kaotanud oma asjakohasuse või neil ei ole piisavalt arendajatest huvitatud inimesi. Üks port (acorn26) on klassifitseeritud kolmandasse kategooriasse, kuhu kuuluvad mittetöötavad portid, mis võivad olla eemaldatud, kui ei leita entusiaste nende arendamiseks.
Peamised NetBSD 9.0:
- Uus hüperviisor on lisatud , mis vastab AMD CPU-de SVM virtualiseerimismehanismide ja Intel CPU-de VMX nõuetele. NVMM-i eripära on see, et tuumatasandil toimub vaid minimaalne vajalik raamistiku teostus virtualiseerimise riistvaramehhanismide ümber, samas kui kogu seadmete emulatsiooni kood on viidud tuumast kasutaja ruumi. Virtuaalmasinate haldamiseks on loodud tööriistakomplekt, mis põhineb libnvmm teegil, samuti qemu-nvmm pakett, et käitada külgsüsteeme NVMM-i kasutamisel. libnvmm API katab sellised funktsioonid nagu virtuaalmasina loomine ja käivitamine, külgsüsteemi mälule eraldamine, VCPU jaotamine. Samas ei sisalda libnvmm emulaatori funktsioone, vaid pakub vaid API-d, mis võimaldab NVMM-i toe integreerimist olemasolevatesse emulaatoritesse, nagu QEMU;
- Toetatud on 64-bitine AArch64 (ARMv8-A) arhitektuur, sealhulgas serverisüsteemid, mis vastavad ARM-i nõuetele (SBBR+SBSA) ja big.LITTLE süsteemid (kombinatsioon ühes kiibis võimsatest, kuid palju energiat tarbivatest, tuumadest ning vähem võimsatest, kuid energiatõhusamatest tuumadest). Toetatakse 32-bitiste rakenduste käivitamist 64-bitises keskkonnas läbi COMPAT_NETBSD32 kasutamise. Võib kasutada kuni 256 CPU-d. Toetatakse QEMU emulaatori ja SoC-i käivitamist.
- Allwinner A64, H5, H6
- Amlogic S905, S805X, S905D, S905W, S905X
- Broadcom BCM2837
- NVIDIA Tegra X1 (T210)
- Rockchip RK3328, RK3399
- SBSA/SBBR serverimoodulid, nagu Amazon Graviton, Graviton2, AMD Opteron A1100, Ampere eMAG 8180, Cavium ThunderX, Marvell ARMADA 8040.
- Laienenud toe olemasolu ARMv7-A arhitektuuri seadmete jaoks. Lisatud tugi big.LITTLE süsteemidele ja käivitamisvõimekus UEFI kaudu. Võib kasutada kuni 8 CPU-d. Lisatud toega SoC:
- Allwinner A10, A13, A20, A31, A80, A83T, GR8, H3, R8
- Amlogic S805
- Arm 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
- Uuendatud Intel GPU graafikadraiverid (lisatud tugi Intel Kabylake'ile), NVIDIA ja AMD jaoks x86 süsteemides. DRM/KMS alamsüsteem on sünkroniseeritud Linuxi 4.4 tuumaga. Lisatud uued draiverid GPU-dele, mida kasutatakse ARM süsteemides, sealhulgas DRM/KMS draiverid Allwinner DE2, Rockchip VOP ja TI AM335x LCDC jaoks, raamistikudraiver ARM PrimeCell PL111 ja TI OMAP3 DSS jaoks.
- Parandatud NetBSD toe töö võimalusi külalis-OS-ina. Lisatud tugi seadmele fw_cfg (QEMU Firmware Configuration), Virtio MMIO ja PCI ARM-i jaoks. Tagatud on HyperV tugi x86-le;
- Rakendatud on jõudluse jälgimise loendureid, mis võimaldavad reaalajas analüüsida tuuma ja kasutajarakenduste jõudlust. Halduse teostab käsk tprof. Toetatakse platvorme Armv7, Armv8 ja x86 (AMD ja Intel);
- x86_64 arhitektuuri jaoks tuuma aadressiruumi juhuslikkuse mehhanism (KASLR, Kernel Address Space Layout Randomization), mis suurendab vastupidavust teatud tüüpi rünnakute vastu, mis ekspluateerivad tuuma haavatavusi, genereerides iga käivitamise ajal juhusliku tuuma koodi paigutuse mätes;
- x86_64 arhitektuuri jaoks on lisatud tugi , tu teknik mälu leket tuvastamiseks, mis on võimaldanud leida ja parandada üle 25 viga tuumas;
- x86_64 ja Aarch64 arhitektuuride jaoks on rakendatud KASan (Kernel address sanitizer) silumismehhanism, mis võimaldab tuvastada mäluga seotud vigu, nagu juba vabastatud mäluplokkide juurde pääsemine ja puhversüsteemide ületäitumine;
- Lisatud on KUBSAN (Kernel Undefined Behavior Sanitizer), et tuvastada tuumas defineerimata käitumise juhtumeid.
- Architektuurile x86_64 on rakendatud KCOV (Kernel Coverage) draiver, et analüüsida tuuma koodi katvust.
- Lisatud on Userland Sanitizer, et tuvastada rakenduste täitmisel kasutajaruumis vigu ja anomaaliaid.
- Lisatud on KHH (Kernel Heap Hardening) mehhanism mäluhaldusveadelt kihi kaitsmiseks.
- võrgusteki turvaauditi.
- Parandatud on ladus tööriistade paketti ptrace.
- Tuuma koristamine vanadest ja hüljatud alamsüsteemidest, nagu NETISDN (draiverid daic, iavc, ifpci, ifritz, iwic, isic), NETNATM, NDIS, SVR3, SVR4, n8, vm86 ja ipkdb, on lõpule viidud.
- Pakettfiltri võimekust on suurendatud ja jõudlust on optimeeritud , mis on nüüd vaikimisi aktiveeritud.
- Failisüsteemi ZFS teostus on uuendatud ning viidud kasutamiseks sobivasse olekusse. ZFS-i käivitamisvõimalusi ja ZFS-i kasutamist juurepartitsioonil praegu ei toetata.
- Lisatud uued draiverid, sealhulgas bwfm Broadcomi traadita seadmete jaoks (Full-MAC), ena Amazon Elastic Network Adapteri jaoks ning mcx Ethernet-adapterite jaoks Mellanox ConnectX-4 Lx EN, ConnectX-4 EN, ConnectX-5 EN ja ConnectX-6 EN;
- SATA alamsüsteem on ümber töötatud, kus on lisatud NCQ tugi ja parendatud mäluseadmest antud tõrketeate töötlemist;
- uus usbnet raamistik Ethernet-adapterite draiverite loomiseks USB-liidese kaudu;
- Uuendatud kolmandate osapoolte komponentide versioonid, sealhulgas GCC 7.4, GDB 8.3, LLVM 7.0.0, OpenSSL 1.1.1d, OpenSSH 8.0 ja SQLite 3.26.0.
Allikas: opennet.ru
