The unified modular hypervisor based on a modular unikernel, ArceOS
Welcome to join our Discussions.
This project originated from the discussion/13 of rCore-OS community.
In general, this project hopes to add virtualization support crates/modules based on ArceOS unikernel, and build a modular hypervisor that supports multiple architectures based on the basic OS functions provided by ArceOS unikernel.
We hope to make the hypervisor as modular as possible and minimize modifications to the arceos kernel code.
ArceOS-hypervisor is mainly composed of the following independent components:
- vmm-app: a user app of ArceOS, acts like a VMM (Virtual Machine Monitor)
- axvm: responsible for resource management within each VM
- axvcpu: providing virtual CPU management
- axdevice: for emulated device management
- axaddrspace: for address space management
- x86_vcpu: basic virtualization support for x86_64 architecture
- arm_vcpu: basic virtualization support for ARM (aarch64) architecture
- riscv_vcpu: basic virtualization support for RISC-V architecture
- axdevice_base: provides basic traits and structures for emulated devices
- arm_vgic: virtual GIC implementation for ARM.