Windows VirtIO Drivers
Introduction
VirtIO Drivers are paravirtualized drivers for kvm/Linux (see http://www.linux-kvm.org/page/Virtio). A quite extended explanation about VirtIO drivers can be found here http://www.ibm.com/developerworks/library/l-virtio.
In short, they enable direct (paravirtualized) access to device and peripherals to virtual machines using them, instead of slower, emulated, ones.
At the moment this kind of devices are supported:
- block (disks drives), see Paravirtualized Block Drivers for Windows
- network (ethernet cards), see Paravirtualized Network Drivers for Windows
- baloon (dynamic memory management), see Dynamic Memory Management
KVM Guest OS Support Status, far all OS/platforms, can be found here: http://www.linux-kvm.org/page/Guest_Support_Status
Usually using VirtIO drivers you can maximize performances, but this depends on the availability and status of guest VirtIO drivers for your guest OS and platform.
Windows OS support
While recent Linux kernels already have those drivers so any distribution, running in a kvm VM, should recognize virtio devices exposed by the kvm hypervisor, all current Windows OS need special drivers to use virtio devices. Microsoft does not provide them, so someone kindly managed to make virtio drivers available also for windows systems.
See
- http://www.linux-kvm.org/page/WindowsGuestDrivers
- http://www.linux-kvm.org/page/WindowsGuestDrivers/Download_Drivers
Following info on those page you can find:
- a git repository: https://github.com/YanVugenfirer/kvm-guest-drivers-windows
- this is the source for the Windows drivers and is hosted in a repository on GIT hub. Anonymous users can clone the repository
- a web repository http://alt.fedoraproject.org/pub/alt/virtio-win/
- here you can find "packaged" sets of drivers
- in source format (.zip)
- in compiled format (.iso)
- here you can find "packaged" sets of drivers
Packaged sets of drivers
Each of those "packaged" sets of drivers available is labelled with a numeric release, and differs by features & bugs as it improves through the time.
- Most recent set is virtio-win-0.1-74, with updates to virtio drivers as of 16 Oct 2013.
- Previous versions could still be useful when, as it happens, some Windows VM shows instability or incompatibility with latest drivers set.
folder names
In the iso file provided by Fedora Project drivers for diffrent Windows versions are available, in several folders.
The folder names can be a bit confusing, since they refer to the Microsoft legacy naming (i.e. lh=longhorn, that is Vista): you can refer to the schema below (showing also block/baloon drivers folder names):
OS | Numeric version | dir for Storage / Balloon | dir for Network |
---|---|---|---|
W2008 R2 / Windows 7 | 6.1 | Win7 (32/64) | Win7 (32/64) |
W2008 / Vista | 6.0 | Wlh (32/64) | Vista (32/64) |
W2003 | 5.2 | Wnet (32/64) | XP (32/64) |
XP | 5.1 - 32bit, 5.2 - 64bit | WXp (32 only) | XP (32/64) |
NB:
- Windows XP drivers are known to work also on Windows 2003 Server
- Win7 drivers can be used for Windows 2008r2