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 know this might be a noob question, but I need to install windows and a Unix system on the same machine. I've got two hard drives, so I can install one on each. Just not sure if maybe I would be better installing a VM with Linux on my windows system.

I'm not sure what is the best thing, all I need in the long run is access to writing C programs for Unix.

Any help would be nice. Thanks.

share|improve this question

migrated from Jul 21 '10 at 15:19

This question came from our site for professional and enthusiast programmers.

You didn't really ask a question... – DevSolar Jul 21 '10 at 15:18
Just a little too far removed from programming... – Amardeep Jul 21 '10 at 15:18
What are you looking for, Linux or Unix? You seem to use them interchangeably. – MDMarra Jul 21 '10 at 15:39

Whether or not you should install them separately is a tricky question. If you have an older computer with limited resources, definitely steer away from VMs and install one OS on each drive. On the other hand, if you have a newer machine with lots of RAM (minimum 4gb if you're running Windows 7 with a VM) and a decent CPU, then you should be fine using a VM for casual programming.

Given that you have to install both OS's either way, personally I'd go with one on each drive (as long as you're not short on drive space). It's easier to set up, and you get the full power of the computer for both OS's. If you're still doubtful, read on.

If you're looking to do serious C programming on the Linux machine (not just develop for Linux, but actually develop on Linux), then I'd go for separate OS's, regardless of your computer's capabilities. That way you'll get full use of all your resources when compiling etc. Also, if you have any thoughts of using Linux regularly, then it makes sense to give it its own drive.

If you only ever work in Windows (including development), you only need to test the execution of your programs in Linux, you don't have any intention of doing anything else in Linux, and your computer is good enough, then you can save yourself some disk space and use a VM.

Tip on dual boot:

If you decide to install them separately, make sure you install Windows first. That way during the Linux install grub/lilo can detect it and automagically add a Windows bootloader entry for you.

share|improve this answer
+1, very thorough – trolle3000 Oct 11 '10 at 8:56

Using a VM will allow you to use both machines, real and virtual, at the same time.
This might be preferable for cross-system development, but harder on physical resources.

Separate hard disks only allow booting one OS at a time, and accessing files from the other OS might need some extra work.

A VM is not as flexible as a real machine, and you may encounter problems (for example) for resizing its virtual hard disks.

It all depends on the type of development that you will be doing.

share|improve this answer

You must log in to answer this question.