[PR #510] [MERGED] Add willamhou/hypervisor (no_std ARM64 bare-metal hypervisor) #990

Closed
opened 2026-04-15 06:26:25 -05:00 by GiteaMirror · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/rust-embedded/awesome-embedded-rust/pull/510
Author: @willamhou
Created: 4/15/2026
Status: Merged
Merged: 4/15/2026
Merged by: @BartMassey

Base: masterHead: add-hypervisor


📝 Commits (2)

  • 9e79244 Add willamhou/hypervisor (no_std ARM64 bare-metal hypervisor)
  • 93ce499 Add robot emoji and clarify QEMU-only per review feedback

📊 Changes

1 file changed (+1 additions, -0 deletions)

View changed files

📝 README.md (+1 -0)

📄 Description

Summary

Adds willamhou/hypervisor to the Firmware projects section.

What it is: A bare-metal ARM64 Type-1 hypervisor written in no_std Rust with a single runtime dependency (fdt crate). Runs at EL2 on QEMU virt machine, boots Linux 6.12.12 to BusyBox shell with 4 vCPUs, virtio-blk storage, and virtio-net networking.

Key features:

  • no_std, no heap allocator crate — custom bump allocator, zero external runtime dependencies beyond fdt
  • ARM64 EL2 bare-metal: Stage-2 page tables, GICv3 trap-and-emulate, PSCI, preemptive scheduling
  • FF-A v1.1 Secure Partition Manager Core (SPMC) at S-EL2 with TF-A boot chain
  • Multi-VM support with VMID-tagged TLBs, L2 virtual switch
  • 457 test assertions across 34 test suites, CI via GitHub Actions
  • GitHub Codespaces support for one-click demo (make run boots and runs all tests)

Why it fits: There are currently no ARM64 hypervisors listed in awesome-embedded-rust. This project demonstrates no_std Rust for systems programming at the highest privilege level (EL2/S-EL2), complementing the existing firmware projects which target microcontrollers.


🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/rust-embedded/awesome-embedded-rust/pull/510 **Author:** [@willamhou](https://github.com/willamhou) **Created:** 4/15/2026 **Status:** ✅ Merged **Merged:** 4/15/2026 **Merged by:** [@BartMassey](https://github.com/BartMassey) **Base:** `master` ← **Head:** `add-hypervisor` --- ### 📝 Commits (2) - [`9e79244`](https://github.com/rust-embedded/awesome-embedded-rust/commit/9e79244db5a0ea3e685a3502b595ebf57ce5373e) Add willamhou/hypervisor (no_std ARM64 bare-metal hypervisor) - [`93ce499`](https://github.com/rust-embedded/awesome-embedded-rust/commit/93ce499cba4c21aaece898e2b0269cd69c8d1c9b) Add robot emoji and clarify QEMU-only per review feedback ### 📊 Changes **1 file changed** (+1 additions, -0 deletions) <details> <summary>View changed files</summary> 📝 `README.md` (+1 -0) </details> ### 📄 Description ## Summary Adds [willamhou/hypervisor](https://github.com/willamhou/hypervisor) to the **Firmware projects** section. **What it is**: A bare-metal ARM64 Type-1 hypervisor written in `no_std` Rust with a single runtime dependency (`fdt` crate). Runs at EL2 on QEMU virt machine, boots Linux 6.12.12 to BusyBox shell with 4 vCPUs, virtio-blk storage, and virtio-net networking. **Key features**: - `no_std`, no heap allocator crate — custom bump allocator, zero external runtime dependencies beyond `fdt` - ARM64 EL2 bare-metal: Stage-2 page tables, GICv3 trap-and-emulate, PSCI, preemptive scheduling - FF-A v1.1 Secure Partition Manager Core (SPMC) at S-EL2 with TF-A boot chain - Multi-VM support with VMID-tagged TLBs, L2 virtual switch - 457 test assertions across 34 test suites, CI via GitHub Actions - GitHub Codespaces support for one-click demo (`make run` boots and runs all tests) **Why it fits**: There are currently no ARM64 hypervisors listed in awesome-embedded-rust. This project demonstrates `no_std` Rust for systems programming at the highest privilege level (EL2/S-EL2), complementing the existing firmware projects which target microcontrollers. --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
GiteaMirror added the pull-request label 2026-04-15 06:26:25 -05:00
GiteaMirror changed title from [PR #510] Add willamhou/hypervisor (no_std ARM64 bare-metal hypervisor) to [PR #510] [MERGED] Add willamhou/hypervisor (no_std ARM64 bare-metal hypervisor) 2026-04-17 04:30:02 -05:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: github-starred/awesome-embedded-rust#990