The author of the Sway shell and the Hare language develops a new microkernel Helios and OC Ares

Drew DeVault presented his new project - the Helios microkernel. In its current form, the project is at the initial stage of development and so far only supports demo download on systems with x86_64 architecture. And in the future they plan to implement support for the iscv64 and aarch64 architectures. The project code is written in the system programming language Hare close to C with assembler inserts and is distributed under the GPLv3 license. To get acquainted with the state of development, a test iso-image (1 MB) has been prepared.

The architecture of Helios is built with an eye on the concept of the seL4 microkernel, in which the components for managing kernel resources are placed in user space and the same access control tools are used for them as for user resources. The microkernel provides minimal mechanisms for controlling access to the physical address space, interrupts, and processor resources, and high-level abstraction drivers for interacting with the hardware are implemented separately on top of the microkernel in the form of user-level tasks.

Helios uses a "capability" based access control model. The kernel provides primitives for allocating memory pages, mapping physical memory into address space, managing tasks, and handling hardware device port accesses. In addition to kernel services, such as virtual memory management, the project also prepared drivers for console operation via serial port and BIOS VGA API. The next phase of kernel development will provide preemptive multitasking, IPC, PCI, exception handling, ACPI table parsing, and user-space interrupt handlers. In the longer term, it is planned to implement support for SMP, IOMMU and VT-x.

In terms of user space, there are plans to develop low-level services and the Mercury system manager, the POSIX compatibility layer (Luna), the Venus driver collection, the Gaia developer environment, and the Vulcan kernel testing framework. Development is underway with an eye to use on top of real hardware - at the initial stage, it is planned to create ThinkPad drivers, 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 full-fledged Ares operating system with its own package manager and graphical interface. The reason for creating the project is the craving for experiments and work as entertainment (the principle of "just for fun"). Drew DeWalt likes to set ambitious goals for himself and then, despite the general skepticism, implements them. This was the case with the Sway user environment, the Aerc email client, the SourceHut collaborative development platform, and the Hare programming language. But even if the new project does not receive proper distribution, it will serve as a starting point for the development of new useful systems. For example, the debugger developed for Helios is planned to be ported to the Linux platform, and the libraries for building a graphical interface will not be platform-specific.

The author of the Sway shell and the Hare language develops a new microkernel Helios and OC Ares


Source: opennet.ru

Add a comment