假设我想在虚拟机上运行 ubuntu..它如何影响原始窗口的速度?就像我们在ubuntu上使用的ram不能用于windows那样?
答案1
我不得不说,这是一个开放式问题。这完全取决于处理器速度、RAM 数量、图形适配器和其他资源。
为了给您提供一个想法,我有一台笔记本电脑,配备运行频率为 202GHz 的 Intel Core 2 Duo、带 4GB RAM 和 Windows 8 作为主机操作系统,并在虚拟机中安装了 Ubuntu 13.04、Xubuntu 13.04 和 Lubuntu 13.04。运行 1 个 VM 会使 Windows 速度降低约 20%,同时运行 2 个 VM 会使 Windows 速度降低约 60%。 (所有虚拟机都有 1GB RAM)
另一方面,我有一台笔记本电脑,配备 Intel i5,运行频率为 303GHz,带 4GB RAM,总共运行 10 个虚拟机,在同时运行 3 个虚拟机(所有虚拟机都有 1GB RAM)后,我开始发现速度变慢。
配备 i7 3.6GHz 和 8GB RAM 的 Lenovo 在同时运行 5 个虚拟机后会出现速度缓慢的情况。
现在请记住,我对慢的定义可能和你的不同。
答案2
虚拟机的工作方式与任何其他程序一样:如果它花费大量时间处理或占用大量 RAM,那么这些资源将无法供其他程序使用。
就资源使用而言,唯一使虚拟机难以掌握的是虚拟机程序内部有其他节目。这种嵌套效应意味着要计算虚拟机的“成本”,您必须考虑总成本VM 内运行的所有内容。
如果虚拟机完全繁忙,它将占用您分配给该虚拟机的所有资源,就像任何其他完全繁忙的程序一样。在这方面,虚拟机唯一的奇怪之处在于虚拟机系统允许您指定每个虚拟机允许使用多少 CPU 和 RAM。
如果虚拟机闲置,它可能实际上已经零对主机操作系统的影响。
部分原因是现代操作系统擅长向底层硬件(本例中为虚拟机系统)发出空闲信号,以便在移动系统上获得良好的电池寿命。因此,虚拟机系统本身不会花费太多的CPU时间来处理空闲的客户操作系统。
空闲的虚拟机不可避免地会占用一些内存,但如果另一个程序出现并需要虚拟机正在使用的一些 RAM,主机操作系统的虚拟内存系统应该将其交换出来。也就是说,如果您同时运行 8 个虚拟机,每个虚拟机配置为 2 GB RAM,那么您也许可以让它在 RAM 小于 16 GB 的系统上运行得很好。这称为过度配置。
上面我只讨论了 RAM 和磁盘的使用情况,但还有其他资源需要考虑。磁盘 I/O、网络带宽等。上述想法也适用于这些共享资源。
不过,磁盘 I/O 值得特别考虑。由于硬盘速度相对较慢且寻道时间较长,因此大量执行大量磁盘 I/O 的虚拟机会严重损害整体 I/O 性能。 SSD 和多轴 RAID 可以在这方面提供帮助,就像解决任何其他高磁盘 I/O 问题一样。