KVM and Xen are two highly relevant hypervisors. A hypervisor is software, firmware or hardware that creates and runs virtual machines as guests on a host machine. The hypervisor manages the execution of the guest OS's and the virtualized hardware exposed.
full virtualization is where guest operating systems are unaware of each other and hypervisor directly interfaces with hardware resources.
paravirtualization is where guest operating systems are aware of each other, allowing guest OS's to communicate with the hypervisor.