Can anyone point me to a simple explanation of why it is useful to have a processor that supports virtualization? I'm looking to purchase an Acer that I will use to run various OS's for testing software.
-
-
Maybe I need to explain more about what I want to do. I run some desktop machines for audio recording and a bunch of laptops for various mobile support and other work. I'd like to be able to retire some of the older machines, and get something cheap and cheerful that will run 64-bit Win 7, run various OS's (W2k, W98 and various Linuxes) on that virtually, and also be able to swap HD's to run some specific OS's natively. I've run the Windows Virtual Machine software in the past and am trying VMWare at the moment.
I understand (I think!) that processor virtualization just means that a few extra functions exist on the chip and, if enabled in the bios, this may speed up XP Mode in W7, but are there any other reasons for wanting it.
I have searched fairly extensively but have yet to find a simple list of what it makes possible beyond XP Mode. If that is all it's ever likely to do, I won't bother, thus opening up a much wider range of possible machines.
One unrelated question that someone might be able to help with - are some machines limited to 4GB ram by the chipset or will the ones that say max 4GB actually run OK if fitted with, say, 8GB?
I'm limiting myself to Acer at the moment because of the ease of getting and checking drivers for the various OS's and also because of price. -
To put it simply, it's complicated.
There has been made a list of things needed to effectively implement virtuelization. Two of the things on that list are that guest OS cannot in any way compromise host and that from guest's point of view VM looks just like a real computer. x86 computers have problems with that because there are if I remember correctly a bit less than 20 instructions which are needed by guest OS and can directly affect host OS. That's a serious problem, so virtual machine software had to monitor instructions executed by guest OS and when it attempts to execute privileged instructions, VM had to work around those instructions without letting guest OS know. Such solutions caused slowdowns. With AMD-V and Intel VT-x, host's processor can automatically work around privileged instructions without any intervention from VM. If VM is making use of that, it should have greater performance. Also sometime after making original virtualization instructions available, AMD and Intel added some more instructions which work together with host's motherboard which allow guest to directly access host's hardware resources. That's important because high quality audio and 3D graphics were difficult to make available to OSes running in VMs.
Another problems is that developers of some VM (VMware is among them, if I remember correctly) software decided that they just aren't going to bother implementing workarounds for x86_64 processors because they have virtualization instructions available. So to run 64bit guest on some VM software, you'll need virtualization instructions in your processor.
Now the problems: Intel decided that they are going to allow motherboard manufacturers to place option in system's firmware (BIOS or UEFI) which controls if the processor's virtualization instructions are going to be available to the user. Nowadays majority of the processors have virtualization instructions, but a large number of laptop manufacturers have decided that their users don't need them and disabled them. Acer's BIOSes usually don't have any interesting options so it's difficult to enable virtualization if it's disabled. For example I had to find a program which would modify the section of BIOS which contains default settings so it would have VT-x set to enabled (LONG LIVE MARCAN! ).
On the other hand, I heard that AMD decided to take the decision to enable or disable virtuelization away from computer manufacturers. If and AMD processor supports AMD-V it will be enabled when user starts program that needs those instructions. AMD's way looks more user friendly to me, but I never had a chance to use it. -
However I'm running 3 VM's using a product called Virtualbox which is free and very easy to use.
I have Win 2003, Win XP and Centos 5.4 VM's currently running with no issues on top of my Win 7 x64 o/s. -
Many thanks for those really helpful replies. It seems as though the 'help' with directly accessing the host's motherboard resources would be the most important advantage for what I do. I'll try to research this more.
Otherwise, it looks as though I would be able to get by without one of these processors. -
Your processor doesn't need to support virtualization in order for you to run virtual machines. However, if it does support it, and you enable it with your VM program (Virtualbox, VMWare, etc) it will GREATLY improve the performance and responsiveness of your virtual machine.
-
If it supports VT, you can more efficiently run multiple operating systems at the same time. Without VT it will still work, but will not be as high performing.
Virtualization
Discussion in 'Acer' started by billaboard, Apr 3, 2010.