小编Zte*_*tex的帖子

如何在 x86 上通过 Linux KVM API 实例化基于 ARM 的 VM?

假设我有一台 x86 机器。通过 Linux KVM API 可以轻松创建 x86 VM。

请参阅:vm_init()kvm-host中:

if ((v->kvm_fd = open("/dev/kvm", O_RDWR)) < 0)
        return throw_err("Failed to open /dev/kvm");

    if ((v->vm_fd = ioctl(v->kvm_fd, KVM_CREATE_VM, 0)) < 0)
        return throw_err("Failed to create vm");

    if (ioctl(v->vm_fd, KVM_SET_TSS_ADDR, 0xffffd000) < 0)
        return throw_err("Failed to set TSS addr");
...
if ((v->vcpu_fd = ioctl(v->vm_fd, KVM_CREATE_VCPU, 0)) < 0)
        return throw_err("Failed to create vcpu");
Run Code Online (Sandbox Code Playgroud)

在这个项目中,很容易在 x86 机器上创建 x86 VM。

然而,我的问题是,如果我希望该虚拟机是 ARM 架构怎么办?

我相信这是适用的,因为我们有qemu-system-arm,而我试图实现的正是它所做的。

virtualization kvm qemu hypervisor linux-kernel

2
推荐指数
1
解决办法
3627
查看次数

标签 统计

hypervisor ×1

kvm ×1

linux-kernel ×1

qemu ×1

virtualization ×1