Opened 16 years ago
Closed 11 years ago
#2526 closed defect (fixed)
Non-uniform internal timer in guest OS
Reported by: | Konstantin Vlasov | Owned by: | |
---|---|---|---|
Component: | other | Version: | VirtualBox 2.0.4 |
Keywords: | Cc: | ||
Guest type: | Linux | Host type: | Windows |
Description (last modified by )
Host machine: Core 2 Duo 6600, 2 GB RAM.
Host OS: WinXP SP3
Guest OS: SUSE Linux Enterprise Server 10 SP2
GA installed
Partially the problem is mentioned in the forum threads:
http://forums.virtualbox.org/viewtopic.php?t=10396
http://forums.virtualbox.org/viewtopic.php?t=1335
and probably here:
http://forums.virtualbox.org/viewtopic.php?t=10745
However, I could find some more details which may be of use for reproducing and fixing the problem.
Problem description
The internal timer inside VM sometimes runs non-uniformly. It looks like following:
- At first the guest OS looks somewhat slow in every aspect (including system clock which shows seconds passing more slowly than on the host clock). So, as time passes, the guest clock become more and more mistimed with the host one.
- Then suddenly the virtual machine starts to catch up the host clock: guest OS works much faster than before, keyboard delays are extremely low (so when I try to type e.g. "grep", I get something like "ggggggrrrrrreeeeeppppp"), the guest clock are running very fast (several seconds pass within only one "host second").
- When guest timer equals to the host one, the speed returns back to normal, then again slows down, and then speeds up, and so on.
Lengths of the periods described can be different. Sometimes, it is slow for couple of minutes, then fast for 7-10 seconds; sometimes it's slow for several seconds, then fast for 0,5-1 second.
Additional factors
I wanted to record a video with this behaviour. However, each time I run video recorder (I'm using UVScreenCamera), the problem became unreproducable. Finally, I noticed that UVScreenCamera's recording process performs something that forces VirtualBox's guest clock catch up the host clock. And the more frames per second I set in the recorder's options, the more smoothly runs VirtualBox. So, it seems that each additional redraw operation (or something like that) makes VB forcibly perform that "catch up" operation, which otherwise would be delayed for the future.
Change History (2)
comment:1 by , 16 years ago
comment:2 by , 11 years ago
Description: | modified (diff) |
---|---|
Resolution: | → fixed |
Status: | new → closed |
Please reopen if still relevant with VBox 4.3.2.
Contribution from Alegranon
I have the same problem and may have a workaround for some people as well as an indicator as to where the source of this problem may be. If your host machine has Hyperthreading "enabled" in the BIOS, change it to "disabled". This fixed the typing issue on a Pentium 4 machine with Windows XP SP3 that has VBox 2.0.2 installed with a Linux guest booting from the Knoppix 5.3.1 Live DVD iso image. After this change, the system clock in the Linux guest now increments at the same interval as the Windows host's clock.