Intel Virtualization Technology and AMD I/O Virtualization Technology are pretty near identical and both resemble IBM technology

This is what Keith Adams, a VMware engineer, said on his personal blog (so be aware that this is not an official statement):


I’ve written a lot here about VT, Intel’s recently shipped CPU virtualization hardware. I’m pretty intimately familiar with VT’s gory guts, as well as those of AMD’s Pacifica, after spending a good chunk of my career at VMware extending our VMM to support them. (Sorry to disappoint, AMD/Intel fanboys: the two specifications are pretty much exactly the same, with different instructions and in-memory layouts, etc.).

I was also faintly aware that IBM had done some work to accelerate virtualization “back in the day.” But, I was utterly shocked at the familiarity of this paper (Osisek, Jackson, Gum, in IBM Systems Journal, March, 1991). It describes interpretive execution, which is IBM’s name for the S/390 virtualization acceleration hardware. What’s fascinating is that “interpretive execution” so closely resembles Pacifica, and in turn VT, that you can mechanically translate among them.

What VT calls “non-root mode”, and Pacifica calls “guest mode”, is known as “interpretive execution” (which, by the way, joins a long list of nuttily technical-sounding, yet completely non-descriptive terms that I associate with IBM; it’s right up there with “translation lookaside buffer”). VT’s “vmlaunch” instruction is Pacifica’s “vmrun” is s/390’s Germanic-flavored “sie”; Intel’s “VMCS” is AMD’s “VMCB” is IBM’s “state description” (another hilarious IBM-ism)…

Read the whole post at source.