Fat binary: differenze tra le versioni
Contenuto cancellato Contenuto aggiunto
Nessun oggetto della modifica |
mNessun oggetto della modifica |
||
Riga 1:
Un '''fat binary''' (o '''multiarchitecture binary''') è un [[programma]] nativo per più [[Instruction set| set di istruzioni]] (SI) ed è quindi eseguibile su più tipi di architetture di processori. Il metodo usuale di implementazione consiste nell'inclusione di una versione del [[linguaggio macchina]] per ogni SI, realizzando un file ''n'' volte più grande di un binario per una sola architettura, da cui il nome.
Un popolare utilizzo di programmi fat binary è stato per il [[PowerPC]] della [[Apple Macintosh]], dove un programma avrebbe dovuto contenere sia le istruzioni per il processore [[Motorola 68000]] che quelle per il [[PowerPC]]. Ciò fu reso possibile dall'inserimento del codice per PowerPC (nel formato [[Preferred Executable Format|PEF]]) all'interno del [[data fork]] del programma, mentre il codice per 68000 venne mantenuto nel [[resource fork]]. I programmi Fat binary sono usati anche per la transizione dal processore PPC verso x86 tra il 2006 e il 2007. Apple ha scelto di chiamare questi binari "[[Universal binary]]," probabilmente per distinguere questa nuova transizione di processori da quella precedente.
Il [[codice oggetto]] [[Mach-O]] usato nei sistemi operativi [[
Il supporto al formato fat binary non è lo stesso su diversi [[sistema operativo | sistemi operativi]]; ci sono molte alternative per risolvere il problema, quali l'uso di un [[Installer | programma di installazione]] per scegliere il binario specifico per l'architettura al momento dell'installazione, distribuendo il [[codice sorgente]] del programma e [[compilatore|compilandolo]] al momento, o usando una [[macchina virtuale]] ed un [[Compilatore just-in-time]]. Ognuna di queste soluzioni ha i suoi svantaggi, che si manifestano maggiormente se l'utente cerca di portare un programma su una nuova macchina attraverso un upgrade.
|