xv6-riscv VS hubris

Compare xv6-riscv vs hubris and see what are their differences.

hubris

A lightweight, memory-protected, message-passing kernel for deeply embedded systems. (by oxidecomputer)
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.
www.influxdata.com
featured
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com
featured
xv6-riscv hubris
17 33
6,199 2,813
5.2% 3.1%
0.0 9.6
16 days ago 1 day ago
C Rust
GNU General Public License v3.0 or later Mozilla Public License 2.0
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

xv6-riscv

Posts with mentions or reviews of xv6-riscv. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-09-08.
  • The rxv64 Operating System: MIT's xv6, in Rust, for SMP x86_64 machines
    5 projects | news.ycombinator.com | 8 Sep 2023
    okay, fair. i only got misled by the title of the post, which claims all-rust xv6 port.

    now that we cleared the userland part, here’s what I’m contemplating on the kernel side. i can’t think of anything simpler and more staple than this, so:

    https://github.com/dancrossnyc/rxv64/blob/main/kernel/src/ua...

    https://github.com/mit-pdos/xv6-riscv/blob/riscv/kernel/uart...

    honestly - i don’t feel at ease to tell which driver code is more instructional, which is easier to read, which is better documented, which is better covered with tests, which has more unsafety built into it (explicit or otherwise), what size are the object files, and what is easier to cross-compile and run on the designated target from, say, one of now-ubiquitous apple silicon devices.

    lest we forget that the whole point of it is “pedagogical”, i.e. to learn something about how a modern OS can be organized, and how computer generally works.

    and i’m just not sure.

  • Xv6: A modern, x86 reimplementation of 6th Edition Unix
    5 projects | news.ycombinator.com | 4 Aug 2023
    The x86 version of xv6 is no longer updated, the last updates took place about 7 years ago. Current xv6 supports RISC V in qemu, there are also ports to real RISC V devices (Kendryte/Canaan K210, Allwinner D1, StarFive JH7110, some hacked by me) and FPGA implementations ().

      https://github.com/mit-pdos/xv6-riscv/ (qemu)
  • seeking another faculty member re: xv6
    1 project | /r/osdev | 2 May 2023
    I am no help with recruitment, but simple search revealed "https://github.com/mit-pdos/xv6-riscv", were you aware of this?
  • MINIX is an awesome way to learn a wide range of CS concepts
    3 projects | /r/compsci | 20 Feb 2023
    Different repo under same org https://github.com/mit-pdos/xv6-riscv
  • Ask HN: Examples of Microkernels?
    13 projects | news.ycombinator.com | 4 Oct 2022
    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.
  • Risc V Assembly and Qemu
    1 project | /r/asm | 10 Jul 2022
  • How does multiprocessing on a multivitamin cpu work?
    2 projects | /r/osdev | 10 Mar 2022
    Yeah its from here: https://github.com/mit-pdos/xv6-riscv x86 version here: https://github.com/mit-pdos/xv6-public
  • Xv6 for RISC-V
    1 project | news.ycombinator.com | 21 Jan 2022
  • How do I become an Operating Systems developer?
    1 project | /r/cscareerquestions | 27 Nov 2021
    I would start with working through an OS textbook. Tanenbaum is highly regarded although I worked through OStep and I felt it was very approachable. Also check out wiki.osdev.org. Also, here's a re-inplementation of Unix version 6. I've been meaning to play around with it for a while.
  • Can't get xv6 to run on arch linux
    2 projects | /r/archlinux | 31 Oct 2021
    NOTE: we have stopped maintaining the x86 version of xv6, and switched our efforts to the RISC-V version (https://github.com/mit-pdos/xv6-riscv.git)

hubris

Posts with mentions or reviews of hubris. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-10-26.
  • Framework won't be just a laptop company anymore
    1 project | news.ycombinator.com | 24 Apr 2024
    > The CPUs in Oxide racks are AMD, so, presumably AMD-based compute rather than ARM.

    These don’t run Hubris though; based on the chips directory in the repo [0], they’re targeting a mix of NXP and ST parts, which are Arm, and the user isn’t likely to see them or care what firmware they’re running: they’re really pretty “boring”.

    [0] : https://github.com/oxidecomputer/hubris/tree/020d014880382d8...

  • Who killed the network switch? A Hubris Bug Story
    1 project | news.ycombinator.com | 26 Mar 2024
    I wouldn't put this comment here. It's not just some detail of this function; it's an invariant of the field that all writers have to respect (maybe this is the only one now but still) and all readers can take advantage of. So I'd add it to the `TaskDesc::regions` docstring. [1]

    [1] https://github.com/oxidecomputer/hubris/commit/b44e677fb39cd...

  • Oxide: The Cloud Computer
    9 projects | news.ycombinator.com | 26 Oct 2023
    With respect to Hubris, the build badge was, in turns out, pointing to a stale workflow. (That is, the build was succeeding, but the build badge was busted.) This comment has been immortalized in the fix.[0]

    With respect to Humility, I am going to resist the temptation of pointing out why one of those directories has a different nomenclature with respect to its delimiter -- and just leave it at this: if you really want to find some filthy code in Humility, you can do much, much better than that!

    [0] https://github.com/oxidecomputer/hubris/commit/651a9546b20ce...

  • Barracuda Urges Replacing – Not Patching – Its Email Security Gateways
    2 projects | news.ycombinator.com | 11 Jun 2023
    A lot of questions in there! Taking these in order:

    1. We aren't making standalone servers: the Oxide compute sled comes in the Oxide rack. So are not (and do not intend to be) a drop in replacement for extant rack mounted servers.

    2. We have taken a fundamentally different approach to firmware, with a true root of trust that can attest to the service processor -- which can turn attest to the system software. This prompts a lot of questions (e.g., who attests to the root of trust?), and there is a LOT to say about this; look for us to talk a lot more about this

    3. In stark contrast (sadly) to nearly everyone else in the server space, the firmware we are developing is entirely open source. More details on that can be found in Cliff Biffle's 2021 OSFC talk and the Hubris and Humility repos.[0][1][2]

    4. Definitely not vaporware! We are in the process of shipping to our first customers; you can follow our progress in our Oxide and Friends podcast.[3]

    [0] https://www.osfc.io/2021/talks/on-hubris-and-humility-develo...

    [1] https://github.com/oxidecomputer/hubris

    [2] https://github.com/oxidecomputer/humility

    [3] https://oxide-and-friends.transistor.fm/

  • Do you use Rust in your professional career?
    6 projects | /r/rust | 9 May 2023
  • Spotting and Avoiding Heap Fragmentation in Rust Applications
    3 projects | news.ycombinator.com | 6 Apr 2023
    everywhere, for example in https://github.com/oxidecomputer/hubris/search?q=dyn

    Is Box really allocating here? Is the "Rust By Example" text incomplete?

    Then I had to stop learning Rust for other reasons, but this doubt really hit me at the time.

  • What's the coolest thing you've done with Neovim?
    11 projects | /r/neovim | 4 Mar 2023
    I work on an embedded OS in Rust (Hubris) that has a very bespoke build system. As part of the build system, it has to set environmental variables based on (1) the target device and (2) the specific "task"; this is an OS with task-level isolation, so tasks are compiled as individual Rust crates.
  • TCG TPM2.0 implementations vulnerable to memory corruption
    1 project | news.ycombinator.com | 28 Feb 2023
    Oxide Computer told some storied about the difficulty of bring up of a new motherboard, and mentioned a lot of gotcha details and hack solutions for managing their AMD chip.

    They talked about their bring up sequence, boot chain verification on their motherboard, and designing / creating / verifying their hardware root of trust.

    I heard mention of this on a podcast recently, trying to find the reference.

    I'm pretty sure it was [S3]

    - "Tales from the Bringup Lab" https://lnns.co/FBf5oLpyHK3

    - or "More Tales from the Bringup Lab" https://lnns.co/LQur_ToJX9m

    But I found again these interesting things worth sharing on that search. https://oxide.computer/blog/hubris-and-humility, https://github.com/oxidecomputer/hubris

    Search 1 [S1], Trammell Hudson ep mentioning firmware (chromebook related iirc) https://lnns.co/pystdPm0QvG.

    Search 2 [S2], Security, Cryptography, Whatever podcast episode mentioning Oxide and roots of trust or similar. https://lnns.co/VnyTvdhBiGC

    Search links:

    [S1]: https://www.listennotes.com/search/?q=oxide+tpm

    [S2]: https://www.listennotes.com/search/?q=oxide%20and%20friends%...

    [S3]: https://www.listennotes.com/search/?q=oxide%20and%20friends%...

  • Well-documented Embedded dev board for video, ethernet, usb, file IO, etc
    1 project | /r/rust | 25 Jan 2023
  • OpenAI Used Kenyan Workers on Less Than $2 per Hour to Make ChatGPT Less Toxic
    3 projects | news.ycombinator.com | 18 Jan 2023
    When we started the company, we knew it would be a three year build -- and indeed, our first product is in the final stages of development (i.e. EMC/safety certification). We have been very transparent about our progress along the way[0][1][2][3][4][5][6][7] -- and our software is essentially all open source, so you can follow along there as well.[8][9][10]

    If you are asking "does anyone want a rack-scale computer?" the (short) answer is: yes, they do. The on-prem market has been woefully underserved -- and there are plenty of folks who are sick of Dell/HPE/VMware/Cisco, to say nothing of those who are public cloud borne and wondering if they should perhaps own some of their own compute rather than rent it all.

    [0] https://oxide-and-friends.transistor.fm/episodes/holistic-bo...

    [1] https://oxide-and-friends.transistor.fm/episodes/the-oxide-s...

    [2] https://oxide-and-friends.transistor.fm/episodes/bringup-lab...

    [3] https://oxide-and-friends.transistor.fm/episodes/more-tales-...

    [4] https://oxide-and-friends.transistor.fm/episodes/another-lpc...

    [5] https://oxide-and-friends.transistor.fm/episodes/the-pragmat...

    [6] https://oxide-and-friends.transistor.fm/episodes/tales-from-...

    [7] https://oxide-and-friends.transistor.fm/episodes/the-sidecar...

    [8] https://github.com/oxidecomputer/omicron

    [9] https://github.com/oxidecomputer/propolis

    [10] https://github.com/oxidecomputer/hubris

What are some alternatives?

When comparing xv6-riscv and hubris you can also consider the following projects:

xv6-public - xv6 OS

tock - A secure embedded operating system for microcontrollers

riscv-gnu-toolchain - GNU toolchain for RISC-V, including GCC

esp32 - Peripheral access crate for the ESP32

uom - Units of measurement -- type-safe zero-cost dimensional analysis

meta-raspberrypi - Yocto/OE BSP layer for the Raspberry Pi boards

rrs - Rust RISC-V Simulator

esp32-hal - A hardware abstraction layer for the esp32 written in Rust.

minixfromscratch - Development and compilation setup for the book versions of MINIX (2.0.0 and 3.1.0) on QEMU

l4v - seL4 specification and proofs

lambda-calculus - A lambda calculus interpreter that works on desktop and wasm

ferros - A Rust-based userland which also adds compile-time assurances to seL4 development.