A comparison of operating systems written in Rust

Overview

Rust OS comparison

A comparison of operating systems written in Rust.

There are several open source operating systems written in Rust. Most of them are proofs of concepts. The only system that goes a step further is redox. It comes with a window manager as well as basic applications like an editor and a file manager.

Name Architectures Pure Rust Active? Kernel architecture Target Userpace? Optional GUI? Contributors Filesystem License
redox x86 and x86_64 yes yes Microkernel General purpose yes yes 50 ZFS/RedoxFS MIT
Tock Cortex M yes no 40 APL 2 / MIT
intermezzOS x86_64 no yes ? PoC no no 18 no APL 2 / MIT
RustOS i386 ? yes None PoC no no 10 no APL 2 / MIT
rustboot i386 ? no None PoC no no 8 no MIT
bkernel ARM yes yes ? Embedded devices no no 4 ? GPL with linking exception
SOS x86_64 yes yes Microkernel PoC no no 3 ? MIT
reenix Brown's CS167/9 no no Monolithic (current state) PoC no no 3 ? unknown
Quasar x86_64 ? no ? ? no no 2 ? ?
Tifflin x86_64/amd64 almost yes Monolithic ? ? yes 1 ISO9660 2-Clause-BSD

Also worth noting: Robigalia, a sel4 userspace, written in Rust.

Blog posts and papers

-Writing the second video game for the Micro:bit in Rust

Embedded Systems

Comments
  • Add discussion of Theseus OS

    Add discussion of Theseus OS

    Hi @flosse,

    Thanks for maintaining this neat list of Rust-based OS projects!

    I'd like to add one more: Theseus OS. Theseus is a somewhat large OS written from scratch in pure Rust, thanks to collaborative efforts from 20+ contributors over the past several years. I have added links to it and a brief description of its key aspects in the comparison table of systems.

    opened by kevinaboos 2
  • add SOS

    add SOS

    I've taken the liberty of adding my own toy kernel project, SOS.

    While SOS is still very much a work in progress, I think it's noteworthy enough to add to the list, because as far as I know, it's the first working x86_64 kernel implemented in pure Rust. As of hawkw/sos-kernel@f436b2dc25bfa5aba11c6dbffcbd5e058e9cfafd, SOS boots to long mode without a single assembly file in the repo (with a little help from multiboot).

    I hope it's not too presumptuous of me to add my own work to the list. Thanks!

    opened by hawkw 1
  • Add MOROS

    Add MOROS

    Hi, I'd like to add MOROS to the list!

    It's a hobby OS I've been working on and off for the past 2 years, it's inspired by Unix but it definitely won't be big and professional! The goal is to have a clean and simple text environment to have fun with computers from the 2005 to 2020 era.

    Currently there's a limited userspace capable of running simple nasm programs (one at a time!) with some syscalls, but most programs (a shell, an editor, a lisp, a chess game, a 2048 game...) are running from kernelspace. It also has it's own simple filesystem and a network stack.

    https://github.com/vinc/moros/blob/trunk/doc/index.md

    moros
    opened by vinc 0
  • Tupai

    Tupai

    Hi,

    I'd just like to draw attention to Tupai, the kernel and userland I've started working on. It's still in an early stage of development, but I have big plans for the project. Check out https://www.github.com/tupai-os/

    opened by zesterer 0
  • redox x86?

    redox x86?

    redox is marked as x86 and x86_64, although it seems the redox kernel only has an x86_64 linker script, it also has an arm target file here. No mention anywhere of x86 though

    opened by jzck 0
  • Robigalia

    Robigalia

    Hi, just to let you know about a Rust + L4 micro-kernel OS

    https://robigalia.org/ https://gitlab.com/robigalia

    Far from finished but a promising concept with the "goal number 2"...

    opened by miniwark 1
  • Why is Intermezzos marked as not being pure Rust?

    Why is Intermezzos marked as not being pure Rust?

    I am just wondering why intermezzOS has been flagged as not being a pure Rust implementation? The repository contains nothing but Rust code and Assembly (It also shows Ruby from a vagrant file). If there is something I am missing I would love to know! Thanks for your help!

    opened by bwinterton 2
Owner
Markus Kohlhase
(flosse = free libre open source software engineering)
Markus Kohlhase
A Real Time Operating System in Rust for Cortex M3 embedded systems

