Kerla: Monolithic kernel in Rust, aiming for Linux ABI compatibility

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

    A new operating system kernel with Linux binary compatibility written in Rust.

  • smoltcp

    a smol tcp/ip stack

  • This here is a kernel including a memory-safe TCP/IP stack (https://github.com/smoltcp-rs/smoltcp/), and not having it crash or be full of security vulnerabilities due to preventable memory corruption is a quality beyond personal language preferences.

  • 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
  • kerla-demo

    Discontinued ssh://demo.kerla.dev

  • Author here. I've made the demo system public [1] but it's written just for me so it should be painful to set up the same environment.

    The mechanism is pretty simple: a Node.js server (running on genuine Linux) listens on tcp:22. Once you connect, it boots a dedicated Firecracker microVM instance and forwards network packets between your SSH client and VM.

    Regarding the command history, others (including I) can't see what you type. If you could, it must be a vulnerability.

    [1] https://github.com/nuta/kerla-demo

  • mosys

  • headcrab

    A modern Rust debugging library 🦀

  • I just meant that even big projects posted here in the past like the Headcrab debugger: https://github.com/headcrab-rs/headcrab have been seemingly abandoned now.

    Even Rocket https://github.com/SergioBenitez/Rocket seems to have greatly slowed development unfortunately.

  • Rocket

    A web framework for Rust.

  • I just meant that even big projects posted here in the past like the Headcrab debugger: https://github.com/headcrab-rs/headcrab have been seemingly abandoned now.

    Even Rocket https://github.com/SergioBenitez/Rocket seems to have greatly slowed development unfortunately.

  • tock

    A secure embedded operating system for microcontrollers

  • 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
  • xous-core

    The Xous microkernel

  • There are more good efforts, the BeTrusted guys are working on Xous, its a microkernel for a phone like device called the Precurser.

    https://github.com/betrusted-io/xous-core

    As a embedded service processor OS for a big server rack, Oxide Computer is working on 'HubrisOS'. They seem to have not released it yet, but that will be open sourced.

    https://github.com/oxidecomputer

    Those are two efforts where I know real resources are going into.

  • warp

    A super-easy, composable, web server framework for warp speeds. (by seanmonstar)

  • Nowadays the Rust http libraries to use are warp or axum

    https://github.com/seanmonstar/warp

    https://github.com/tokio-rs/axum

  • axum

    Ergonomic and modular web framework built with Tokio, Tower, and Hyper

  • Nowadays the Rust http libraries to use are warp or axum

    https://github.com/seanmonstar/warp

    https://github.com/tokio-rs/axum

  • Rust-for-Linux

    Adding support for the Rust language to the Linux kernel. (by Rust-for-Linux)

  • Yes, this is called "fallible allocations." You add methods with the "try_" prefix that work like the existing methods, except they return a Result which fails if it's out of memory instead of panicking.

    We have a light / temporary fork of the Rust stdlib allocator with fallible allocation support: https://github.com/Rust-for-Linux/linux/tree/rust/rust/alloc

    See e.g. https://github.com/Rust-for-Linux/linux/commit/487d7578bd036...

  • oxide-and-friends

    Show notes from Oxide and Friends recordings

  • Also, where are my manners?! Really glad you're enjoying our Twitter Spaces[0] -- and thank you for the kind words!

    [0] https://github.com/oxidecomputer/twitter-spaces

  • src

    Read-only git conversion of OpenBSD's official CVS src repository. Pull requests not accepted - send diffs to the tech@ mailing list.

  • PIOS

    PIOS: Parallel Instructional Operating System - Instructional Template Code (by bford)

  • I think you're on the right track. I am similar to you and not so skilled at low level OS development. There is an educational OS called PIOS from Yale's CS department with specific goals in mind, but it boots from metal so the code is a great resource. Here's the code: https://github.com/bford/PIOS

    Also, you could try reading the Plan 9 source code.

    (I would say the code is what you're after now, but in case you are interested in more of the theory of why it's designed that way, you can check out the research paper here: https://dedis.cs.yale.edu/2010/det/)

  • SaaSHub

    SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives

    SaaSHub logo
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