[ros-kernel] Different Hardware Architectures

Jakob Eriksson jakov at vmlinux.org
Tue Apr 27 02:03:39 CEST 2004


Mark IJbema wrote:

>On Mon, Apr 26, 2004 at 04:33:16PM -0400, Waldo Alvarez Ca?izares wrote:
>  
>
>>The only reason I see to port it is if you make something like a decompiler + compiler to make those existing programs run on top of the new arch.
>>    
>>
>
>Actually, they really did this with when porting VMS to another hardware
>platform. You don't really need to decompile, just to recompile, by
>translating instructions for one arch to another. Actually this is
>excactly what qemu does (if i understood correctly), only at runtime,
>but one could do it compiletime as well.
>  
>

The difference is, at runtime you can emulate the target (i386) CPU 
state.  When translating beforehand,
you HAVE to use a host CPU with capabilities reasonably similar to the 
target CPU.

There is also other issues.

That's what Waldo meant by "decompilation is a non-computable problem".  
One of many, but easy example:
the i386 binary uses selfmodifying code - would break badly on a 
decompiled binary, but would work just
fine when under emulation like qemu.

regards,
Jakob



More information about the Ros-kernel mailing list