Los desarrolladores del sistema operativo Redox, escrito en Rust y basado en la idea de microkernel, han publicado un informe sobre el desarrollo del proyecto correspondiente a mayo. Entre los logros se destaca la exitosa portación del entorno de escritorio Xfce. Se ha reconocido que el funcionamiento de Xfce en Redox es más estable que el del puerto anterior con el escritorio MATE, que todavía presenta problemas no resueltos con el gestor de archivos Caja.

Para Redox también se ha implementado un nuevo planificador de tareas que utiliza el algoritmo EEVDF (Earliest Eligible Virtual Deadline First). Este nuevo planificador tiene en cuenta los procesos que no han recibido suficientes recursos de CPU o que han recibido inapropiadamente demasiado tiempo de CPU al elegir el siguiente proceso para pasar a ejecución. En el primer caso, se fuerza el traspaso de control al proceso, y en el segundo, se retrasa.
Se ha continuado trabajando en la mejora de la compatibilidad con la biblioteca estándar de C POSIX relibc, escrita en Rust. Se ha mejorado el controlador de pseudo terminales. Se ha añadido soporte parcial para la limitación de recursos mediante el mecanismo rlimit.
Se ha aumentado significativamente la eficiencia de las operaciones poll y epoll (hasta 4 veces en pruebas en QEMU). Se ha implementado la caché de inodes, lo que ha permitido reducir el tiempo de compilación de prueba en GCC de 2411 a 670 ms. Se ha implementado la compilación incremental de cambios en los paquetes.
Del entorno de escritorio COSMIC se ha portado la interfaz gráfica para monitorear el estado del sistema. Se ha añadido la posibilidad de personalizar fuentes en el emulador de terminal. Se han portado CPython 3.15 y libdrm.

El sistema operativo Redox se desarrolla de acuerdo con la filosofía Unix y toma prestadas algunas ideas de SeL4, Minix y Plan 9. Redox utiliza el concepto de microkernel, donde en el nivel del núcleo solo se asegura la interacción entre procesos y la gestión de recursos, mientras que toda la funcionalidad adicional se ha trasladado a bibliotecas que pueden ser usadas tanto por el núcleo como por aplicaciones de usuario. Todos los controladores se ejecutan en espacio de usuario en entornos sandbox aislados.
El proyecto desarrolla su propio gestor de paquetes, un conjunto de utilidades estándar (binutils, coreutils, netutils, extrautils), la shell ion, la biblioteca estándar en C relibc, un editor de texto similar a vim llamado sodium, una pila de red y un sistema de archivos. La configuración se realiza en el lenguaje Toml. Para la compatibilidad con aplicaciones existentes, se proporciona una capa POSIX que permite ejecutar muchos programas sin necesidad de portar.
Se puede probar Redox utilizando las compilaciones actualizadas diariamente para máquinas virtuales y hardware real (aarch64, i586, i686, riscv64gc, x86_64). El hardware soportado incluye dispositivos con interfaz USB, chips de sonido AC’97 e Intel HD Audio, USB, SATA (AHCI, IDE) y NVMe.
Para la salida gráfica, se pueden utilizar las API VESA BIOS, UEFI GOP o un controlador para GPU Intel. El soporte para Wi-Fi y Bluetooth aún no está completo.
Fuente: opennet.ru
