The Maestro kernel, written in Rust and partially compatible with Linux.

The project for developing a lightweight Unix-like kernel using Rust has been introduced, implementing a subset of Linux kernel system calls sufficient for creating typical working environments. The project was initiated in 2018 and originally used the C language but was completely restarted from scratch in 2020, taking into account the accumulated experience and switched to Rust to reduce the likelihood of errors arising from memory handling. The kernel code is distributed under the MIT license. In addition to the kernel, the Rust project also develops X11-server, a package manager, bootloader, installer, utility sets, and other components necessary for building an operating system.

The kernel has a monolithic architecture and currently supports only x86 systems in 32-bit mode. The codebase of the kernel consists of 48.8 thousand lines of code (for comparison, the Linux kernel has 33 million lines). It can be run in QEMU, VirtualBox, or directly on hardware. At this stage of development, Maestro implements 31% (135 out of 437) Linux system calls, which is sufficient for loading a console environment based on bash and the standard C library Musl. Some utilities from the GNU coreutils set, such as ls, cat, mkdir, rm, rmdir, uname, and whoami, can also be executed in the Maestro-based environment.

The Maestro kernel, written in Rust and partially compatible with Linux.

Available capabilities of Maestro include:

  • Drivers for PS/2 keyboards and terminal with text mode and partial support for ANSI sequences.
  • A memory management system supporting virtual memory.
  • A task scheduler based on a round-robin algorithm with support for POSIX signals.
  • PCI device recognition.
  • IDE/PATA driver.
  • Ext2 file system.
  • Support for virtual file systems /tmp and /proc.
  • Support for mounting file systems and disk partitions MBR and GPT.
  • Support for initramfs.
  • RTC driver for timers and accurate time.
  • Support for loading kernel modules.
  • The ability to execute files in ELF format.

Currently, work is underway to create a network stack, after which support for direct file mapping in memory and shared libraries is planned.

Source: opennet.ru

Buy reliable website hosting with DDoS protection, VPS VDS servers 🔥 Buy reliable website hosting with DDoS protection, VPS VDS servers | ProHoster