Skip to main content

Operating systems

I love using macOS as my personal OS.

And I like NixOS and it's nix package manager.

MIT OS Engineering (with code) & Making a RISC-V Operating System using Rust courses are great. Many more nice resources can be found here.

Interesting OSes

  • MirageOS - Library operating system that constructs unikernels. (Docs) (Docs code) (mirage-solo5) (The road ahead for MirageOS in 2021) (MirageOS 4.0) (HN) (Examples of simple MirageOS apps)
  • QubesOS - Reasonably secure operating system. (Lobsters)
  • Plan 9 (Plan 9 C Compiler for RISC-V) (Talk)
  • Fuchsia
  • DahliaOS - Modern, secure, lightweight and responsive operating system, combining the best of GNU/Linux and Fuchsia OS. (GitHub) (HN) (Pangolin Desktop UI) (ISO releases)
  • Redox - Unix-like Operating System written in Rust. (Web) (Kernel Code)
  • Toddler - Well-designed usable and portable microkernel OS.
  • OS67 - Unix-like toy kernel.
  • SerenityOS - Graphical Unix-like operating system for x86 computers. (Web) (Year 3 in review) (HN) (HN) (Interview with Creator) (HN)
  • Resea - Microkernel-based hackable operating system. (Implementing Resea GUI)
  • Rux - Hobbyist microkernel written in Rust, featuring a capability-based system similar to seL4.
  • redshirt - Experiment to build some kind of operating-system-like environment where executables are all in WASM and are loaded from an IPFS-like decentralized network.
  • Spectrum OS - Declarative, reproducible, compartmentalized Linux. (Developer manual) (Discussions) (HN)
  • mikado - RISC-V Experimental OS.
  • mkernel - Minimalist kernel which prints "my first kernel" on the screen and then hangs. (HN)
  • Barebones - Barebones multiboot kernel for beginners.
  • xv6 - Re-implementation of Dennis Ritchie's and Ken Thompson's simple, Unix-like teaching operating system. (PDF) (HN) (HN) (Lobsters) (xv6 explained) (Course) (HN)
  • xv6 for RISC-V
  • Orange Slice - Research kernel and hypervisor attempting to get fully deterministic emulation with minimum performance cost.
  • Cloud Hypervisor - Open source Virtual Machine Monitor (VMM) that runs on top of KVM.
  • RancherOS - Tiny Linux distro that runs the entire OS as Docker containers.
  • Bottlerocket OS - Free and open-source Linux-based operating system meant for hosting containers.
  • XNU kernel - Part of the Darwin operating system for use in macOS and iOS operating systems.
  • Haiku - Open-source operating system that specifically targets personal computing. (HN) (Haiku Community)
  • Pebble - Microkernel and userspace written in Rust, with first-class message passing.
  • seL4 microkernel (Article) (HN) (Web)
  • Barebones amd64 kernel built using 9front
  • RustyHermit - Rust-based, lightweight unikernel.
  • Distaff - Zero-knowledge virtual machine written in Rust.
  • zCore - Reimplement Zircon microkernel in Rust.
  • 9front (Lobsters)
  • lilith - POSIX-like x86-64 kernel and userspace written in Crystal.
  • Genode - Operating System Framework.
  • Shrine - TempleOS distro for heretics.
  • Subgraph OS - Desktop computing and communications platform that is designed to be resistant to network-borne exploit and malware attacks. (Handbook)
  • Mezzano - Operating system written in Common Lisp. (HN)
  • Collapse OS - Bootstrap post-collapse technology. (HN) (Web)
  • LegoOS - Disseminated, Distributed OS for Hardware Resource Disaggregation.
  • CuBitOS - General-purpose, formally-verified, 64-bit operating system in SPARK/Ada for x86-64.
  • Demikernel - Library operating system architecture designed for use with kernel-bypass I/O devices.
  • Drone - Embedded Operating System for writing real-time applications in Rust. (drone-core) (CLI)
  • Manticore - Research operating system, written in Rust. (Web)
  • CyanOS - x86 monolithic kernel operating system, coded in C++ 17 and few lines of x86 Assembly.
  • ChaiOS - Modular multi-platform hobby OS. Hybrid kernel, largely monolithic. Kernel C library is dynamically linked.
  • Tails - Portable operating system that protects against surveillance and censorship. (Intro)
  • EmuTOS - Free operating system for Atari ST computers, and more. (Web)
  • HalideOS - Experimental operating system written entirely from scratch. It supports a basic shell with some commands including a command line calculator.
  • Biscuit - Monolithic, POSIX-subset operating system kernel in Go. (HN) (Code)
  • illumos - Unix operating system which provides next-generation features for downstream distributions, including advanced system debugging, next generation filesystem, networking, and virtualization options. (Rise and Development of illumos) (Full disk space on an illumos VM)
  • Managarm - Pragmatic microkernel-based OS with fully asynchronous I/O. (Fully Asynchronous OS Based on Modern C++ - Alexander Grinten (2020))
  • EggOS - Go unikernel running on x86 bare metal. (HN)
  • KnightOS - Third-party operating system for TI calculators.
  • eduOS-rs - Teaching operating system written in Rust. (Web)
  • Stupid Operating System - Simple, tiny toy OS implemented in Rust.
  • Theseus OS - New OS written from scratch in Rust to experiment with novel OS structure, better state management, and how to shift OS responsibilities like resource management into the compiler. (HN)
  • TempleOS - Talk to God on up to 64 cores. (Web) (TempleOS on real hardware)
  • CactusOS - Simple operating system that is aimed to not be anything like linux.
  • Zephyr - New generation, scalable, optimized, secure RTOS for multiple hardware architectures. (Docs)
  • Cosmos - Operating system "construction kit". Build your own OS using managed languages such as C#, VB.NET, and more. (Web)
  • MollenOS - Modern operating system that is built with focus on abstraction and a modular design.
  • Azure RTOS ThreadX - Advanced real-time operating system (RTOS) is designed specifically for deeply embedded applications.
  • HelenOS - Portable microkernel-based multiserver operating system written from scratch. (Web)
  • Pure Rust x86_64 bootloader and kernel
  • bootloader - Experimental x86 bootloader written in Rust and inline assembly.
  • Cyjon - Simple, clean, multi-tasking operating system written in pure assembly language for 64-bit processors from the AMD64 family.
  • Contiki - Open source operating system that runs on tiny low-power microcontrollers.
  • OSv - Modular unikernel designed to run applications securely on micro-VMs . (Code) (HN) (HN 2)
  • Rumprun - Uses rump kernels to provide the Rumprun unikernel. Rumprun works on not only on hypervisors such as KVM and Xen, but also on bare metal.
  • Rump Kernels - Enable you to build the software stack you need without forcing you to reinvent the wheels.
  • mOS - Unix-like operating system developed from scratch and aims to POSIX compliant.
  • pdp7-unix - Project to resurrect Unix on the PDP-7 from a scan of the original assembly code.
  • core-os-riscv - xv6-like operating system on RISC-V with multi-core support.
  • rCore - Rust version of THU uCore OS. Linux compatible.
  • dgOS
  • Eltanin - Free, simple, and complete general-purpose operating system.
  • skiftOS - Simple, handmade, operating system with a graphical user interface. (Web)
  • ChrysaLisp - Parallel OS, with GUI, Terminal, OO Assembler, Class libraries, C-Script compiler, Lisp interpreter and more. (HN)
  • Pluto - x86 kernel written in Zig.
  • LeOS Kernel - Kernel project for operating system for ARM 64bit (AArch64) written in Rust. (Web)
  • RustyHermit - Rust-based, lightweight unikernel. (Article)
  • Jehanne - Simple operating system. (Web)
  • Mimosa - Operating system consists of a minimal kernel built on C++ and Scheme.
  • daintree - ARMv8-A operating system, plus a UEFI bootloader, all written in Zig.
  • AROS - Lightweight, efficient, and flexible desktop operating system. (HN)
  • M3 - Microkernel-based system for heterogeneous manycores.
  • vanadinite - RISC-V OS written in Rust.
  • Tetris-OS - Operating system that only plays Tetris. (HN) (Video)
  • Helium - BSD-based OS project that aims to provide an experience like and some compatibility with macOS.
  • Harvey - Distributed operating system. (Web)
  • TypOS - Operating system for typechecking processes.
  • KolibriOS - Tiny yet incredibly powerful and fast operating system. (HN)
  • Kerla - Monolithic kernel in Rust, aiming for Linux ABI compatibility. (HN) (Writing a Linux-compatible kernel in Rust) (HN) (Lobsters)
  • rustboot - Tiny 32 bit kernel written in Rust.
  • mycelium - Hobby OS in Rust.
  • WINIX OS - UNIX-style Operating System for the Waikato RISC Architecture Microprocessor. (HN)
  • Aquila OS - Complete Operating System (kernel + system) that is designed to be POSIX compliant and mostly ISA transparent. (Web)
  • FuzixOS - Because Small Is Beautiful.
  • Mongoose - Small toy OS with no memory protection. (Lobsters)
  • Node Replicated Kernel - Research OS kernel for x86-64 (amd64) machines written in rust. (Web) (Book)
  • Multics - Pioneering operating system, commonly considered the "progenitor" of the UNIX operating system. (Code)
  • Tilck - Tiny Linux-Compatible Kernel.
  • Airyx OS - BSD-based OS project that aims to provide an experience like and some compatibility with macOS. (Code) (HN) (Lobsters) (HN)
  • Lemon OS - UNIX-like 64-bit operating system written in C++. (Code)
  • Pumpkin OS - x64 port/re-implementation of PalmOS. (Lobsters)
  • SteinsOS - Operating system featuring non-preemptive single-threaded kernel targeting on armv8.
  • EmbassyOS - Graphical operating system for running self-hosted software. (Web)
  • Singularity - Microsoft’s Experimental OS. (HN)
  • Tupai Kernel
  • Deus - Portable kernel written in Rust.
  • Funk - Functional kernel written in OCaml.
  • liumOS - Toy operating system which supports NVDIMM natively.
  • Tofita - All-new kernel for the Greentea OS.
  • RISC-V OS in Rust
  • RedLeaf - Research operating system developed from scratch in Rust to explore the impact of language safety on operating system organization.
  • Kwast - Rust operating system running WebAssembly as userspace in ring 0.
  • seL4 Core Platform - Simple operating system for the seL4 microkernel.
  • opuntiaOS - Operating system targeting x86 and ARMv7.
  • Genesis - Minimal OS written in Jack.
  • Nanos - Kernel designed to run only one application in virtualized environment. (HN) (Code)
  • ZealOS - Modernized, professional fork of the 64-bit Temple Operating System.
  • GrapheneOS - Private and secure mobile OS. (GitHub)
  • Florence OS - Renaissance of Operating Systems in Zig.
  • BRUTAL - Operating system inspired by brutalist design that combines the ideals of UNIX from the 1970s with modern technology and engineering. (Code)
  • Embox - Modular and configurable OS for embedded applications.
  • TinyOS - Open source, BSD-licensed operating system designed for low-power wireless devices.
  • ZygOS - Achieving Low Tail Latency for Microsecond-scale Networked Tasks.
  • IX - Protected dataplane operating system project. (Web)
  • Minimal bare metal kernel in Swift
  • Cleese - Functioning operating system written almost entirely in Python.
  • Tifflin - OS kernel written in rust. Non POSIX.
  • Vinix - Modern, fast, and useful operating system in the V programming language.
  • Aero - Experimental, Unix-like OS written in Rust.
  • MuditaOS - Mobile operating system optimized for E Ink displays.
  • Essence - Desktop operating system built from scratch. (HN) (Code)
  • Twizzler - Research operating system designed to explore novel programming models for new memory hierarchy designs.
  • Phantom - Persistent Operating System. (HN)
  • xv7 - Operating System in 100% Pure Rust.
  • gokvm - KVM based tiny x86 hypervisor written in pure Go, which can boot Linux.
  • rkernel - Minimal x86_64 Rust OS kernel.
  • ValkyrieOS - UNIX-like hobby kernel built from scratch in C++20.
  • etheryal Kernel - Open Source Rust kernel; Runs WASM and WASI as lightweight containers.
  • Stardust Oxide - Rust-based Unikernel. (Reddit)
  • Lua RTOS - Real-time operating system designed to run on embedded systems, with minimal requirements of FLASH and RAM memory.
  • Inferno - Small operating system for building cross platform distributed systems. (HN)
  • Makatea - Qubes-like OS on seL4.
  • MOROS - Obscure Rust Operating System.
  • House - Haskell Operating System. (Video)
  • Zen - Experimental operating system written in Zig.
  • My first OS built from scratch
  • owlOS - Free UNIX-like operating system written in Rust.
  • ScratchOS - Basic operating system written in Scratch3.
  • CrabOS - Hobby operating system written in Rust.
  • WasabiOS - Web browser + OS in Rust.
  • MnemOS - Small operating system in Rust.
  • zigux - Attempt to write a (semi) functional OS in Zig.
  • Lyre - Effort to write a modern, fast, and useful operating system.

Notes