Virtualization Technology News and Information
The Road to 64-bit Virtual Machines

Quoting Steve Herrod's Blog: Virtually There on VMTN

As mentioned in the previous entry, we now support 64-bit virtual machines on VMware ESX Server and across our whole product line. It has taken substantial effort across our engineering and QA team to reach the level of stability and performance that we’re delivering in these guests, and I thought a peak behind the curtains would be interesting.

We started this effort back in March 2004, expecting that the x86-compatible approach to 64-bit computing would eventually be in big demand by our customers. VMware software was completely built for 32-bit systems at that point, so the initial work was around collecting the appropriate compilers, debuggers, and general code framework for supporting these longer data types. We then began the process of converting appropriate 32-bit data types to be 64-bit ready. And here’s one of the earliest comments that came from our standard developer code review process:

I did want to point out that I find it really, really difficult to read hex 64-bit values. Is there any kind of standard for formatting these things in a more readable way?

The developers among you probably recognize this type of response! Well, we got used to those 0xf581818debaba080 values eventually. By June we had nailed down the basic concepts of 32 and 64 bit peers to enable us to leverage the 32 bit code as much as possible without cluttering the shiny new longmode (64 bit) world with any “legacy” code. In the following months, the notion of “48-sharing” code became omnipresent (48 being the halfway point between 32 and 64 bits).

A motivated team pushed forward, culminating in a major milestone on November 11, 2004… our first 64-bit Windows Blue Screen of Death (BSOD). Oh the joy! We were clearly cruising now and, as you can imagine, this time we were rather excited to see those long hex numbers.

The next milestone came less than 3 weeks later when, on December 1st, we completed a boot of 64-bit Windows XP, making it to a command prompt! For posterity’s sake, we saved this screenshot:

Command prompt of 64-bit Windows XP


The careful reader will notice that this screenshot reporting a CPU speed of 595 MHz in the status bar. Yes, we were quite slow then with huge amounts of debugging code and completely untuned algorithms… getting to this point in the boot process required running for the better part of the night. Nowadays we can whip through a full installation and boot of Windows XP 64 in just 10 minutes! This is faster than native hardware as a virtual device such as the CD-ROM can actually be substantially faster than its physical incarnation.


Read the rest of the article, here.

Published Thursday, October 26, 2006 9:48 PM by David Marshall
There are no comments for this post.
To post a comment, you must be a registered user. Registration is free and easy! Sign up now!
<October 2006>