Russian team develops x86 emulator on ARM
cdn.eetimes.com
cdn.eetimes.com
QEMU's i386 userspace mode emulation is a bigger problem -- most notably it doesn't handle multithreaded guest binaries (to an even bigger extent than QEMU's general issues with multithreaded guest binaries).
None of these are insurmountable problems; it's just that nobody so far has cared enough about them to put in the time to develop fixes and get them through code review on the mailing list. Patches welcome :-)
They have already implemented a software dynamic binary translation virtual machine, similar to Transmeta Crusoe With real hardware booting window/linux
http://en.wikipedia.org/wiki/Elbrus_2000
I guess is that binary translation virtual machine could be tweaked for ARM instruction set
http://www.aemula.netAfter all since ARM7 most ARM cores support both ARM and THUMB instruction sets.
I'm not sure you could do that without permission from Intel though.
It's easier to translate in software.
Modern "Jazelle" is basically just Thumb (I think it's even called Thumb EE), and it requires software to translate to it (JIT to Thumb instead of to ARM).
Then how does AMD do it?
Cyrix core, on the other hand, was. They never oficially licensed x86 and the problems between Intel and Cyrix ended as out of court settlement to save Intel's face.
1: http://herbsutter.com/2012/08/02/strong-and-weak-hardware-me...
And anything that is not open source? Proprietary software is still used heavily on servers running an open source stack. Having a performant emulation or translation option could help with odd pieces that vendors haven't recompiled. Although support would be an issue for this at enterprise level.
If performance is the worry I highly doubt running through an x86 emulator is going to be faster.
Intel would eat that idea for breakfast.
There are real JVMs on ARM, plus Jazelle Java acceleration.