Mirage – A programming framework for building type-safe, modular systems

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

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

    A sandboxed execution environment for unikernels

  • A big difference in my opinion is that projects like Mirage does not try to reimplement the same hardware drivers as the host system and instead implements much simpler drivers for virtual hardware.

    For example, how do you write to a block device? You make a hypercall with a "handle", offset into the block device, the number of blocks to write and a pointer to memory to be written. There's no pretending it's a spinny disk with sectors and heads or what have you.

    https://github.com/Solo5/solo5/blob/bf29b8af11feec9dbc2e74cc...

  • mirage

    MirageOS is a library operating system that constructs unikernels

  • 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
  • HaLVM

    Discontinued The Haskell Lightweight Virtual Machine (HaLVM): GHC running on Xen

  • unik

    The Unikernel & MicroVM Compilation and Deployment Platform

  • And on that note, I just found this list of UniKernel projects:

    http://unikernel.org/projects/

    I have especially had hopes for the UniK [1] project, as it was/is written in Go AFAIK. I see now it incorporates work from the Mirage project as well. Not sure what is the status of this project anymore though.

    [1] https://github.com/solo-io/unik

  • hermit-rs

    Hermit for Rust.

  • The rough Rust of this is https://github.com/hermit-os/hermit-rs

    Though last I looked it wasn't nearly as mature as MirageOS.

  • gilbraltar

    MirageOS on RPi4

  • It is possible to run Mirage in ARM under for example KVM or using the seccomp target.

    There is as well an experimental bare-metal target for raspberry pi 4 called gilbraltar https://github.com/dinosaure/gilbraltar. A big obstacle there is the device drivers. It is very cool to run bare metal on an rpi4, but it would be cool to be able use the network interface too.

  • unikraft

    A next-generation cloud native kernel designed to unlock best-in-class performance, security primitives and efficiency savings.

  • 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
  • nanos

    A kernel designed to run one and only one application in a virtualized environment

  • Unik was just a build tool that utilized other projects like Rump, Mirage, IncludeOS, etc. It's now dead since Solo pivoted a very long time ago to service mesh/api gateways.

    The GoRump port they use was from us and then we realized we needed to code our own from the ground up for many reasons so we wrote https://nanos.org (runs as a go unikernel in GCP).

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