Paravirtualization aware (PV) device drivers are an important part of HVM guests running under the Xen Project Hypervisor. Citrix has provided a set of PV driver for Windows since the inception of XenServer. These drivers have evolved over the years and the full source code has been made available under a BSD license and are available to the community to modify and build upon. The Windows PV Drivers team at the Xen Project is maintaining and developing these drivers under Xen Project governance.

Architecture, Code, etc.

Project Leader Paul Durrant gives an excellent overview in the following 2018 slide deck, covering the architecture, history, and use of the drivers:

You can find the slide notes here. You can find a video of an earlier version of the above talk on The Linux Foundation’s YouTube channel.

Releases, Downloads, and Roadmap

The team plans to perform regular builds of the drivers and aims to test them using the Microsoft HCK. The team further plans to provide logo-signed builds of the drivers in future commercial Xen offerings. The team may also provide logo-signed drivers via Microsoft’s Windows Update mechanism, making them widely available to anyone running Windows under Xen (not just XenServer) without the need to build the drivers themselves. Any other organization is also free to do the same by registering a top level PV device with the Xen Project community (see Xen PCI device ID registry) and logo-signing their driver builds.

The Win PV Drivers are built by a Jenkins server when new patches are pushed into the repo (Development Builds) and can be found here. To install a driver on your target system, unpack the tarball, then navigate to either the x86 or x64 subdirectory (whichever is appropriate), and execute the copy of dpinst.exe you find there with Administrator privilege. More information can be found here. 

Please sign up and follow the win-pv-devel@ mailing list for status and development updates.

License

The drivers are available under a simplified 2-clause BSD license. The code can be found in the following repositories on xenbits.xen.org in the pvdrivers/win folder.