Take the 2-minute tour ×
Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

From reading older questions, it seems that running a second OS in a VM is the preferred way to run different instances of an OS. However, wouldn't an OS running inside a VM run slower, since the computer has to accommodate two operating systems? I want to install another instance of Windows 7 on my laptop already running Windows 7, and I am concerned that the VM instance would be slow(er), since it won't get full use of all of my memory.

share|improve this question
add comment

3 Answers 3

up vote 4 down vote accepted

If you have hardware virtualization extensions in your CPU (most server and desktop, and many laptop processors do now), CPU bound applications will have a minimal hit.

If you have enough ram to dedicate to your VM, it won't be shared (VirtualBox and microsoft's hyperv don't overcommit memory IIRC, so this is a moot point if you use one of those. If you use VMWare, you can pin memory, so it's reserved for your VM), so memory bound applications will have a minimal hit.

Disc bound applications will always have a hit if the host & guest use the same drive, or if multiple guests use the same drive. Often the hit is fairly significant. If you can dedicate a drive to your VM, or use a fast NAS box for it's disc-bound applications, you'll see a minimal hit.

Does that help?

share|improve this answer
    
How can I find out if I have hardware virtualization on my CPU? My laptop has an i7 and 6MB of RAM. –  RHPT Apr 12 '11 at 1:31
1  
An i7 has hardware virtualization support. But if you're unsure about a specific processor, you can look up the processor model on wikipedia. Or google for a piece of software called CPUz, which will tell you all sorts of good stuff about your CPU. I dimly recall dxdiag gives you some processor information, but I don't know if it will tell you whether or not you have hardware virtualization. –  Kyle__ Apr 12 '11 at 19:21
add comment

Yes & No. With the advent of Hypervisors, virtual OSes now have more direct access to physical hardware. On the other-side of the coin... some things still have an "overhead" which will eat your performance. For example, if you're storing the disk images in a file on the host OS, you'll still have a layer of abstraction which will eat some performance. In many cases the amount of overhead is insignificant. For most of the raw-computing power... there is near-0 overhead in a virtual environment (CPU/RAM access) Many Hypervisors now also even give you a way to virtualize page-files which really can have some dramatic results.

I've actually built systems where the guest OS has direct access to a SSD, and the Host OS runs directly off a standard platter disk... and the Guest OS significantly out-performs the host-OS.

There are many advantages to virtualizing an OS... some reasons include:

  1. portability. You can move a virtual instance from one piece of hardware to another with minimal down-time.
  2. scalability. You can run multiple OSes in parallel to better utilize the hardware. Most of the time OSes sit idle doing very little... so why dedicate 6 physical sets of hardware when you only need the computing power of 1? What if you need an extra server to test something on without always having an extra server sitting around doing nothing?
  3. adaptability. If you need to switch from windows to linux to macos & back & forth... it takes much longer to shut-down one to boot into the other... than it would to simply run them in parallel.

There's several more reasons... but my honest opinion is that you run your personal favorite operating system as the Host-OS... and any secondary OSes as virtual instances on-demand. There amount of overhead vs. processing power today makes any reasons you would dual-boot seem foolish.

share|improve this answer
add comment

You're right in that the VM'ed Windows 7 would be running with less resources (not necessarily slower, depending on your hardware). Is there a reason you want to have another Windows 7? There might be a way around it.

Also, I'm guessing you could dual boot two instances of Windows 7. However, I would recommend getting something like GRUB to manage your OS's at boot time. Windows has a nack of screwing up the boot manager.

share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

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