Ask HN: Examples of Microkernels?

This page summarizes the projects mentioned and recommended in the original post on news.ycombinator.com

Our great sponsors
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • WorkOS - The modern identity platform for B2B SaaS
  • SaaSHub - Software Alternatives and Reviews
  • xv6-riscv

    Xv6 for RISC-V

  • I'm reading through the MIT xv6 OS handbook and code (here: https://github.com/mit-pdos/xv6-riscv/) and they mention the fact that they created it as a monolithic kernel since most unix systems are monolithic. They then introduce the microkernel concept. Are there microkernel concepts out there (especially code) I can check out? I'm curious to see how userspace processes communicate to kernel processes to execute privileged actions.

  • lk

    LK embedded kernel

  • This is based on little kernel from recollection (noted somewhere in the docs)

    https://github.com/littlekernel/lk

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

    InfluxDB logo
  • rCore

    Rust version of THU uCore OS. Linux compatible.

  • zCore

    Zircon microkernel reimplemented in Rust.

  • FreeRTOS-Kernel

    FreeRTOS kernel files only, submoduled into https://github.com/FreeRTOS/FreeRTOS and various other repos.

  • qubes-mirage-firewall

    A Mirage firewall VM for QubesOS

  • Here's one that is "production" ready: the Mirage-Firewall microkernel running on Qubes OS.[0]

    [0] : https://github.com/mirage/qubes-mirage-firewall

  • composite

    A component-based OS (by gwsystems)

  • WorkOS

    The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.

    WorkOS logo
  • xnu

  • dyld

  • hubris

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

  • Hubris is a microkernel-ish OS for embedded systems, and has a bunch of documentation about its design:

    https://hubris.oxide.computer/reference/

    It's all open-source on Github:

    https://github.com/oxidecomputer/hubris

    (I work at Oxide, mostly using Hubris)

  • unikraft

    FlexOS is a Unikraft-based OS allowing users to easily specialize the safety and isolation strategy at compilation time. (by project-flexos)

  • It seemed to be in a similar space to Genode when I had a brief look. Is it clear how it compares?

    A system that claims to allow you to configure it in microkernel and other modes might be interesting for comparison of the approaches, but I've only noticed it via a local connexion: https://project-flexos.github.io/

  • Atmosphere

    Atmosphère is a work-in-progress customized firmware for the Nintendo Switch.

  • The Nintendo Switch runs a microkernel called "Horizon". It has been fully reverse-engineered, and a 1:1 open-source reimplementation exists: https://github.com/Atmosphere-NX/Atmosphere/tree/master/meso...

  • darwin-xnu

    Discontinued Legacy mirror of Darwin Kernel. Replaced by https://github.com/apple-oss-distributions/xnu

  • And the original basis for the NeXTStep -> OpenStep -> OS X -> iOS / MacOS line. Source for XNU, the current incarnation of Apple's microkernel is available as part of the Darwin stuff: https://github.com/apple/darwin-xnu

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts