A hypervisor is software that creates and manages virtual machines by allowing multiple operating systems to run on a single physical computer. It is a middle layer between the hardware and the operating systems, it allocates resources like CPU, memory, and storage to each virtual machine.