Rust OSDev Operating System Development in Rust

This Month in Rust OSDev: February 2026

Welcome to a new issue of "This Month in Rust OSDev". In these posts, we give a regular overview of notable changes in the Rust operating system development ecosystem.

This series is openly developed on GitHub. Feel free to open pull requests there with content you would like to see in the next issue. If you find some issues on this page, please report them by creating an issue or using our comment form at the bottom of this page.

Announcements, News, and Blog Posts

Here we collect news, blog posts, etc. related to OS development in Rust.

  • Linux 7.0 Officially Concluding The Rust Experiment
    • Rust is now formally accepted as a permanent part of the Linux kernel, shipping in production across multiple distributions and millions of Android devices.
  • The future for Tyr
    • Progress on Tyr, a Rust GPU driver for Arm Mali hardware. The DRM subsystem is reportedly "about a year away" from requiring new drivers to be written in Rust.
  • Microsoft LiteBox
    • A Rust library OS supporting kernel- and user-mode execution, with sandboxing for running unmodified Linux programs on Windows and SEV SNP.
  • This Month in Redox - January 2026
    • Redox got Cargo and rustc compiling natively and made progress on capability-based security.
  • CHERIoT Rust: Status update #0
    • Six months of progress porting Rust to the CHERIoT capability-based hardware architecture. Core and alloc now compile for the new riscv32cheriot-unknown-cheriotrtos target.
  • Ariel OS v0.3.0: BLE, Sensors, UART, and More!
    • New release adds BLE support, hardware-agnostic UART drivers, sensor abstraction, and expanded MCU support (ESP32, STM32, Nordic, RP).
  • Async/await on the GPU
    • Rust's Future trait and async/await running on GPU hardware, reusing the Embassy embedded executor.

Infrastructure and Tooling

In this section, we collect recent updates to rustc, cargo, and other tooling that are relevant to Rust OS development.

rust-osdev Projects

In this section, we give an overview of notable changes to the projects hosted under the rust-osdev organization.

uefi-rs

Maintained by @GabrielMajeri, @nicholasbishop, and @phip1611

uefi makes it easy to develop Rust software that leverages safe, convenient, and performant abstractions for UEFI functionality.

We merged the following PRs this month:

Thanks to @seijikun for their contributions!

bootloader

Maintained by @phil-opp and @Freax13

The bootloader crate implements a custom Rust-based bootloader for easy loading of 64-bit ELF executables. This month, we merged the following changes:

Thanks to @Freax13 and @Wasabi375 for their contributions!

virtio-spec-rs

Maintained by @mkroening

The virtio-spec crate provides definitions from the Virtual I/O Device (VIRTIO) specification. This project aims to be unopinionated regarding actual VIRTIO drivers that are implemented on top of this crate.

We merged the following PRs this month:

bootimage

Maintained by @phil-opp

The bootimage tool allows the creation of bootable disk images for bootloader-based kernels. It also provides a runner executable for cargo to make cargo run and cargo test work using QEMU.

We merged the following changes this month:

acpi

Maintained by @IsaacWoods

The acpi repository contains crates for parsing the ACPI tables – data structures that the firmware of modern computers use to relay information about the hardware to the OS.

We merged the following changes this month:

Thanks to @martin-hughes for their contributions!

endian-num

Maintained by @mkroening

The endian-num crate provides the Be (big-endian) and Le (little-endian) byte-order-aware numeric types.

We merged the following changes this month:

fuse-abi

Maintained by @mkroening

The fuse-abi crate provides bindings to FUSE devices. In motivation similar to that of virtio-spec, this project aims to provide correct foundational definitions for the FUSE kernel ABI.

We merged the following changes this month:

spinning_top

Maintained by @phil-opp

The spinning_top crate provides a simple spinlock implementation based on the abstractions of the lock_api crate.

We merged the following changes this month:

Other Projects

In this section, we describe updates to Rust OS projects that are not directly related to the rust-osdev organization. Feel free to create a pull request with the updates of your OS project for the next post.

metta-systems/ram-map-viewer

(Section written by @berkus)

Added a little GUI for visualizing memory maps. The application itself currently supports a map format that my initialisation code emits, but it has a MemorySource trait that you can implement to consume any format.

metta-systems/vesper

(Section written by @berkus)

Vesper has learned to put nucleus into higher-half memory and added a kernel syscall API with a single syscall - a capability invocation. I have a list of capabilities I want to implement, and first one implemented is Debug Console so you can output execution trace from your domains.

Init thread implementation in progress, now parsing DTB and preparing to launch a user-space "init" process. The video above shows memory map produced by the init thread after parsing a RasPi3 B+ 1Gb DTB.

Join Us?

Are you interested in Rust-based operating system development? Our rust-osdev organization is always open to new members and new projects. Just let us know if you want to join! A good way for getting in touch is our Zulip chat.

Comments