KVM is a kernel-level virtualization technology/application that provides a complete PC virtual machine under Linux when you have a processor supporting VT. AMD and Intel both have processors which provide hardware support for virtualization to decrease the cost of translating all privileged instructions. In a recent study, vmware showed performance losses of 46% when functioning as a webserver. This is not out of line with expectations; the primary purpose of vmware is to consolidate little-used servers into a single machine.
Let's say you have a GPS and you want to use it with multiple applications. On Linux, this is easy, because basically every program today utilizes GPSd for GPS communications. GPSd connects one or more clients to one or more GPS devices, and also has support for NTP (for providing time information.) However, it does not support Windows (and in fact they are fairly nasty about it) even though it's a fairly simple trick when using Cygwin.
After spending several hours looking, however, I did finally find a free (as in beer) solution that works for Windows XP. It involves the extremely hard-to-locate (but not any more!) gpsd from gps3d...
You might actually be looking for this other page from which I get occasional page referrals. It has ready-made binaries.