Starting at some point in December last year, I suddenly started to get Chrome crashes on a Windows 10 installation running in Virtualbox virtual machine. Over time, the crashes got more frequent and annoying, so I started an investigation. What I found out totally took my by surprise.
Searching for the problem on the Internet brought up a lot of ideas such as renaming the Chrome executable, moving it to another directory and using a number of command line options to disable some features. However, no matter what I did, Chrome tabs kept crashing after some time and in the end, it felt like it occurred every quarter of an hour. OK, there are alternatives, so I tried Firefox, which also promptly started to crash for some content after a while. Strangely enough, all other programs, including very CPU intensive applications kept running on that Windows 10 installation without a hitch. When using Chrome on physical machines running Windows and Linux with those web pages, everything worked as it should. Next, I tried a Windows 10 installation in Virtualbox on another computer, and Chrome ran fine in there as well.
Could it be a hardware problem and if so, why would only web browsers crash while other programs would just run fine!?
Finally, I noticed that the Virtualbox version I was using was rather old, while the Virtualbox version on the PC where I didn’t observe the crashes was much more up to date. But why would it have something to do with the hypervisor? I couldn’t really answer that question, but a few days later when I started running out of ideas, I updated Virtualbox to the latest version. And gone where the Chrome crashes! Instantly! Not a single one in several days! So it was definitely a hypervisor problem! But what kind of problem could it be?
Perhaps it has something to do with hypervisor components that emulate physical hardware like the graphics card!? Here, for example, there’s quite a bit of software to simulate different graphics cards which also support dynamic changes of the screen resolution when changing the window size of the virtual machine client.
So long story short, it was an old Virtualbox version that caused the Chrome browser issues. That’s a bit of a shame, because it destroys my world view that programs run just the same in a virtual machine as they do on physical hardware. In theory, yes, but in practice, software drivers for virtual hardware can play nasty tricks. Lesson learned!