QUOTE (TWControls @ Nov 1 2009, 04:48 PM)

QUOTE (paulengr @ Nov 1 2009, 09:15 AM)

It's not a problem. How did Microsoft make it so that you could do that with Windows Vista/Windows 7? They created the XP compatibility mode, which is nothing more than a virtual machine running Windows XP. I use the same trick to run Allen Bradley software. And guess what else, it works on every operating system out there that supports virtual machines.
Paul, you have successfully ran AB and Mitsubishi software with some flavor of Linux and Vmware running XP?
On servers, I've successfully used Xenserver. It is much more cost effective, efficient, and doesn't have the nasty single-point-of-failure problem that VMware has. Plus, their licensing scheme doesn't require an advanced accounting degree to figure out and take up 45 pages of the manual to explain it. I have a friend who has had a similar level of success with Virtual Iron which is designed as a much larger overall system involving potentially dozens of servers. Either way, all of these server (and hardware support-based) systems actually use the Xen virtual machine code which was a PhD project and has since been overseen by the xen.org folks as a free code base. I don't know what Microsoft's Hyper-V is based on but I have a sneaky suspicion that it's probably a Xen hypervisor as well. I've tested VMWare once in a while and it does OK but I prefer Xen for simplicity and reliability reasons. Xenserver requires hardware (VT type) assistance from the CPU, but most server-grade processors already have this.
On a hypervisor platform, it doesn't matter if you run XP, 2000, or Vista. Those systems don't know what a "hypervisor" is and will not detect it. They run just fine. Windows 7 and Server 2008 actually recognize hypervisors (mostly for licensing purposes), so YMMV when it comes to these two. I have no experience running them on a hypervisor. The biggest hassle is that EVERYTHING is virtual. You have virtual drives, virtual NIC cards, virtual displays, virtual keyboards, virtual mice, and especially, virtual everything else to talk to the outside world. For the most common items, this isn't a problem. However, USB ports especially are a big problem. You just can't "get there from here". However, you can get "device servers" with USB or serial ports (often called an ethernet USB extender for the USB variety). These come with a software program that you load (on your virtual machine). The real device hangs off an IP port and the virtual stuff talks to the virtual device driver. This even works with Aladdin USB key dongles (I've tried two different ethernet USB port extenders), in spite of the fact that those dongles often give me all kinds of hassles when they are attached to USB hubs.
If you are running a type 2 virtual machine, which means you are running a virtual machine hosted in another operating system, this gets a lot more dicey. In this case, the virtual machine has to intercept the code stream and rewrite key components of the virtualized operating system in order to make things work relatively well (unless the host OS is running on a processor that supports virtualization). Xen is behind on this sort of thing and just recently managed to get a true type 2 virtual machine capability. The three leaders in this area are VMWare, Parallels, and Sun VirtualBox. Note that performance is not going to be nearly as good without hardware virtual machine support, but then again, not too many people are buying laptops with Xeon processors in them either. VMWare is the most popular on Windows but has some odd habits that I can't quite explain. Parallels is probably the most polished. VirtualBox is the one I'm most familiar with because it seems to work the best for me in anything I throw at it, and it works flawlessly under Linux, Mac, and Windows. It is trivially easy to interface VirtualBox to the host machine's serial ports (if any), which solves the problem of interfacing to Allen Bradley PLC's. If you have some other kind of strange hardware and you can get it in a USB form-factor, again, VirtualBox will interface to it and give you USB ports.