Se ha lanzado MidnightBSD 4.0, un sistema operativo de escritorio basado en FreeBSD con elementos portados de DragonFly BSD, OpenBSD y NetBSD. El entorno de escritorio base está basado en Xfce (con GNUstep, Window Maker y GWorkspace opcionalmente disponibles). A diferencia de otras versiones de escritorio de FreeBSD, MidnightBSD se desarrolló inicialmente como una bifurcación de FreeBSD 6.1-beta, que se sincronizó con el código base de FreeBSD 7 en 2011 y posteriormente incorporó numerosas características de FreeBSD 9-13. MidnightBSD utiliza el sistema mport, que utiliza una base de datos SQLite para el almacenamiento de índices y metadatos, o el kit de herramientas Ravenports para la gestión de paquetes. Hay disponible una imagen de instalación de 1 GB (i386, amd64) para descargar.
Esta versión destaca por sus versiones actualizadas de bibliotecas de terceros y la incorporación de correcciones y nuevas funciones de la rama FreeBSD 13. Entre las principales novedades se incluyen:
- El gestor de paquetes mport se ha actualizado a la versión 2.7.3, que permite verificar puertos individuales con el comando "mport verify" y restaurar sumas de comprobación con "mport verify -r". El comando mport_install ahora gestiona las dependencias.
- Los programas init, service y cron utilizan variables de entorno establecidas para un usuario o una clase de usuario a través de login.conf.
- El kernel ahora admite el mapeo de memoria en modo W^X, lo que prohíbe el acceso de escritura y ejecución simultáneos.
- En lugar de GNU grep, se utiliza una versión con licencia BSD de la utilidad grep.
- Se agregó compatibilidad con Linux la llamada al sistema copy_file_range, así como las llamadas al sistema aio_readv y aio_writev.
- Se agregó soporte para depurar procesos usando procfs.
- Se agregó un controlador de luz de fondo para controlar la retroiluminación.
- El controlador cpufreq es compatible con la tecnología Intel Speed Shift.
- En el cliente y servidor NFS agregó soporte para NFSv4.2, NFS sobre TLS y atributos extendidos.
- Se ha completado la transición a la implementación del sistema de archivos ZFS del proyecto OpenZFS (2.1.15).
- La implementación del subsistema FUSE se ha actualizado a la versión 7.28 con soporte para FUSE_COPY_FILE_RANGE y FUSE_LSEEK.
- La pila TCP tiene soporte integrado para el algoritmo de reducción de velocidad proporcional (RFC 6937), que permite una restauración más rápida de los parámetros de flujo óptimos después de problemas temporales con la transmisión de datos.
- Se agregó soporte para VLAN anidadas (802.1ad).
- La compatibilidad con el protocolo SCTP se incluye en un módulo separado sctp.ko, que está deshabilitado de forma predeterminada en el kernel GENERIC.
- Se agregaron algoritmos de búsqueda de rutas de DPDK (Data Plane Development Kit) librte, lo que permite optimizar el trabajo con tablas de enrutamiento muy grandes.
- En arquitecturas de 64 bits, el sistema base se compila de forma predeterminada con soporte PAE (ejecutable independiente de la posición).
- Se agregó el controlador iwlwifi para tarjetas inalámbricas Intel que admiten nuevos chips y el estándar 802.11ac. El controlador se basa en Linux-controlador y código de Linux- Subsistemas net80211, cuyo funcionamiento en FreeBSD está garantizado por la capa linuxkpi.
- Todos los ejecutables del sistema base en plataformas de 64 bits tienen la aleatorización del diseño del espacio de direcciones (ASLR) habilitada de forma predeterminada.
- Compatibilidad con el protocolo de comunicación Netlink (RFC 3549) utilizado en Linux para organizar la interacción entre el núcleo y los procesos en el espacio de usuario.
- El hipervisor Bhyve ahora admite el uso compartido de archivos mediante VirtIO-9p (VirtFS), compatibilidad con dispositivos PCI HDAudio y compatibilidad con instantáneas. máquinas virtuales.
- Se ha añadido un conjunto de controladores VirtIO compatibles con la especificación VirtIO V1. Se ha añadido el controlador pvscsi para controladores SCSI paravirtualizados.
- Se agregó implementación de TLS a nivel de kernel (kTLS).
- Versiones actualizadas de LLVM 19.1.7, unbound 1.23.0, OpenSSH 9.9p2, lua 5.4.2, wpa+hostapd 2.11.
- Se eliminaron gcc, libdispatch y binutils.

Fuente: opennet.ru
