Super User is a question and answer site for computer enthusiasts and power users. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I can understand how hypervisors might virtualize CPUs, disks, etc., because those have well-published, generic standards (e.g. ATA/SCSI, the x86 virtualization features, etc.), but how do hypervisors virtualize hardware like GPUs, Bluetooth controllers, Wireless LAN adapters, etc., which often need drivers before they can even be recognized properly?

share|improve this question
up vote 5 down vote accepted

They don't. They either virtualise a reference implementation (for example a specific basic VESA based card), or very simply passthrough the ports they are connected to directly to the VM and let it handle that.

share|improve this answer
Virtualization isnt creating something new, its just slicing up whats already there. – Keltari Nov 28 '11 at 3:07
@JourneymanGeek: But if they pass through the requests then how do they ensure that the VMs' hardware uses don't conflict with each other? – Mehrdad Nov 28 '11 at 3:13
Well, practically by definition you wouldn't be able to pass through a device to more than one system. For example in virtualbox, i can create a filter to pass through a USB device, but i couldn't run two filters to the same device at the same time – Journeyman Geek Nov 28 '11 at 3:45
@Mehrdad It depends on the device. For USB devices they don't understand, the hypervisor gives one guest OS the device. They simply don't allow more than one guest to have the device at a time. When told to switch, they simulate a USB disconnect and then a USB connect to cleanly hand over the device. For a GPU or network card, the hypervisor has a driver for the device, and presents a virtual device to the host OSes. The hypervisor uses its own logic to decide how to reflect operations on the virtual devices to the physical device. – David Schwartz Nov 28 '11 at 5:33

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .