Virtual Machines (VMs) are a generic term for cloud-based servers created “virtually” from a high-performance physical server (called a “Host Server”). They may also be known as Virtual Private Servers (VPS) within the context of a hosting solution from hosting providers.
CPU and memory resources from the Host Server are allocated to the VM, based on the level of service you subscribe to.
A Typical Virtual Machine (VM) / Some VM examples include:
AWS EC2 instances
Google Cloud Compute Engine services
Microsoft Azure Virtual Machines
Digital Ocean Droplets
In web hosting, VPS hosting uses VMs to combine the benefits of Shared hosting and Dedicated hosting solutions.
It is similar to Shared hosting, as your website is not the only one hosted on a given server. However, you tend to have a fixed allocation of CPU/memory resources, which aren’t shared with other websites.
The use of Virtual Machines means you can easily scale up your CPU/memory resources as your needs grow.