Organizations that have their own internal server farms tend to use virtualization a lot to encapsulate the different components of their applications. There are many different solutions, depending on your requirements.
Virtualization solutions provide VMs that have virtual hardware, such as network cards and CPUs. Virtualization and container techniques are sometimes confused because they share some similarities. You can use virtualization techniques to simulate entirely different hardware than the one you have physically. This is commonly referred to as emulation.
If you want to emulate mobile phone hardware on your developer machine so that you can test your mobile application, you use virtualization to emulate a device. The closer the underlying hardware is to the target platform, the greater the efficiency the emulator will have during emulation. As...