Industry Insights 21 min read

How VMware Forced Intel to Fix x86 Virtualization

This article traces how VMware overcame x86's architectural flaws violating Popek-Goldberg theorems via binary translation and the Stanford Disco project, enabling practical virtualization that later forced Intel and AMD to add hardware support, laying the foundation for modern cloud computing.

dbaplus Community
dbaplus Community
dbaplus Community
How VMware Forced Intel to Fix x86 Virtualization

Why No One Believed x86 Could Be Virtualized

In the 1970s mainframe era, IBM introduced the Hypervisor (Virtual Machine Monitor, VMM) to partition a physical computer into isolated logical partitions. IBM researcher Gary Allred described a hardware-assisted approach on the Model 65 that required dedicated I/O devices per partition, making it prohibitively expensive for most users.

Gerald Popek and Robert Goldberg's 1974 theorems became the gold standard for virtualization feasibility:

"For any conventional third-generation computer, if the set of sensitive instructions is a subset of the set of privileged instructions, a virtual machine monitor can be constructed."

x86's CISC architecture violated this condition in over a dozen places. Intel's protection rings (Ring 0–3) were designed for security, not virtualization, preventing a guest OS from running privileged instructions directly. Full software emulation incurred massive performance overhead, and nearly every mainstream processor platform shared this limitation.

Two Overlooked Technical Threads

Apple's 68k-to-PowerPC transition pioneered dynamic recompilation (JIT). Eric Traut's patent US5790825A (later used in Connectix Virtual Game Station) rewrote old code on the fly for near-native speed. Meanwhile, Java popularized just-in-time compilation, proving runtime instruction translation was viable. Yet translating a full OS on x86 remained daunting due to the architecture's inherent flaws.

Dynamic recompilation patent diagram by Eric Traut
Dynamic recompilation patent diagram by Eric Traut

From SGI to Market: The Disco Experiment Becomes VMware

At Stanford, PhD students Edouard Bugnion and Scott Devine, under professor Mendel Rosenblum, ran the Disco project on an SGI Origin 2000 (one of the few scalable multiprocessors available). Their 1997 paper "Disco: Running Commodity Operating Systems on Scalable Multiprocessors" introduced key innovations:

Drastically reduced VMM performance overhead.

Enabled efficient memory and disk sharing across VMs via a global buffer cache.

Allowed VMs to communicate through standard protocols (NFS, TCP/IP) while sharing resources transparently.

SGI Origin 2000 server used for Disco
SGI Origin 2000 server used for Disco

The paper concluded that the machine interface remained simple despite OS complexity growth, making VMMs a practical compatibility layer. Within a year, Bugnion, Devine, Rosenblum, and Diane Greene (ex-SGI engineer) founded VMware. After a year of stealth development, VMware Workstation launched in early 1999 for Windows and Linux.

Disco paper chart showing hypervisor + JIT overhead
Disco paper chart showing hypervisor + JIT overhead

Development Challenges and Early Success

A later retrospective paper by the founders detailed the immense complexity: x86's sprawling instruction set and peripheral ecosystem, plus per-OS adaptation. Linux was manageable; Windows was hard; OS/2 proved nearly impossible due to unique x86 feature usage. The team eventually dropped OS/2 support after extensive effort.

"Despite our VMM not depending on guest OS semantics, we had to fully understand how the guest configured hardware. OS/2 used x86 features no other guest used, making virtualization exceptionally difficult. We invested significant time but ultimately abandoned it."

Building virtual hardware and handling edge cases took months, but the bootstrapped company hit $5M revenue quickly. An anecdote: Thai Buddhist monks emailed VMware because they couldn't decide between Linux and Windows — VMware let them run both.

VMware Workstation running Haiku OS
VMware Workstation running Haiku OS

When Hardware Started Chasing Software

VMware went public and was acquired for $600M+; two decades later its valuation reached 100x that. For years VMware had no serious rival. Only in the mid-2000s did Intel (VT-x) and AMD (AMD-V) add hardware virtualization extensions. Microsoft bought Connectix (2003); Parallels arrived on Mac (2006); Xen, QEMU, VirtualBox, Proxmox emerged mid-2000s.

Amazon EC2 (2006) used Xen, which relied on those new hardware extensions — extensions largely driven by VMware's proof that x86 virtualization was commercially viable. VMware's success also undercut Intel's Itanium push: why migrate to a new architecture when software could unlock virtualization on existing x86 chips?

VMware's Twilight and Virtualization's Immortality

Broadcom's acquisition brought aggressive licensing changes (perpetual licenses dropped), causing 2024 enterprise upheaval per CIO Dive. ESXi zero-day vulnerabilities surfaced. The original Workstation team was disbanded after Dell's 2016 acquisition. Today, alternatives abound: QEMU ecosystem, Docker/Podman containerization. Broadcom recently made Workstation free again — a loss-leader for a tool that once served monks and Fortune 500s alike.

Ironically, virtualization increased overall hardware demand rather than reducing it. The industry never anticipated that making servers more efficient would spur vastly larger deployments.

Bonus: Five Virtualization Trivia

Zork's Z-machine: Infocom's lightweight VM let the game run on wildly incompatible 1980s hardware; only platform-specific interpreters were needed.

ScummVM: Despite its name, it's a VM that interprets SCUMM engine bytecode, not a hardware emulator.

386 Virtual-8086 Mode: Early hardware virtualization letting 386 run 8086 apps; used by DESQview, Windows 3.1. Removed in x64, later revived via VT-x/AMD-V.

GPU Passthrough: Linux KVM (descended from IBM System/360 concepts) supports direct physical GPU assignment to VMs.

Legacy Embedded Systems: Aviation and industrial gear use virtualization to run decades-old software on modern modular hardware, avoiding costly recertification.

Zork running on iPhone and Kaypro II via Z-machine
Zork running on iPhone and Kaypro II via Z-machine
Original Source

Signed-in readers can open the original source through BestHub's protected redirect.

Sign in to view source
Republication Notice

This article has been distilled and summarized from source material, then republished for learning and reference. If you believe it infringes your rights, please contactadmin@besthub.devand we will review it promptly.

VMwarebinary translationhardware virtualizationcloud computing historyDisco projectIntel VT-xPopek-Goldberg theoremsx86 virtualization
dbaplus Community
Written by

dbaplus Community

Enterprise-level professional community for Database, BigData, and AIOps. Daily original articles, weekly online tech talks, monthly offline salons, and quarterly XCOPS&DAMS conferences—delivered by industry experts.

0 followers
Reader feedback

How this landed with the community

Sign in to like

Rate this article

Was this worth your time?

Sign in to rate
Discussion

0 Comments

Thoughtful readers leave field notes, pushback, and hard-won operational detail here.