Virtual Machine
A virtual machine (VM) is a virtual operating system that runs on a host machine: a actual physical computer system. Several VM isolated from each other can be operated seperately. Ressources from the physical hardware of the host machine are allocated to VM by an hypervisor
Hypervisor
Hypervisor, also know as virtual machine monitor (VMM) is a software that creates and manages multiple VM on a single host machine allowing them to share hardware ressources, like CPU and memory.
There are two main types of hypersivors: type 1 runs directly on the hardware, and type 2 which runs on top of a host operating system.