Guest vs Host:
- Host – usually runs on physical hardware, lower level.
- Guest – runs on the virtual/virtualized environment, upper level.
Virtualization types:
- Full virtualization –  virtualize all the devices!- Can run almost all the operating systems without any modifications.
- Emulate all the devicesn.
- Slower than Paravirtualization and Operating-system-level virtualization.
- Software Emulation (Without Hardware-Assisted-Virtualization)- Very Slow.
- Need to do some jobs like binary translation or software instruction decode, will have a heavy overhead, is very inefficiet.
 
- Paravirtualization on HVM- Full virtualization with paravirtualization drivers.
 
 
- Paravirtualization(PV) – use modified kernel to interact with the special interface- Guest knows it’s a guest on the host, the guest will communicate with hypervisor.
- Use hypercall (call to hypervisor) as its system call.
- Hard(almost impossible) to modify the kernel of closed-source operating systems like Windows to use this method.
- Faster than full virtualization but slower than operating-system-level virtualization.
 
- Hardware-Assisted-Virtualization (HVM, HAV)- Using help from hardware capabilities.
- Faster than Software Emulation.
- Technic examples- AMD-V (Pacifica)
- Intel VT-x (Vanderpool)
 
 
- Operating-system-level virtualization – don’t really virtualize the devices- Fastest – SUPER FAST!!!
- Isolate different user space instances.
- Don’t need hardware support.
- Must run on the same kernel- Means bad compatibility.
 
- Examples:
 
- Partial virtualization – need be confirmed, not a usual type- The section of partial virtualization on wikipedia said that “This section does not cite any references or sources”.
 
Type-1 vs type-2 hypervisor:
- Type-1- Native/Bare-matel
- Runs directly on the real hareware, directly control the hardware resources.
- Examples:
 
- Type-2- Runs on an existing operating system.
- Examples:
 
Wikipedia also use Application/Environment and OS level to distinguish different types of virtualization:
- Application-level- Sandbox
 
- Environment-level- Containers
 
- OS-level- Hypervisors
 
Common integrated virtualization solutions:
Resources and references:
- Understanding full virtualization paravirtualization and hardware assist – vmware white paper
- Virtualization on Wikipedia
- The Paravirtualization Spectrum- Explanations of Full virtualization, PV, HVM, PVH and PVHVM (so many terms here … a little bit too complex, ha)
- Part 1: The Ends of the Spectrum
- Part 2: From poles to a spectrum
 

source : https://blog.xenproject.org/2012/10/31/the-paravirtualization-spectrum-part-2-from-poles-to-a-spectrum/
Still learning, hope that there are not too many wrong things here … comments to point out mistakes/weak points are welcome!
 
 