Virtual Machine
Virtual Machine is a software program that emulates a physical computer system. It allows you to run an operating system and applications on a virtualized hardware environment. The virtual machine runs on top of a physical server and utilizes the underlying physical resources via a hypervisor.
Some key aspects of virtual machines:
They provide an isolated environment for running software, which is independent from the underlying physical hardware. This allows you to run multiple virtual machines on a single physical server.
The virtual hardware like CPU, memory, storage etc are implemented virtually. For example, a virtual machine can be allocated 2 virtual CPUs and 4GB of RAM by the hypervisor, irrespective of the actual physical hardware.
Virtual machines are encapsulated files that can be easily moved, copied or backed up since they are just files on the physical storage. This provides portability and flexibility.
Popular hypervisors used to manage virtual machines include VMware ESXi, Microsoft Hyper-V, Oracle VirtualBox etc. They allow features like live migration of running virtual machines between physical hosts.
Virtual machines allow better utilization of physical resources via features like overcommitment. Multiple VMs can oversubscribe the available physical resources.
In summary, virtual machines provide isolated virtual environments using virtualized hardware, allowing flexibility and efficient utilization of underlying physical infrastructure. They are encapsulated files that are portable across hosts and managed by hypervisors.