Ideally virtualization is transparent to guest OSes
- Common principle in mainframe design
- Nearly impossible with i386 design
- Running unmodified OSes is horribly tricky
- Trapping priviledged calls
- Dynamic code rewrite
- Those tricks kills performances in some scenarii