Saturday, May 10, 2025

Show HN: Miralis – a RISC-V virtual firmware monitor https://ift.tt/LJFCwoI

Show HN: Miralis – a RISC-V virtual firmware monitor Miralis is a RISC-V firmware that virtualizes RISC-V firmware. In other words, it runs firmware in user-space (M-mode software in U-mode). The fact that this is even possible is interesting: indeed, not all ISAs are virtualizable, and the same applies for their firmware mode. It all boils down to the virtualization requirements [1], which is a great read if you haven't come across it yet. Arm's EL3 cannot be virtualized, for instance, because some instructions, such as `cpsid`, are sensitive but do not trap (`cpsid` is a nop in user-space). If you have a VisionFive 2 or a HiFive Premier P550, you can try it out, the instructions are in the documentation [2, 3]. Of course, it runs on QEMU too. As Miralis is a research project, we have also been using it as a vehicle to explore other research ideas, such as automated verification of hypervisors [4]. For instance, we verified instruction emulation by comparing Miralis' implementation with the reference RISC-V executable specification [5], which we translated to Rust. It has been fun working on Miralis, I hope you'll find it interesting too! [1]: https://ift.tt/A2CUN1H [2]: https://ift.tt/gJKr5R3... [3]: https://ift.tt/TfoysHa... [4]: https://ift.tt/9TsDcS8... [5]: https://ift.tt/Rhyf2Ca https://ift.tt/d3wno5H May 10, 2025 at 11:28PM

No comments:

Post a Comment

Show HN: Self-Funded Game with Homemade Engine – Play Online, Steam Coming https://ift.tt/aJRGSv8

Show HN: Self-Funded Game with Homemade Engine – Play Online, Steam Coming Hi HN! I’ve been building a 2D game using a custom engine I wrote...