 <p>I think it is because clr virtual machine uses cpu directly without code opcode translation. It may be optimization for clr application or may be windows mobile/window phone 7 started on INTEL proccessor. Android platform based on linux and theoretically you can start android on virtual machine in i686 environment. In this case virtual machines such as vmware could execute some opcodes direcly. But this option will be allowed only if you write on the Java. Because the Java interpret their byte-code or precompile it before execution. see: <a href="http://www.taranfx.com/how-to-run-google-android-in-virtualbox-vmware-on-netbooks" rel="nofollow">http://www.taranfx.com/how-to-run-google-android-in-virtualbox-vmware-on-netbooks</a></p>