Answers:
我遇到了同样的问题,并在Windows 7(作为主机)和Ubuntu(作为来宾)上安装了Oracle VirtualBox。我使用了一台独立的笔记本电脑HP EliteBook 8540W,其Intl Core i7运行在1.87 GigHZ和8Gig RAM上。
假设您的安装工作正常,请在Guest计算机(例如,在本例中为Ubuntu)上,从主菜单中的“计算机”中选择“设置...”;选择“系统”,然后单击“处理器”选项卡。您可以通过将条上的指示器一直滑至1%来调整时钟速度(标为“执行上限”)。
我以为主机操作系统(在我的情况下为Windows 7)不消耗任何时钟周期(我通过检查“任务管理器”确认了这一点,并且发现在主机上即Windows 7上的CPU利用率为零)。因此,我假定100%的“执行上限”等于主机的上限(例如1.87 GigHZ)。我认为,通过在主机时钟速度和800 MHZ之间取一个百分比,就可以算出与800 MHZ相对应的百分比值。
我希望这有帮助。
祝你好运。
在VMWare ESX和ESXi上,您可以创建资源池并限制该池的CPU资源。这将允许您限制在该资源池中创建的任何系统的CPU速度。
编译和使用:cpulimit像一个魅力一样可以降低VM的速度。
尽管我不是所有不同虚拟化技术的专家,但我认为您不太可能会找到这样的设置。但是,您会找到设置(至少在MS hyper-V中),这些设置使您可以将虚拟机限制为主机总数的百分比。因此,如果您有一个运行于2 GHz的8核主机,则可以尝试将客户端虚拟机限制为一个核,并且不超过该核的45%。
但是,如果您要测试定时循环或实际影响处理器速度的测试,那将是非常粗糙的并且不适合。
--cpuexecutioncap <1-100>:此设置控制虚拟CPU可以使用多少cpu时间。值50表示单个虚拟CPU最多可以使用单个主机CPU的50%。
我可以确认VirtualBox不支持此功能。但是,该文档似乎对VMware是否能够做到这一点持怀疑态度。
编辑:对于VMware:“播放器和服务器产品不可能做到这一点,但我相信它在ESXi(免费的“裸机管理程序”产品)和诸如VMWare Workstation之类的付费产品中都有。