home search a-z help
University of Cambridge Computer Laboratory
Computer Laboratory > NetOS > Xen > Roadmap

The Xen™ virtual machine monitor

For Linux (and NetBSD, FreeBSD) virtualization, we believe Xen™ offers a solution that provides excellent stability, performance, security, and control over resource usage. We hope to see Xen become the de-facto standard for open source virtualization.

Xen Development Roadmap

The development roadmap for the xen project is on the project wiki.

Research Roadmap

In addition to the stable series, Xen is being used by a number of research projects which are investigating the opportunities provided by high-performance virtualization. These projects provide an ideal way to try out new features, but probably won't intercept the stable series roadmap for some time.
  • Deterministic replay. Running in a virtual machine, it becomes possible to record lightweight checkpoints of guests OSes as they run, and log incoming events and interrupts. Thus, execution can be rolled back and replayed in a deterministic fashion. This is great for debugging, and can also be used to run two systems in lock-step to provide software fail-over.
  • Shared buffer-cache and VM 'forks'. We have plans to investigate CoW memory sharing between VMs, as this can be useful for supporting large numbers of VMs e.g. in 'honeypot' applications. 'Forking' VMs could also be useful e.g. when starting a web browser applet that you want to ensure can't commit to persistent state.
  • Multi-level secure Xen. Virtual machine monitors can have an important role to play in building multi-level secure systems. For example, one could use one VM for accessing a corporate network while browsing the web on another. A Mandatory Access Control system could be used to mediate the flow of data between the two.
  • I/O interposition. The virtual I/O devices can easily be modified to simulate delay and loss, thus enabling a whole distributed system to be emulated in a virtual environment. Combined with deterministic replay this should result in a great tool for debugging distributed systems.

Contributing to Xen

Xen is a community project, benefiting from code and support contributions from individuals and corporations around the world. The xen-devel list is the forum for design debate and discussion of new patches.

We'd be very happy to hear from experienced kernel programmers who'd like to join the core Xen development team. Research funding is always appreciated too! ;-)

Thanks for your support,
The Xen team.