The capability to overcommit memory is something that VMware offers on its hypervisor ESX since a long time. It’s achieved by several techniques (ballooning, contend-based page sharing, demand paging) and the company uses it as a great selling point.
At the moment only one of the approaches used by VMware is also implemented by several competitors: the memory ballooning.
This feature comes as part of Xen (only for Linux guest OS at the moment) so any commercial hypervisor powered by Xen can offer it, including Citrix XenServer, Virtual Iron, Oracle VM and the operating systems from Novell and Red Hat.
Oracle is a contributor of the open source hypervisor and just before the release of Xen 3.3 decided to clarify that there’s no need to implement all the techniques that VMware: some improvements to the current Xen ballooning can grant a just fine memory overcommitment.
At the XenSummit 2008 Dan Magenheimer, Consulting Developer at Oracle (and once Principal Scientist of Virtualization Research at HP), presented a lecture and a whitepaper clarifying the point:
…While content-based page-sharing, VMM-based demand paging, and hotplug memory are all glamorous mechanisms that can be used to improve memory efficiency, the simple existing balloon driver provided by Xen, when combined with gray-box data collected by a few scripts, is sufficient to implement reasonable memory overcommit. More measurement and testing is ongoing in Oracle’s OnDemand group, but we believe that this very simple solution delivers the vast majority of the value of memory overcommit with a much smaller cost…