jailhouse VS linux-embedded-hal

Compare jailhouse vs linux-embedded-hal and see what are their differences.

jailhouse

Linux-based partitioning hypervisor (by siemens)

linux-embedded-hal

Implementation of the `embedded-hal` traits for Linux devices (by rust-embedded)
Our great sponsors
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • WorkOS - The modern identity platform for B2B SaaS
  • SaaSHub - Software Alternatives and Reviews
jailhouse linux-embedded-hal
3 1
1,668 224
0.5% 3.5%
0.0 7.5
about 1 year ago 2 months ago
C Rust
GNU General Public License v3.0 or later Apache 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.

jailhouse

Posts with mentions or reviews of jailhouse. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2022-08-13.
  • Is there a way to run RISCV sim spike on bare metal?
    3 projects | /r/RISCV | 13 Aug 2022
    You could run it inside something like jailhouse hypervisor (https://github.com/siemens/jailhouse) if you want to give it direct dedicated "baremetal" access to hardware. You could do this inside of a buildroot linux image. This would need a customized simulator.
  • Nano98: Windows 98 that boots and runs under 5MB
    4 projects | news.ycombinator.com | 20 Sep 2021
    Yes indeed, and Siemens even has their own hypervisor: https://github.com/siemens/jailhouse
  • Rust for realtime motion control.
    5 projects | /r/rust | 20 Feb 2021
    Yeah, I think that is what something like https://www.toradex.com/computer-on-modules/apalis-arm-family/nxp-imx-8 is useful for, where it has a separate core. Or even on linux you can use isolcpus to get pseudo-isolation. There are also hardware hypervisors like Jailhouse (https://github.com/siemens/jailhouse) which can completely isolate hardware resources and I suppose might prevent the GPU from causing an issue with realtime task. But this definitely affects ease-of-use and probably requires a reduced feature set in the language (no dynamic allocations) and lots of unsafe code.

linux-embedded-hal

Posts with mentions or reviews of linux-embedded-hal. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2021-02-20.
  • Rust for realtime motion control.
    5 projects | /r/rust | 20 Feb 2021
    Makes sense. The EtherCAT master component can be loaded as a kernel module (for Etherlab), which I think is somewhat independent of the user code. The rust code interfaces with the driver through syscalls. There is some discussion about Rust with PREEMPT_RT here https://github.com/rust-embedded/linux-embedded-hal/issues/45 but it looks like it is still open.

What are some alternatives?

When comparing jailhouse and linux-embedded-hal you can also consider the following projects:

embedded-trainings-2020

atsamd - Target atsamd microcontrollers using Rust

riscv-isa-sim - Spike, a RISC-V ISA Simulator

bl602-hal - Hardware Abstract Layer for BL602 RISC-V WiFi + BLE SoC in embedded Rust

ethercat - Rust wrapper for the IgH EtherCAT master

buildroot - Buildroot, making embedded Linux easy. Note that this is not the official repository, but only a mirror. The official Git repository is at http://git.buildroot.net/buildroot/. Do not open issues or file pull requests here.

esp-hal - no_std Hardware Abstraction Layers for ESP32 microcontrollers

wiser - :racehorse: Extremely minimal vmm for linux written in C. Hopefully someday will spin linux-vm for you.

Hypervisor-From-Scratch - Source code of a multiple series of tutorials about the hypervisor. Available at: https://rayanfam.com/tutorials

botnana-api-rs - Botnana Client Library In Rust