El autor del shell Sway y del lenguaje Hare está desarrollando un nuevo microkernel Helios y OC Ares

Drew DeVault presentó su nuevo proyecto: el microkernel Helios. En su forma actual, el proyecto se encuentra en una etapa temprana de desarrollo y hasta ahora solo admite la carga de demostración en sistemas con arquitectura x86_64. Y en el futuro planean implementar soporte para las arquitecturas iscv64 y aarch64. El código del proyecto está escrito en el lenguaje de programación del sistema Hare, que es cercano a C, con inserciones de ensamblador y se distribuye bajo la licencia GPLv3. Para familiarizarse con el estado de desarrollo, se ha preparado una imagen ISO de prueba (1 MB).

La arquitectura Helios está construida teniendo en cuenta los conceptos del microkernel seL4, en el que los componentes para administrar los recursos del kernel se colocan en el espacio del usuario y se utilizan para ellos las mismas herramientas de control de acceso que para los recursos del usuario. El microkernel proporciona mecanismos mínimos para controlar el acceso al espacio de direcciones físicas, interrupciones y recursos del procesador, y los controladores de abstracción de alto nivel para interactuar con el hardware se implementan por separado encima del microkernel en forma de tareas a nivel de usuario.

Helios utiliza un modelo de control de acceso basado en "capacidades". El kernel proporciona primitivas para asignar páginas de memoria, asignar memoria física al espacio de direcciones, administrar tareas y manejar llamadas a puertos de dispositivos de hardware. Además de los servicios del kernel, como la gestión de memoria virtual, el proyecto también ha preparado controladores para ejecutar la consola a través de un puerto serie y la API BIOS VGA. La siguiente fase del desarrollo del kernel incluirá multitarea preventiva, IPC, PCI, manejo de excepciones, análisis de tablas ACPI y manejadores de interrupciones en el espacio de usuario. A más largo plazo, está previsto implementar soporte para SMP, IOMMU y VT-x.

En cuanto al espacio de usuario, los planes incluyen el desarrollo de servicios de bajo nivel y el administrador del sistema Mercury, una capa de compatibilidad POSIX (Luna), una colección de controladores Venus, un entorno para desarrolladores de Gaia y un marco para probar el kernel de Vulcan. El desarrollo se está llevando a cabo con miras a su uso sobre hardware real: en la etapa inicial está previsto crear controladores para ThinkPad, incluidos controladores para GPU Intel HD, HD Audio e Intel Gigabit Ethernet. Después de esto, se espera que aparezcan controladores para GPU AMD y placas Raspberry Pi.

El objetivo final del proyecto es crear un sistema operativo Ares completo con su propio administrador de paquetes e interfaz gráfica. El motivo de la creación del proyecto es el deseo de experimentar y trabajar como entretenimiento (el principio “sólo por diversión”). A Drew DeVault le gusta fijarse metas ambiciosas y luego, a pesar del escepticismo general, las implementa. Este fue el caso del entorno de usuario Sway, el cliente de correo electrónico Aerc, la plataforma de desarrollo colaborativo SourceHut y el lenguaje de programación Hare. Pero incluso si el nuevo proyecto no se distribuye adecuadamente, servirá como punto de partida para el desarrollo de nuevos sistemas útiles. Por ejemplo, se planea migrar el depurador desarrollado para Helios a la plataforma Linux y las bibliotecas para crear una interfaz gráfica no estarán vinculadas a la plataforma.

El autor del shell Sway y del lenguaje Hare está desarrollando un nuevo microkernel Helios y OC Ares


Fuente: opennet.ru

Añadir un comentario