I'm a programmer, and am about to upgrade to a new Windows 7 machine (quad, 4GB). Problem is some of my dev tools (e.g. PowerBuilder) do not support 7. I'm thinking about using either XP Mode or VMware as the dev platform for such tools. I've never used 7 or VMware, and have wondered:

  1. Is there a difference in terms of performance between XP Mode and VMware? Dev tools are heavy, and I'd like to get as much as possible from the hardware (couldn't care less about graphics, though).
  2. Is there a difference in terms of interaction with the main machine?
  3. If I'll be using VMware, I'd love to have several images I can load - development tools, clean OS install, some servers etc. They don't have to run concurrently - each is for a different task. Can this be somehow done with XP Mode?
  4. Can single files be accessed from the main machine (for backups or so) in either XP Mode or VMware? From Jeff Atwood's recent story I understand that backing up VMware is tricky. Is it the same with XP Mode? (I do use source control, but still)

Bottom line: is using a virtual machine to run my main development platform a good idea?

link|improve this question

60% accept rate
also consider virtaul PC as it is free and may be good enough for your needs – Ian Ringrose Dec 23 '09 at 14:31
Good Question. I don't know the answers but I'd sure like to know. – pplrppl Dec 23 '09 at 14:58
@Ian - you're right. We use VMWare in our company, but any free equivalent tool will be considered. – eran Dec 23 '09 at 16:21
feedback

6 Answers

up vote 3 down vote accepted

You'll have a lot more versatility with a standalone VM product vs XP mode, since XP mode can only do one thing - be XP mode. XP mode is really just designed for application compatibility, not for managing a virtual infrastructure. A good VM manager will let you build whatever infrastructure you need, spanning as many VMs as you need.

My suggestion would be to purchase the proper version of Windows 7 for XP mode, to give your self the option of using it, and plan on implementing VMWare Workstation into your development workflow. You'll still need to acquire the proper licenses for using with VMs, but you may already have access through MSDN or similar.

link|improve this answer
Joe brings up a great point. XP Mode isn't really designed to be a VM environment on its own. It was really aimed at bridging the gap between XP and Windows 7. If you're looking for application compatibility choose this. If you're really looking for a virtual design environment, VMWare would make a much better choice. – Mr Furious Dec 23 '09 at 15:31
Well, the first thing I'm looking for is a solution for a possible incompatibility, so in that sense XP Mode might be sufficient. However, given I'll be using an emulation level, I figured I'll try to get the most out of it - as long as it's feasible, and for that I'm asking for your help... – eran Dec 23 '09 at 16:29
feedback

Make sure your new CPU supports hardware virtualisation, otherwise you can forget about the XP Mode option. Most recent AMD chips do, but a fair number of recent Intel don't regardless of the number of cores.

link|improve this answer
you also need hardware virtualisation to make VMWare fast – Ian Ringrose Dec 23 '09 at 14:30
OP will also need the correct version of Windows 7 for XP mode support. – Joe Internet Dec 23 '09 at 14:48
I think you need it to run a 64bit guest on the 32bit host as well – ITGuy24 Dec 23 '09 at 15:18
@Ian: there's a big difference between running fast and not running at all. – gbjbaanb Dec 27 '09 at 2:35
I thought MS released a patch that supported XP mode on older chips without hardware virtualisation. Here is a link noting the release. – ConcernedOfTunbridgeWells May 4 '11 at 14:12
show 1 more comment
feedback

Our developers all use VMware server or workstation and sometimes VMware player for development. We have always found VMware to be more intuitive then Virtual PC or Virtual Server. That being said we haven't tested using XP Mode. But I get the feeling XP Mode was not meant to be used in this matter. I would still recommend usng VMWare to anyone who asked my opinion.

link|improve this answer
feedback

I'd recommend VMWare Workstation (Jeff's experience looks like something unfortunate rather than something tricky about VMWare). Workstation's ability to take snapshots is the killer feature for me. I only back up a couple of important VM's that's just a case of shutting down the VM and running rsync to make a copy to an external drive. I can then run the VM from the external drive to check all is ok. My impression is that XP seems to run more smoothly in VMWare than it did on the raw hardware. Workstation has some hooks into development tools like eclipse and Visual Studio and the ability to record and playback a VM looks really useful (though I don't use that personally). I find VMWare Workstation to be good value for money. You've also got the choice of VMWare Server or Sun VirtualBox if you want free as in beer.

link|improve this answer
incidentally you don't need to shutdown the VM, just suspend it and copy the files instead. – gbjbaanb Dec 23 '09 at 15:02
feedback

I also have to throw this out there, have you tried to run it natively in Win7? It's backwards native support is very powerful, even on a machine that I had owned for 3-4 years and I upgraded to Win7 I did not end up with a single incompatibility. The only thing that was very finicky were my motherboard's on board sound card driver software but even that eventually was working fine.

link|improve this answer
There's actually a chance everything will work without a problem, but since 7 in officially unsupported by our IDE's vendor, I might have problems getting support should it not work. That, and I bet you've never seen a software that crashes as often as PowerBuilder... I'd rather take as little chances as possible with it. But your point is definitively valid. – eran Dec 23 '09 at 16:32
I used Toad for a while! – Chris Marisic Dec 31 '09 at 14:43
feedback

My colleagues in the US run all their deevlopment on VMs, they have a VM per version of our product. Personally, I think this isn't ideal as Visual Studio runs like a dog at the best of times, but it does work to prevent conflicts.

For older development environments (eg Powerbuilder, VB6 etc) then a VM would work fine.

They use VMware, even though they seem to worship at the altar of Microsoft. That should tell you something about the relative merits of the virtualisation providers. VMWare Workstation is a wonderful tool, its multiple snapshots tool is designed for you - build your base image, then snapshot it to give you a dev environment, test environment, etc all based on the same image.

Backing up VMware is simplicity itself. Shutdown or suspend your image, copy the files. Done. If you want to partial backup your guest OS to the host disk, you can add a drive that maps directly to a physical HDD, bypassing the virtual drives you normally get in a VM.

link|improve this answer
Multiple snapshots are a very ueful feature – ITGuy24 Dec 23 '09 at 15:30
feedback

Your Answer

 
or
required, but never shown

Not the answer you're looking for? Browse other questions tagged or ask your own question.