A Real Time Operating System in Rust for Cortex M3 embedded systems

Manuel Forcén Muñoz 5 Jun 1, 2022
Hubris is a microcontroller operating environment designed for deeply-embedded systems

A lightweight, memory-protected, message-passing kernel for deeply embedded systems.

Oxide Computer Company 2.1k Jan 6, 2023
A new operating system kernel with Linux binary compatibility written in Rust.

Kerla Kerla is a monolithic operating system kernel from scratch in Rust which aims to be compatible with the Linux ABI, that is, runs Linux binaries

Seiya Nuta 3.1k Jan 1, 2023
Operating system written in Rust for NumWorks calculator (model n0110)

RustWorks An OS (eventually) for the Numworks calculator (model n0110). Setup First install Rust by following these instuctions then: rustup target ad

null 30 Nov 10, 2022
SteinsOS is an operating system written in Rust

SteinsOS is an operating system featuring non-preemptive kernel targeting on single-core armv8 architecture.

Sheng 84 Dec 15, 2022
Xrs is a POSIX-subset operating system kernel written in Rust.

XRS-OS ( ?? WIP) Xrs is a POSIX-subset operating system kernel written in Rust. Current project team members 0x5459 core developer (he/him) 0x5457 cor

null 7 Nov 16, 2022
An attempt at an operating system written in Rust

Rust Operating System An attempt at a simple operating system in Rust and a semester project for the Operating Systems course at CS@UCU. Documentation

Andriy Sultanov 10 Jan 15, 2022
Rux - An x86_64 toy operating system kernel written in Rust

Rux - An x86_64 toy operating system kernel written in Rust. Rux is a port of the Hux kernel, my x86 32-bit single-CPU toy kernel written in C, following the OSTEP book structure and terminology.

Guanzhou Jose Hu 6 Feb 26, 2022
A Rust Operating System, written from the ground up

ThornOS A Rust Operating System, written from the ground up Build Dependencies Bootimage TODO: Document build process in more detail Acknowledgements

Stuart Reid 1 Mar 31, 2022
🌃 Shade is an operating system written for the communication.

?? Shade Shade is an operating system written for the communication. ?? Experiencing Building Requirements System: Windows, Linux or macOS. Memory: 1G

EnabledFish 2 Dec 22, 2022
A hobby operating system written in Zig & C that reimagines classic UNIX ideas for modern technology

zorroOS is a hobby operating system written in Zig, currently targeting x86_64 PCs. Building Building zorroOS is simple. First, ensure that you have t

TalonFox 34 Jul 5, 2023
A hobby operating system, in Rust

intermezzOS: kernel intermezzOS is a hobby operating system. This repository is for its kernel. See the website for more. License This project is dual

intermezzOS 1.3k Jan 1, 2023
A simples rust operating system that prints hello world.

rust-os-helloworld A simples rust operating system that prints hello world. Just run: cargo install bootimage and: cargo bootimage Install QEMU and: q

null 3 Nov 24, 2021
Writing an OS in Rust, To Study Operating System and Computer System

Hun Os Writing an OS in Rust, To Study Operating System and Computer System Reference Os Written In Rust https://github.com/seonghun-dev/blog_os https

Jung Seonghun 2 Dec 15, 2022
A secure embedded operating system for microcontrollers

Tock is an embedded operating system designed for running multiple concurrent, mutually distrustful applications on Cortex-M and RISC-V based embedded

Tock Embedded OS 4.1k Jan 5, 2023
A secure embedded operating system for microcontrollers

Tock is an embedded operating system designed for running multiple concurrent, mutually distrustful applications on Cortex-M and RISC-V based embedded

Tock Embedded OS 4k Jan 2, 2023
The Stupid Operating System

Stupid Operating System SOS is a simple, tiny toy OS implemented in Rust. I'm writing this mostly for fun, to learn more about OS design and kernel ha

SOS 241 Dec 15, 2022
Aero is a new modern, unix based operating system. It is being developed for educational purposes.

Areo Aero is a new modern, unix based operating system written in Rust and is being developed for educational purposes. Aero follows the monolithic ke

Anhad Singh 623 Dec 24, 2022
The official kernel for Popcorn OS, and operating system designed for handheld devices.

About Popkern is the kernel for Popcorn OS, an operating system designed for handheld devices. As such, the kernel is (to be) optimised at all levels

Team Scena 3 Sep 19, 2021