Skip to main content
本节提供使用 Qualcomm Linux 构建系统创建虚拟机(VM)镜像的步骤。Guest VM 的 rootfs 和 Guest VM 内核与主机相同。 Qualcomm Linux 支持带或不带 KVM 的虚拟机监视器。目前,Qualcomm Linux 仅支持 QEMU 作为 VM 监视器。 该步骤提供以下内容:
  • 设置 KVM 的命令。
  • 使用 QEMU 启动 Guest VM 的命令。

设置开发计算机

要设置开发计算机,请按以下步骤操作:
  1. 要设置构建,请参阅构建 Qualcomm Linux
    所有 Qualcomm Linux 发行版的 DISTRO_FEATURES 中默认已启用 kvm。无需单独的 KVM 发行版配置。KVM 硬件加速在 MACHINE_FEATURES 中包含 kvm 的机器上可用,目前为:iq-9075-evkiq-8275-evk。在其他机器上,QEMU 在没有 KVM 加速的情况下运行。
  2. 在构建目录的 conf/local.conf 中,将 virtualization 追加到 DISTRO_FEATURES
  3. 构建 qcom-console-imageqcom-multimedia-image

启动 Guest VM

本节介绍如何在 Qualcomm Linux 机器上使用 QEMU 启动 Guest VM,包括使用和不使用基于内核的虚拟机(KVM)加速两种方式。 前提条件
  • 机器上有可用的 QEMU。
  • Guest VM 使用主机的根文件系统镜像。
  • Guest VM 内核镜像位于 /boot/Image
  1. 将主机的根文件系统镜像复制到设备上,并将其用作 Guest VM 的根文件系统。 注意 如果为 qcs9100-ride-sx 平台构建了 qcom-console-image,则 Guest VM 的根文件系统镜像位于:<build dir>/tmp/deploy/images/qcs9100-ride-sx/qcom-console-image-qcs9100-ride-sx.rootfs.qcomflash/rootfs.img
  2. 启动 Guest VM。
    • 在不使用 KVM 加速的情况下启动 Guest VM: 运行以下命令,在不使用 KVM 加速的情况下使用 QEMU 启动 Guest VM:
    • 使用 KVM 启动 Guest VM:
      • DISTRO_FEATURES 中默认已启用 KVM。机器的 MACHINE_FEATURES 中必须包含 kvm(例如 iq-9075-evkiq-8275-evk)。
      • 机器上必须存在 /dev/kvm 设备节点。
      • 验证 KVM 是否可用:
      • 运行以下命令,在 QEMU 中使用 KVM 加速启动 Guest VM。
    注意
    • rootfs.img 文件位于当前工作目录中。要使用其他位置,请相应地更新 -drive 选项。例如:-drivefile=/mydir/rootfs.img,if=virtio,format=raw
    • Guest VM 内核通过 -kernel /boot/Image 选项提供。
有关更多信息,请参阅启用虚拟化

后续步骤

  • 有关 Docker 容器支持,请参阅运行 Docker 容器
  • 有关 Kubernetes 启用,请参阅使用 Qualcomm Linux 设置 Kubernetes。 所有 Qualcomm Linux 发行版的 DISTRO_FEATURES 中默认已启用 kvm。无需单独的 KVM 发行版配置。KVM 硬件加速在 MACHINE_FEATURES 中包含 kvm 的机器上可用,目前为:iq-9075-evkiq-8275-evk。在其他机器上,QEMU 在没有 KVM 加速的情况下运行。