[SOLVED] Using QEMU to run Windows XP.

If none of the more specific forums is the right place to ask

[SOLVED] Using QEMU to run Windows XP.

Postby edbarx » 2017-04-24 06:11

I would like to ask how I can further optimize QEMU to run Windows XP as guest. I am using QEMU version 1:2.8+dfsg-3. To start the guest (Windows XP), I use the command:
Code: Select all
/usr/bin/qemu-system-i386 -drive format=raw,file=win_xp.img -enable-kvm -machine type=pc,accel=kvm &

This runs the virtual machine in the background. The above give quite a good performance but Windows XP says no graphics drivers are being used. Can I further improve the graphics performance? I also need the VM to have access to a USB oscilloscope. I used:
Code: Select all
-usb -device usb-host

With the latter, the host OS denied the VM access to USB telling me libusb couldn't grant permission.

Thanks.
Last edited by edbarx on 2017-04-25 11:49, edited 1 time in total.
Debian == { > 30, 000 packages }; Debian != systemd
The worst infection of all, is a false sense of security!
It is hard to get away from CLI tools.
User avatar
edbarx
 
Posts: 5380
Joined: 2007-07-18 06:19
Location: 35° 50 N, 14 º 35 E

Answer to my own question.

Postby edbarx » 2017-04-25 11:48

Answer excluding improving graphics beyond their current state.

I succeeded to have the Windows XP client recognise my USB oscilloscope but the speed of communication is unsatisfactory implying further time dedicated to solve is issue is more or less a waste of time.

The reason for the client not being able to access USB devices was a permissions problem as udev does not give all other users permission to write to USB device files under /dev/bus/usb/00x/. I 'solved' the issue temporarily by changing any USB device files' permissions from o664 to o666.

The command to bring up Windows XP running under QEMU was modified to:
Code: Select all
/usr/bin/qemu-system-i386 -drive format=raw,file=/home/edbarx/qemu/win_xp.img -enable-kvm -machine type=pc,accel=kvm -usb -usbdevice host:001.009 &


host:001.009 mean USB bus 1, device name 009. For some weird reason, udev increments this number whenever a USB device is replugged. Probably the reason is to avoid having to check which numbers have been freed.

I will keep the virtual machine installation of Windows XP to play its legacy games.
Debian == { > 30, 000 packages }; Debian != systemd
The worst infection of all, is a false sense of security!
It is hard to get away from CLI tools.
User avatar
edbarx
 
Posts: 5380
Joined: 2007-07-18 06:19
Location: 35° 50 N, 14 º 35 E

Re: [SOLVED] Using QEMU to run Windows XP.

Postby pendrachken » 2017-04-28 02:39

I don't know about QEMU these days, but it used to be slooow as hell.


Have you tried VBox? I'm pretty sure it has USB pass through that works pretty well, like as if the USB device was plugged into a booted windows well.


The other thing you could try would be the free for personal use VMWare player, I use this heavily in the reverse of what you want ( Windows server 2012R2 workstation running several Linux / *BSD VMs ) and USB passthrough works flawlessly. Pretty sure they have it working quite well in both directions. VMWare works well enough that I don't actually have any Linux physical installs anymore, I migrated them all to VMWare on Mac and Windows hosts. Comes in handy when you want to work on several different installs at once, and don't want to clutter up a small area with machines, or your network with VNC / RDP / X tunneling.
fortune -o
Your love life will be... interesting.
:twisted: How did it know?

The U.S. uses the metric system too, we have tenths, hundredths and thousandths of inches :-P
pendrachken
 
Posts: 1256
Joined: 2007-03-04 21:10
Location: U.S.A. - WI.


Return to General Questions

Who is online

Users browsing this forum: No registered users and 7 guests

fashionable