支持硬件访问的虚拟机:USB 3(和 PCI)

And*_*iff 6 vmware pci usb-3 virtual-machine windows-8

我正在选择 VM 软件。

我需要访问 VM 中的自定义 USB3 设备(Windows 8 64 位来宾,主机是 Windows 7 64 位)。据我所知,VMware 将是 USB3 支持的最佳选择。这是真的吗?我还读到 USB 支持并非 100% 可靠 - 也是如此,我有什么期望?

或者,我还想使用 PCI 卡(实际上,用于从摄像头获取视频)。据我所知,让 VM 访问 PCI 硬件是一项相当困难的任务。在 ESXi 和 XEN 中有(??)基本支持(都不是桌面虚拟化??),大多数虚拟机软件根本不支持这一点。

你对这些话题有什么经验吗?USB2 和 - 主要 - USB3 是我的主要关注点,PCI 访问会很好。

语境:

我将使用这些 VM 围绕专有 USB3 硬件开发应用程序。

(优点应该是快速将系统带入完全不同的状态,在新的 Windows 安装上测试安装,而且,会有很多开发人员,但只有很少的硬件(原型),因此每个人都有自己的环境(至少顺序)很好,等等)

Zac*_*c B 4

如果您对以最大可预测性传递设备感兴趣(即,您希望确保您正在开发的软件在直通 USB3 连接上的工作方式与在真实连接上的工作方式完全相同,而不是依赖于桌面管理程序直通技术和主机操作系统驱动程序问题),使用桌面虚拟化解决方案可能不是最好的方法。ESXi、Xen 和 XenServer 都提供比任何基于桌面的解决方案低得多且更可预测的硬件直通功能。这是有道理的,因为桌面解决方案往往关注最小化最终用户配置并仅使设备的某些功能正常工作。

如果在兼容的硬件上运行,瘦管理程序解决方案支持使用“设备直通”的功能,该功能可用于通过IOMMU/VT-D 处理(也称为PCI 直通)将设备转发到 VM 。然后,该设备专用于该虚拟机(直到您将其分离)。

这意味着它的功能与直接连接完全相同不存在需要主机兼容驱动程序的“假设”中间层,以及虚拟机管理程序的功能性每设备类型资源共享策略:设备只是原始地传递给来宾。所有三个主要的瘦虚拟机管理程序还以类似的方式支持任意 USB 设备的直接直通(尽管这不需要支持 IOMMU/VT-D 的硬件)。与直通 PCI 设备不同,直通 USB 设备还可以热插拔。

使用瘦虚拟机管理程序还可以让您将正在测试的设备的几个实例连接到单个服务器,然后在该服务器上为每个开发人员提供一个虚拟机。当一名开发人员想要使用硬件进行测试时,他可以请求设备连接,管理员可以通过设备直通将 USB 设备连接到该开发人员的 VM,然后他们可以通过远程桌面或类似方式访问其 VM。

不过,有一些注意事项:

首先:在非常有限的兼容硬件范围之外,通过显卡传递的效果并不好(而且它大多只能在 XenServer 上可靠地工作——这里是如何实现的这里是 HCL)。据我所知,这不适用于您讨论的视频采集卡。其次,直接连接的 PCI 设备通常会阻止使用其他高级管理程序技术(例如快照、迁移或其他 HA 功能)。第三:除了显卡问题外,ESXi 拥有最强大且用户可配置的设备直通管理方法。您可以使用 Xen 来完成此操作(并使用 XenServer 手动完成),但不像使用 ESXi那样容易。第四:特定版本的 ESXi 对您可以通过的设备施加了限制。ESXi 5.0 或多或少会通过您提供的任何内容(即使存在系统稳定性风险)。5.1 更加挑剔,并且经常会在没有给您充分理由的情况下禁用设备的直通。