title: Do VMMs use Virtual Memory on the hosts?
body: <p>I am trying to understand how virtualization was performed in the past using shadow page tables. The <a href="http://www.anandtech.com/show/2480/10" rel="nofollow">articles</a> I've read all talk about about the translation from Guest Virtual Memory to Host Physical Memory.  I understand how the Shadow Page tables eliminate the need for a Guest Virtual to Guest Physical Translation. My question is, what happened to the Host Virtual to Host Physical step. (HVA --> HPA). </p>
  
  <p>Do the Virtual Machine Managers in the cited articles, not use virtual memory in the host at all? Are they assumed to have direct access to the Physical memory of the host system? Is it even possible? I thought the TLB cache translation is implemented in hardware by the MMU and and every instruction's addresses are translated from virtual to physical by the MMU itself. But then again, I am not sure how kernel code works with TLB? Do kernel instructions not go through TLB? </p>