hvisor Overall Architecture
-
CPU Virtualization
- Architecture Compatibility: Supports architectures such as aarch64, riscv64, and loongarch, with dedicated CPU virtualization components for each architecture.
- CPU Allocation: Uses static allocation method, pre-determining the CPU resources for each virtual machine.
-
Memory Virtualization
- Two-stage Page Table: Utilizes two-stage page table technology to optimize the memory virtualization process.
-
Interrupt Virtualization
- Interrupt Controller Virtualization: Supports virtualization of different architecture's interrupt controllers like ARM GIC and RISC-V PLIC.
- Interrupt Handling: Manages the transmission and processing flow of interrupt signals.
-
I/O Virtualization
- IOMMU Integration: Supports IOMMU to enhance the efficiency and security of DMA virtualization.
- VirtIO Standard: Follows the VirtIO specification, providing high-performance virtual devices.
- PCI Virtualization: Implements PCI virtualization, ensuring virtual machines can access physical or virtual I/O devices.