Binary Translation - Static Binary Translation

Static Binary Translation

A translator using static binary translation aims to convert all of the code of an executable file into code that runs on the target architecture without having to run the code first, as is done in dynamic binary translation. This is very difficult to do correctly, since not all the code can be discovered by the translator. For example, some parts of the executable may be reachable only through indirect branches, whose value is known only at run-time.

One such static binary translator uses universal superoptimizer peephole technology (developed by Sorav Bansal, and Alex Aiken from Stanford University) to perform efficient translation between possibly many source and target pairs, with considerably low development costs and high performance of the target binary. In experiments of PowerPC-to-x86 translations, some binaries even outperformed native versions, but on average they ran at two-thirds of native speed.

Read more about this topic:  Binary Translation

Famous quotes containing the word translation:

    Whilst Marx turned the Hegelian dialectic outwards, making it an instrument with which he could interpret the facts of history and so arrive at an objective science which insists on the translation of theory into action, Kierkegaard, on the other hand, turned the same instruments inwards, for the examination of his own soul or psychology, arriving at a subjective philosophy which involved him in the deepest pessimism and despair of action.
    Sir Herbert Read (1893–1968)