qemu
QEMU is a generic and open-source machine emulator and virtualizer. It can perform full-system emulation as well as user-mode emulation, allowing software compiled for one CPU architecture to run on a different host architecture. It supports a wide range of guest and host architectures, including x86_64, i386, ARM, AArch64, PowerPC, SPARC, MIPS, and RISCV.
In full-system emulation, QEMU models a complete hardware platform, including CPU, memory, and peripherals, and boots
In user-mode emulation, QEMU executes individual programs compiled for one architecture on another by translating system
QEMU includes a rich set of device models and supports virtio drivers, PCI, USB, SCSI, and other
The project is free and open-source software released under the GNU General Public License (GPL) version 2