2016-08-02 36 views
0

Ist es möglich, eine ELF-Datei zu haben, die ausführbare Anweisungen von zwei ISAs enthält. Das ist eine einzige ELF-Datei, die auf zwei Architekturen ausgeführt werden kann, etwa einem x86 und einem PowerPC.Mehrere ISA in derselben ELF-Datei

Ein Beispiel dafür sind die Apple Universal Binaries, die vor ein paar Jahren verwendet wurden. Gibt es eine Möglichkeit, etwas ähnliches in einer Linux-Distribution zu erreichen? Ich bin auf FatELF-Projekt gestoßen, das darauf abzielte, dies zu tun, aber es scheint tot zu sein

Antwort

3

Das ist ein FAT binary genannt. Sie sind einige Vorschläge wie FatELF, aber AFAIK sie sind nicht sehr erfolgreich.

BTW, die meisten Linux-Software ist freie Software, so gibt es nicht viel Anreiz für FAT-Binärdateien: Wenn Sie den Quellcode erhalten können, könnten Sie das Programm aus der Quelle kompilieren. Außerdem sind FAT-Binärdateien tatsächlich fett (z. B. größer als gewöhnliche Binärdateien), und Sie werden mehr Bandbreite essen, um sie herunterzuladen ....

Auch in der Praxis sind Prozessorarchitekturen heute viel weniger vielfältig als vor 20 Jahren. Wir haben hauptsächlich x86-64 (und ARM auf Tablets).