我讨厌在玩游戏时在 Windows 和工作时在 Linux 之间进行双启动。我不喜欢在 VM 中运行 Linux,而且 Wine 对我来说几乎不起作用。因此,我正在考虑购买与 Xen 的 VGA 直通和 HVM 虚拟化兼容的新主板和 CPU。
我希望能够轻松地在 Linux Dom0 和 Windows DomU 之间切换,但问题是我需要两个 GPU 并且只有一台显示器。
现在我的电脑里有一块 nVidia GTX 260,但我的柜子里还有一块 Radeon 4850,我准备卖掉它。
我的问题是,我能否挽救 Radeon 卡来运行 Dom0,让 nVidia 卡运行 DomU,同时使用某种设备/软件将它们连接到单个显示器?电源和气流问题除外。
如果没有,您有什么建议?这可能吗?
答案1
如果您的显示器有多个高分辨率输入,最简单的方法是将显示器连接到两个显卡。然后,当您需要将显示器切换到另一个虚拟机时,只需按下显示器上的按钮即可更改其显示的输入;即,Windows 机器上的 DVI 到 DVI 连接到一个显卡,Linux 机器上的 HDMI 到 HDMI 连接到另一个显卡。在必要时替换转换器(DVI 到 HDMI,或 HDMI 到 DisplayPort 等,具体取决于您的显示器输入和显卡输出)。然后,您可以使用 Synergy 之类的东西来控制输入。
对于这种情况来说,KVM 切换器是更好的选择,因为您可以通过简单的键绑定将音频、视频和键盘/鼠标输入从一个 VM 更改为另一个 VM。
答案2
一旦 Dom0 启动,您就可以使用 SDL 窗口启动 Windows DomU。因此您不需要任何开关。
您的 Windows 配置文件必须包含:
sdl=1
gfx_passthru=1
pci=['yy:zz.n']
“yy:zz.n”是VGA显卡的PCI ID,您可以在Dom0中使用“lspci -v”进行检查。
但对于比赛来说,我不确定是否会有表演。
答案3
根据我最近的研究,在 HVM 运行时无法热插拔/重新分配 VGA 直通。因此,您将为每个操作系统分配一个 gpu,一个用于 Dom0,一个用于 DomU。将显示器从一个显卡上拔下并将其插入另一个显卡上应该可以避免双重启动。我可能很快就会用启用 Vt-d 的 CPU 和主板的新硬件来试验这一切。我希望有一个键绑定,可以轻松地将单个显卡分配给 VM(又名热插拔),但根据源码目前还不可能。
答案4
您需要的是 DVI 开关。搜索亚马逊、eBay 等。有很多这样的开关可以让您通过一台显示器共享多个视频源。