是否可以在虚拟化环境中更改客户挂钟速度?

时间:2014-04-02 18:27:02

标签: virtual-machine virtualization

我们正在开展一个大型项目,专注于为我们生产的软件提供自动化测试。

我们有很多"事件"在特定时间触发某些行为。理想情况下,我们能够以自动方式执行这些测试,而无需按时间间隔将系统时钟移动到特定时间点。

为此,我想知道是否有办法(使用VMWare或任何其他虚拟化软件)来提高客户操作系统的系统时钟速度。我对这些测试中的性能测量不感兴趣,只对功能感兴趣。

那里有什么可以允许这种行为吗?

3 个答案:

答案 0 :(得分:3)

适用于VirtualBox:

VBoxManage setextradata "VM name" "VBoxInternal/TM/WarpDrivePercentage" x

其中x是您想要的百分比(例如,200加倍,50加半)

您还可以在“Accelerate or slow down the guest clock”部分找到更多信息。问候。

答案 1 :(得分:0)

我能够使用Win32 API SetSystemTimeAdjustment()

解决此问题

这使您可以增加每个OS滴答间隔添加到系统时钟的时间。它通常用于解决时钟偏差,但可以在特定上下文之外使用。

答案 2 :(得分:-1)

我不知道在快速转发的VM中测试它的好处是什么,而不是使用日期/时间依赖关系的模拟实现对事件触发器进行单元测试。

你唯一获得的东西"通过在快速转发VM中进行测试,您可以测试系统和编程语言的日期/时间实现,我认为您可以节省信任,因为它是使用,开发和经过这么长时间的测试