Drew DeVault has introduced his new project — the microkernel Helios. Currently, the project is in the early stages of development and only supports a demonstration boot on x86_64 architecture systems. There are plans to implement support for iscv64 and aarch64 architectures in the future. The project code is written in Hare, a system programming language close to C, with assembly inserts, and is distributed under the GPLv3 license. A test ISO image (1 MB) has been prepared for those interested in the development status.
The Helios architecture is built with inspiration from the microkernel concepts of seL4, where components for managing kernel resources are moved to user space, and the same access control mechanisms are applied to them as to user resources. The microkernel provides minimal mechanisms for managing access to physical address space, interrupts, and CPU resources, while high-level abstractions for interacting with hardware drivers are implemented separately above the microkernel as tasks executing at the user level.
Helios employs a capability-based access control model. The kernel offers primitives for allocating memory pages, mapping physical memory into the address space, managing tasks, and handling hardware port requests. In addition to kernel services like virtual memory management, the project has also prepared drivers for console operation through the serial port and BIOS VGA API. In the next stage of kernel development, features such as preemptive multitasking, IPC, PCI, exception handling, ACPI table parsing, and user-space interrupt handlers will be implemented. In the longer term, support for SMP, IOMMU, and VT-x is planned.
Regarding user space, plans include the development of low-level services and the Mercury system manager, a POSIX compatibility layer (Luna), the Venus driver collection, a developer environment (Gaia), and a framework for kernel testing (Vulcan). Development is focused on real hardware use — initially, drivers for ThinkPad are planned, including drivers for Intel HD GPU, HD Audio, and Intel Gigabit Ethernet. After that, drivers for AMD GPUs and Raspberry Pi boards are expected.
The ultimate goal of the project is to create a fully functional Ares operating system with its own package manager and graphical interface. The motivation behind the project is a passion for experimentation and working as a pastime (the principle of 'just for fun'). Drew DeVault enjoys setting ambitious goals and, despite general skepticism, achieving them. This was the case with the Sway user environment, the Aerc email client, the SourceHut collaborative development platform, and the Hare programming language. Even if the new project does not gain the deserved popularity, it will serve as a foundation for the development of new useful systems. For instance, the debugger developed for Helios is planned to be ported to the Linux platform, and libraries for building graphical interfaces will not be platform-dependent.

Source: opennet.ru
