address space identification: each address space(process) gets its own ID. When process context switch happens, the TLB needs not to be flushed, because two processes with a same virtual address would point to different physical address. And then TLB does not have to be invalidated on thread context switch as the ASID is unique
full virtualization drawbacks
design principles
Support for unmodified application binaries with existing standard ABIs
Support full multi-application operating systems
Paravirtualization is key to high performance and isolation