Diosix hypervisor

Logo

Diosix is an open-source bare-metal hypervisor written in Zig for multi-core RISC-V systems

View the Project on GitHub diodesign/diosix

License: MIT Language: Zig Platform: riscv64

About this project

Diosix is a type-1 bare-metal hypervisor written in the Zig programming language for 64-bit RISC-V systems. It allows systems large and small to run multiple hardware-isolated operating systems at the same time.

This project is an ongoing work-in-progress. By using Zig, we aim to innovate and iterate quickly while maintaining a strict focus on safety, security, and robustness. We target RISC-V for its open, modular, and extensible nature.


Quickstart

The simplest way to run and test Diosix is inside an emulated environment using the QEMU emulator. The following instructions assume you are using a Linux host system and are comfortable using a command-line terminal.

Before you begin, ensure you have the following software installed on your host:

To build, compile, and run the complete system:

  1. Clone the repository and enter the project directory:

    git clone --branch stable https://github.com/diodesign/diosix.git
    cd diosix
    
  2. Compile the hypervisor and boot the system inside QEMU:

    ./scripts/build.sh run
    

    The build process automatically downloads and compiles a trusted Linux guest Virtual Machine (VM) called the Root VM, which assists the hypervisor in managing the host hardware and running other guests. Once compilation completes, QEMU boots the hypervisor, which then automatically starts and runs this Root VM.

    The hypervisor outputs debug and diagnostic information directly to your terminal. You can also interact with the running Root VM via the terminal.

  3. To log into the Root VM, use the username root with no password.

    If the Root VM is powered off, the hypervisor will automatically restart it.

To control the emulator process from your terminal:

The following is a recording of a user building and running Diosix, and then logging into and interacting with the Root VM running on the hypervisor.

asciicast


More information

For more information about Diosix, see the following documentation:

For more information about the technology used by the hypervisor, see the following external documentation:


Copyright © 2024-2026 Diosix contributors. This project is distributed under the terms of the MIT License. See LICENSE for the full text and CONTRIBUTORS for the list of copyright holders.

The diosix.org website illustration is a combination of artwork provided by Katerina Limpitsouni and RISC-V International.

All product names, logos, brands, trademarks, and registered trademarks are property of their respective owners. All company, product, and service names used by the Diosix project are for identification purposes only. Use of these names, logos, and brands does not imply endorsement.