NetBSD 9.0 operētājsistēmas izlaišana

Pieejams galvenais operētājsistēmas laidiens NetBSD 9.0, kurā ir ieviesta nākamā jauno funkciju daļa. Iekraušanai sagatavots instalācijas attēli 470 MB lieli. NetBSD 9.0 laidiens ir oficiāli pieejams būvējumos 57 sistēmas arhitektūras un 15 dažādas CPU saimes.

Atsevišķi ir 8 galvenokārt atbalstītie porti, kas veido NetBSD attīstības stratēģijas kodolu: amd64, i386, evbarm, evbmips, evbppc, hpcarm, sparc64 un xen. 49 porti, kas saistīti ar CPU, piemēram, alfa, hppa, m68010, m68k, sh3, sparc un vax, tiek klasificēti otrajā kategorijā, t.i. joprojām tiek atbalstīti, bet ir zaudējuši savu aktualitāti vai arī nav pietiekami daudz izstrādātāju, kas būtu ieinteresēti to attīstībā. Viena osta (acorn26) ir iekļauta trešajā kategorijā, kurā ir nestrādājošas ostas, kuras ir tiesīgas izņemt, ja nav to attīstībā ieinteresētu entuziastu.

Atslēga uzlabojumi NetBSD 9.0:

  • Pievienots jauns hipervizors NVMM, kas atbalsta aparatūras virtualizācijas mehānismus SVM AMD CPU un VMX Intel CPU. NVMM īpatnība ir tāda, ka kodola līmenī tiek veikta tikai minimālā nepieciešamā saišu kopa ap aparatūras virtualizācijas mehānismiem un viss aparatūras emulācijas kods tiek pārvietots no kodola lietotāja telpā. Lai pārvaldītu virtuālās mašīnas, ir sagatavoti rīki, kuru pamatā ir libnvmm bibliotēka, kā arī qemu-nvmm pakotne viesu sistēmu darbināšanai, izmantojot NVMM. Libnvmm API aptver tādas funkcijas kā virtuālās mašīnas izveide un palaišana, atmiņas piešķiršana viesu sistēmai un VCPU piešķiršana. Tomēr libnvmm nesatur emulatora funkcijas, bet nodrošina tikai API, kas ļauj integrēt NVMM atbalstu esošajos emulatoros, piemēram, QEMU;
  • Nodrošina atbalstu 64 bitu AArch64 arhitektūrai (ARMv8-A), tostarp ar ARM saderīgām serveru sistēmām Serveris gatavs (SBBR+SBSA), un big.LITTLE sistēmas (jaudīgu, bet enerģiju patērējošu kodolu un mazāk produktīvu, bet energoefektīvāku kodolu kombinācija vienā mikroshēmā). Tā atbalsta 32 bitu lietojumprogrammu palaišanu 64 bitu vidē, izmantojot COMPAT_NETBSD32. Var izmantot līdz 256 CPU. Tiek atbalstīta darbība QEMU emulatorā un SoC:
    • Allwinner A64, H5, H6
    • Amlogic S905, S805X, S905D, S905W, S905X
    • Broadcom BCM2837
    • NVIDIA Tegra X1 (T210)
    • Rockchip RK3328, RK3399
    • SBSA/SBBR serveru plates, piemēram, Amazon Graviton, Graviton2, AMD Opteron A1100, Ampere eMAG 8180, Cavium ThunderX, Marvell ARMADA 8040.
  • Ir paplašināts atbalsts ierīcēm, kuru pamatā ir ARMv7-A arhitektūra. Pievienots atbalsts big.LITTLE sistēmām un sāknēšanai, izmantojot UEFI. Var izmantot līdz 8 CPU. Pievienots SoC atbalsts:
    • 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
  • Atjaunināti grafiskie draiveri Intel GPU (pievienots atbalsts Intel Kabylake), NVIDIA un AMD x86 sistēmām. DRM/KMS apakšsistēma ir sinhronizēta ar Linux 4.4 kodolu. Pievienoti jauni GPU draiveri, ko izmanto ARM sistēmās, tostarp DRM/KMS draiveri Allwinner DE2, Rockchip VOP un TI AM335x LCDC, kadru bufera draiveri ARM PrimeCell PL111 un TI OMAP3 DSS;
  • Uzlabots atbalsts NetBSD palaišanai kā viesa OS. Pievienots atbalsts fw_cfg ierīcei (QEMU programmaparatūras konfigurācija), Virtio MMIO un PCI ARM. Nodrošināts atbalsts HyperV x86;
  • Veiktspējas uzraudzībai ir ieviesti skaitītāji, kas ļauj analizēt kodola un lietotāja lietojumprogrammu veiktspēju lidojuma laikā. Kontrole tiek veikta, izmantojot komandu tprof. Tiek atbalstītas Armv7, Armv8 un x86 (AMD un Intel) platformas;
  • X86_64 arhitektūrai piebilda kodola adrešu telpas nejaušības noteikšanas mehānisms (KASLR, Kernel Address Space Layout Randomization), kas ļauj palielināt pretestību noteikta veida uzbrukumiem, kas izmanto kodola ievainojamības, katrā sāknēšanas reizē ģenerējot nejaušu kodola koda izkārtojumu atmiņā;
  • Pievienots x86_64 arhitektūras atbalsts KLEAK, kodola atmiņas noplūdes noteikšanas paņēmiens, kas ļāva atrast un izlabot vairāk nekā 25 kodola kļūdas;
  • x86_64 un Aarch64 arhitektūrām ir ieviests KASan (Kernel address sanitizer) atkļūdošanas mehānisms, kas ļauj identificēt atmiņas kļūdas, piemēram, piekļuvi jau atbrīvotajiem atmiņas blokiem un bufera pārpildes;
  • Pievienots KUBSAN (Kernel Undefined Behavior Sanitizer) mehānisms, lai atklātu nenoteiktas uzvedības gadījumus kodolā.
  • Arhitektūrai x86_64 ir ieviests KCOV (Kernel Coverage) draiveris, lai analizētu kodola koda pārklājumu;
  • Pievienots Userland Sanitizer, lai atklātu kļūdas un anomālijas, palaižot lietojumprogrammas lietotāja telpā;
  • Pievienots KHH (Kernel Heap Hardening) mehānisms, lai aizsargātu kaudzi no noteikta veida atmiņas kļūdām;
  • Diriģēts tīkla steku drošības audits;
  • Uzlaboti ptrace atkļūdošanas rīki;
  • Kodols tika attīrīts no vecām un neapkoptām apakšsistēmām, piemēram, NETISDN (draiveri daic, iavc, ifpci, ifritz, iwic, isic), NETNATM, NDIS, SVR3, SVR4, n8, vm86 un ipkdb;
  • Pakešu filtra iespējas ir paplašinātas un veiktspēja optimizēta NPF, kas tagad ir iespējots pēc noklusējuma;
  • ZFS failu sistēmas ieviešana ir atjaunināta, lai padarītu to piemērotu ikdienas lietošanai. Iespēja sāknēt no ZFS un izmantot ZFS saknes nodalījumā vēl netiek atbalstīta;
  • Ir pievienoti jauni draiveri, tostarp bwfm Broadcom bezvadu ierīcēm (Full-MAC), ena Amazon elastīgajam tīkla adapterim un mcx Mellanox ConnectX-4 Lx EN, ConnectX-4 EN, ConnectX-5 EN, ConnectX-6 EN Ethernet adapteriem. ;
  • SATA apakšsistēma ir pārveidota, pievienojot atbalstu NCQ un uzlabojot diskdziņa radīto kļūdu apstrādi;
  • Ierosināts jauns usbnet ietvars Ethernet adapteru draiveru izveidei ar USB interfeisu;
  • Atjauninātas trešo pušu komponentu versijas, tostarp GCC 7.4, GDB 8.3, LLVM 7.0.0, OpenSSL 1.1.1d, OpenSSH 8.0 un SQLite 3.26.0.

    Avots: opennet.ru

Pievieno komentāru