ProHoster > Lanzamento do sistema operativo NetBSD 9.0
Lanzamento do sistema operativo NetBSD 9.0
Dispoñible versión principal do sistema operativo NetBSD 9.0, no que se implementa a seguinte parte de novas funcións. Para cargar preparado imaxes de instalación de 470 MB de tamaño. A versión de NetBSD 9.0 está dispoñible oficialmente en versións para 57 arquitecturas de sistemas e 15 familias de CPU diferentes.
Separadamente, hai 8 portos compatibles principalmente que forman o núcleo da estratexia de desenvolvemento de NetBSD: amd64, i386, evbarm, evbmips, evbppc, hpcarm, sparc64 e xen. 49 portos asociados a CPU como alpha, hppa, m68010, m68k, sh3, sparc e vax están clasificados na segunda categoría, é dicir. aínda son compatibles, pero perderon a súa relevancia ou non teñen un número suficiente de desenvolvedores interesados no seu desenvolvemento. Un porto (acorn26) inclúese na terceira categoría, que contén portos inoperantes que poden ser eliminados se non hai entusiastas interesados no seu desenvolvemento.
Engadiuse un novo hipervisor NVMM, que admite mecanismos de virtualización de hardware SVM para CPU AMD e VMX para CPU Intel. Unha característica especial de NVMM é que a nivel do núcleo só se realiza o conxunto mínimo necesario de enlaces en torno aos mecanismos de virtualización de hardware e todo o código de emulación de hardware móvese fóra do núcleo ao espazo do usuario. Para xestionar máquinas virtuais, preparáronse ferramentas baseadas na biblioteca libnvmm, así como o paquete qemu-nvmm para executar sistemas convidados mediante NVMM. A API libnvmm abrangue funcións como crear e executar unha máquina virtual, asignar memoria ao sistema invitado e asignar VCPU. Non obstante, libnvmm non contén funcións de emulador, senón que só proporciona unha API que che permite integrar o soporte de NVMM nos emuladores existentes como QEMU;
Ofrece soporte para arquitectura AArch64 de 64 bits (ARMv8-A), incluíndo sistemas de servidor compatibles con ARM Servidor Listo (SBBR+SBSA) e sistemas big.LITTLE (unha combinación de núcleos potentes, pero que consumen enerxía, e núcleos menos produtivos, pero máis eficientes enerxéticamente nun chip). Admite a execución de aplicacións de 32 bits nun ambiente de 64 bits mediante o uso de COMPAT_NETBSD32. Pódense usar ata 256 CPUs. A execución no emulador QEMU e SoC é compatible:
Allwinner A64, H5, H6
Amlogic S905, S805X, S905D, S905W, S905X
Broadcom BCM2837
NVIDIA Tegra X1 (T210)
Rockchip RK3328, RK3399
Placas de servidor SBSA/SBBR como Amazon Graviton, Graviton2, AMD Opteron A1100, Ampere eMAG 8180, Cavium ThunderX, Marvell ARMADA 8040.
Ampliouse a compatibilidade con dispositivos baseados na arquitectura ARMv7-A. Engadido soporte para sistemas big.LITTLE e arranque mediante UEFI. Pódense usar ata 8 CPU. Engadido soporte SoC:
Controladores de gráficos actualizados para GPU Intel (soporte adicional para Intel Kabylake), NVIDIA e AMD para sistemas x86. O subsistema DRM/KMS está sincronizado co núcleo Linux 4.4. Engadíronse novos controladores de GPU utilizados nos sistemas ARM, incluíndo controladores DRM/KMS para Allwinner DE2, Rockchip VOP e TI AM335x LCDC, controlador de framebuffer para ARM PrimeCell PL111 e TI OMAP3 DSS;
Compatibilidade mellorada para executar NetBSD como SO convidado. Engadido soporte para o dispositivo fw_cfg (Configuración de firmware QEMU), Virtio MMIO e PCI para ARM. Soporte proporcionado para HyperV para x86;
Implementáronse contadores para supervisar o rendemento, o que lle permite analizar o rendemento do núcleo e das aplicacións do usuario sobre a marcha. O control realízase mediante o comando tprof. Admítense as plataformas Armv7, Armv8 e x86 (AMD e Intel);
Para arquitectura x86_64 engadido un mecanismo para aleatorizar o espazo de enderezos do núcleo (KASLR, Kernel Address Space Layout Randomization), que permite aumentar a resistencia a certos tipos de ataques que explotan vulnerabilidades do núcleo xerando unha disposición aleatoria do código do núcleo na memoria en cada arranque;
Engadido soporte para a arquitectura x86_64 KLEAK, unha técnica para detectar fugas de memoria do núcleo, que nos permitiu atopar e corrixir máis de 25 erros no núcleo;
Para as arquitecturas x86_64 e Aarch64, implícase o mecanismo de depuración KASan (Kernel address sanitizer), que permite identificar erros de memoria, como o acceso a bloques de memoria xa liberados e desbordamentos de búfer;
Engadiuse o mecanismo KUBSAN (Kernel Undefined Behavior Sanitizer) para detectar casos de comportamento indefinido no núcleo
Para a arquitectura x86_64, implementouse o controlador KCOV (Kernel Coverage) para analizar a cobertura do código do núcleo;
Engadiuse Userland Sanitizer para detectar erros e anomalías ao executar aplicacións no espazo do usuario;
Engadido mecanismo KHH (Kernel Heap Hardening) para protexer o montón de certos tipos de erros de memoria;
Realizado auditoría de seguridade da pila de rede;
Ferramentas de depuración de ptrace melloradas;
Limpouse o núcleo de subsistemas antigos e non mantidos, como NETISDN (controladores daic, iavc, ifpci, ifritz, iwic, isic), NETNATM, NDIS, SVR3, SVR4, n8, vm86 e ipkdb;
Ampliáronse as capacidades do filtro de paquetes e optimizouse o rendemento FP, que agora está activado por defecto;
Actualizouse a implementación do sistema de ficheiros ZFS para facelo axeitado para o uso diario. Aínda non se admite a posibilidade de arrincar desde ZFS e usar ZFS na partición raíz;
Engadíronse novos controladores, incluíndo bwfm para dispositivos sen fíos Broadcom (Full-MAC), ena para adaptador de rede Amazon Elastic e mcx para adaptadores Ethernet Mellanox ConnectX-4 Lx EN, ConnectX-4 EN, ConnectX-5 EN, ConnectX-6 EN ;
O subsistema SATA foi redeseñado, engadindo soporte para NCQ e mellorando o manexo de erros xerados pola unidade;
Proposto novo marco usbnet para crear controladores para adaptadores Ethernet cunha interface USB;
Versións actualizadas de compoñentes de terceiros, incluíndo GCC 7.4, GDB 8.3, LLVM 7.0.0, OpenSSL 1.1.1d, OpenSSH 8.0 e SQLite 3.26.0.