“Time-sharing” CPUs and I/O devices between VMs is a must in any virtualization system. Time-sharing memory is a harder problem. Ballooning is cool and used in every major virtualization system, but digging deep, it has a lot of issues. As a result, memory is becoming a bottleneck in many systems. Transcendent memory solves ballooning’s problems and can improve physical memory utilization. For more information, see the xen-devel post here and the project web page here.
Feedback (and contributions) are very welcome!