我有一个软件没有适用于 x64 的 USB 驱动程序。我希望使用 VirtualBox、VirtualPC 或 VMWare 来获得 x32 Windows,这样我就可以继续使用该软件。但是,我发现如果主机不能使用 USB,那么客户端也不能。
模拟器能解决这个问题吗?我以前用过 QEMU,但我读到 VirtualBox 中的硬件支持是基于 QEMU 的,所以我不指望它能工作。
有什么建议吗?有人能实现这个方案吗?
答案1
您可能想试用 Parallels Desktop 4(建议零售价 80 美元)或 VMWare Workstation(建议零售价 189 美元)的 30 天试用版。它们各自都有不同的 USB 直通实现,其中一个或另一个可能支持将未识别的 USB 设备连接到客户机。
还有一个可能性……使用一个相对较新的芯片组,该芯片组启用了英特尔 VT-d(定向 IO),并且虚拟化软件支持 VT-d(Parallels Workstation Extreme(据我所知)您可以将 USB 根集线器之一(或技术上是其背后的 PCIe 设备)连接到具有 VT-d 的客户机。该客户机将获得对这些 USB 端口的独占访问权限,而 Windows x64 甚至看不到它们。说实话,我只在 VMWare ESXi 4.1 下这样做过,但考虑到 Parallels 仅对启用 VT-d 的“Extreme”版本收取 400 美元(比“Parallels Desktop”高出 5 倍),我想他们做对了。
答案2
我目前使用的是 Mac,如果我运行的是 VM(我经常运行 Windows XP、Windows 7 和 Linux 客户机),Parallels 会弹出一条消息,询问我是否希望主机控制设备或客户机是否应该控制设备。我不确定这是否能如此无缝地运行,仅仅是因为 OS X 已经为 USB 设备提供了完整的驱动程序支持,但它确实运行得很好。Parallels 也适用于 Windows!
上次我使用 VirtualBox(2.x 系列)时,您可以选择将 USB 设备的控制权也推送给客户机 - 在将设备推送给客户机时,主机将失去该设备的功能 - 当我不小心将鼠标的控制权推送给客户机时,这种情况令人沮丧。
答案3
我唯一能想到的就是一个可联网的 USB 设备,比如这设备位于网络上,您通过 IP 连接到 32 位 VM。唯一需要 USB 驱动程序的地方是 32 位 VM 内部。