I want to know more about virtuallization technology and what the difference is between hardware and software virtualization.
The difference between hardware and software virtualization
virtualization
virtualization
I want to know more about virtuallization technology and what the difference is between hardware and software virtualization.
Best Answer
Just to provide a short answer, which can get you started on more detailed articles/materials.
Virtualization is a process of simulating a specific computer/device/environment on a different one. A few examples:
Key terms:
In context of the examples above:
Software vs. Hardware virtualization:
In case of software virtualization, the host system needs to completely emulate guest's platform (i.e. ranging from hardware, CPU instructions, through its firmware and even the operating system /if there is one/). The advantage is that host and guest platforms are independent (our example of the Nintendo emulator). The disadvantage is that this approach is very slow and resource consuming (since we have to emulate everything).
Hardware(-assisted) virtualization provides a significant performance gain over software virtualization by running some guest code directly on the host hardware with limited or none assistance from the host system - the hardware however needs to support this (search for Intel VT or AMD-V). The disadvantage over software virtualization is that the guest and host systems need to use the same platform (i.e. you cannot use hardware virtualization for our Nintendo example).
Hope this helps!
NB: I'm not an expert on the topic - as others have pointed our, you can find more precise information via Google. I'm making this a community wiki, so anyone please feel free to edit/correct anything which you find unclear/wrong. Thanks!