významné vydanie operačného systému , v ktorom sú implementované ďalšie nové možnosti. Na stiahnutie sú inštalačné obrazy s veľkosťou 470 MB. Vydanie NetBSD 9.0 je oficiálne k dispozícii v zostavách pre a 15 rôznych rodín CPU.
Osobitne sú vyčlenené 8 primárne podporovaných portov, ktoré tvoria jadro stratégie rozvoja NetBSD: amd64, i386, evbarm, evbmips, evbppc, hpcarm, sparc64 a xen. 49 portov, súvisiacich s takými CPU, ako sú alpha, hppa, m68010, m68k, sh3, sparc a vax, patrí do druhej kategórie, t.j. sú ešte podporované, ale už stratili aktuálnosť alebo nemajú dostatočný počet záujemcov o ich rozvoj. Jeden port (acorn26) je zaradený do tretej kategórie, v ktorej sú nefunkčné porty, ktoré sú na vymazanie, ak sa nenájde záujemcovia o ich vývoj.
Kľúčové NetBSD 9.0:
- Pridaný nový hypervizor , ktorý podporuje hardvér pre virtualizáciu SVM pre AMD CPU a VMX pre Intel CPU. Špeciálnosť NVMM spočíva v tom, že na úrovni jadra beží len minimálny potrebný súbor obalov okolo hardvérových mechanizmov virtualizácie, pričom celý kód emulácie hardvéru je presunutý z jadra do užívateľského priestoru. Na správu virtuálnych strojov je pripravený nástroj na základe knižnice libnvmm, ako aj balík qemu-nvmm na spustenie hostiteľských systémov s použitím NVMM. API libnvmm pokrýva funkcie ako vytváranie a spúšťanie virtuálneho stroja, pridelenie pamäte hostiteľskému systému, rozdeľovanie VCPU. Pri tom libnvmm neobsahuje funkcie emulátora, ale iba poskytuje API umožňujúce integráciu podpory NVMM do existujúcich emulátorov, ako je QEMU;
- Zabezpečená podpora 64-bitovej architektúry AArch64 (ARMv8-A), vrátane serverových systémov splňujúcich požiadavky ARM (SBBR+SBSA), a systémy big.LITTLE (kombinácia v jednom čipe výkonných, ale veľa energie spotrebujúcich jadier a menej výkonných, ale energeticky efektívnych jadier). Podporuje vykonávanie 32-bitových aplikácií v 64-bitovom prostredí prostredníctvom použitia COMPAT_NETBSD32. Môže byť využité až do 256 CPU. Podporuje spustenie v emulátore QEMU a SoC:
- Allwinner A64, H5, H6
- Amlogic S905, S805X, S905D, S905W, S905X
- Broadcom BCM2837
- NVIDIA Tegra X1 (T210)
- Rockchip RK3328, RK3399
- Serverové dosky SBSA/SBBR, ako sú Amazon Graviton, Graviton2, AMD Opteron A1100, Ampere eMAG 8180, Cavium ThunderX, Marvell ARMADA 8040.
- Rozšírená podpora zariadení založených na architektúre ARMv7-A. Pridaná podpora systémov big.LITTLE a zavádzania cez UEFI. Možné použitie až 8 CPU. Pridaná podpora 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
- Aktualizované grafické ovládače pre GPU Intel (pridaná podpora Intel Kabylake), NVIDIA a AMD pre systémy x86. Pod systém DRM/KMS synchronizovaný s jadrom Linux 4.4. Pridané nové ovládače pre GPU, používané na systémoch ARM, vrátane DRM/KMS-ovládačov pre Allwinner DE2, Rockchip VOP a TI AM335x LCDC, ovládač framebuffer pre ARM PrimeCell PL111 a TI OMAP3 DSS;
- Vylepšená podpora fungovania NetBSD ako hosťovskej OS. Pridaná podpora zariadenia fw_cfg (QEMU Firmware Configuration), Virtio MMIO a PCI pre ARM. Zabezpečená podpora HyperV pre x86;
- Implementované počítadlá na monitorovanie výkonu, ktoré umožňujú v reálnom čase analyzovať výkon jadra a používateľských aplikácií. Riadenie sa uskutočňuje pomocou príkazu tprof. Podporované sú platformy Armv7, Armv8 a x86 (AMD a Intel);
- Pre architektúru x86_64 mechanizmus randomizácie adresného priestoru jadra (KASLR, Kernel Address Space Layout Randomization), ktorý zvyšuje odolnosť voči niektorým typom útokov, ktoré zneužívajú zraniteľnosti jadra, tým, že pri každom spustení vytvára náhodné rozloženie kódu jadra v pamäti;
- Pre architektúru x86_64 pridaná podpora , technika na identifikáciu únikov pamäte jadra, ktorá umožnila nájsť a opraviť viac ako 25 chýb v jadre;
- Pre architektúry x86_64 a Aarch64 implementovaný ladicí mechanizmus KASan (Kernel address sanitizer), ktorý umožňuje identifikovať chyby pri práci s pamäťou, ako sú prístupy k už uvoľneným blokom pamäte a pretečenia búferov;
- Pridaný mechanizmus KUBSAN (Kernel Undefined Behavior Sanitizer) na identifikáciu prípadov nepredvídateľného správania v jadre
- Pre architektúru x86_64 implementovaný ovládač KCOV (Kernel Coverage) na analýzu pokrytia kódu jadra;
- Pridaný Userland Sanitizer na identifikáciu chýb a anomálií pri vykonávaní aplikácií v užívateľskom priestore;
- Pridaný mechanizmus KHH (Kernel Heap Hardening) na ochranu haldy pred niektorými typmi chýb pri práci s pamäťou;
- audít bezpečnosti sieťového zásobníka;
- Vylepšené ladicí nástroje ptrace;
- Vyčistila sa jadra od starých a opustených subsystémov, ako sú NETISDN (ovládače daic, iavc, ifpci, ifritz, iwic, isic), NETNATM, NDIS, SVR3, SVR4, n8, vm86 a ipkdb;
- Rozšírené možnosti a optimalizácia výkonu paketového filtra. , ktorý je teraz predvolene aktivovaný;
- Aktualizovaná implementácia súborového systému ZFS, ktorý bol dotiahnutý do stavu vhodného na každodenné použitie. Možnosti spúšťania zo ZFS a používanie ZFS na rootovom oddiele zatiaľ nie sú podporované;
- Pridané nové ovládače, vrátane bwfm pre bezdrôtové zariadenia Broadcom (Full-MAC), ena pre Amazon Elastic Network Adapter a mcx pre Ethernet adaptéry Mellanox ConnectX-4 Lx EN, ConnectX-4 EN, ConnectX-5 EN, ConnectX-6 EN;
- Prepracovaný subsystém SATA, ktorý teraz podporuje NCQ a zlepšil spracovanie chýb vydávaných úložným zariadením;
- nový rámec usbnet na vytváranie ovládačov pre Ethernet adaptéry s rozhraním USB;
- Aktualizované verzie externých komponentov, vrátane GCC 7.4, GDB 8.3, LLVM 7.0.0, OpenSSL 1.1.1d, OpenSSH 8.0 a SQLite 3.26.0.
Zdroj: opennet.ru
