Binari universal

De Viquipèdia
Dreceres ràpides: navegació, cerca

Un binari universal és, parlant d'Apple Computer, un fitxer exectuable que funciona nativament tant a ordinadors PowerPC com en els Macintosh x86 basats en Intel. Va presentar-se el 2005 en una conferència mundial de desenvolupadors per tal de facilitar la transició de sistemes basats en arquitectura PowerPC a aquells basats en Intel, que van començar a comercialitzar-se el 2006. Els binaris universsals inclouen versions compilades de les aplicacions per a PowerPC i x86. Les especificacions de binari universal de fet inclouen la capacitat d'encabir-hi més de dues versions de binaris, essent possible codi separat per a PowerPC, PowerPC 64-bit i x86. El sistema operatiu detecta un binari universal per les seues capçaleres, i n'executa la secció apropiada en funció de l'arquitectura on s'estigui executant. Així es permet que l'aplicació pugui executar-se òptimament en qualsevol tipus d'arquitectura sense que això impliqui cap impacte en el rendiment.

Normalment hi ha dues solucions alternatives per a aquesta situació. La primera és proporcionar dos binaris diferents, un compilat per a l'arquitectura x86 i l'altra per a PowerPC. El problema és que pot confondre a aquells usuaris que no estiguin familiaritzars amb aquests conceptes. L'altra alternativa és confiar en l'emulació de l'arquitectura. Aquesta darrera aproximació dóna un menor rendiment i es considera com una solució temporal fins a l'aparició de binaris universals o compilats específicament.

Els binaris universals són habitualment d'una mida major que els dissenyats per a una sola plataforma, atès que han de contenir dues còpies de codi compilat. La mida resultant no és, per això, el doble, perquè part dels recursos que utilitzen els codis compilats es comparteixen en les dues arquitectures. No cal una aportació extra de RAM, perquè només es carrega una de les còpies durant l'execució.

Apple ja va utilitzar una tècnica similar en el passat durant la transició dels processadors 68k als PowerPC a mitjans dels 1990. En aquella ocasió, els executables duals rebien el nom de «fat binaries» (binaris grassos), en referència a llur major mida de fitxer.

Una solució semblant la van utilitzar IBM i Microsoft en dissenyar el format de fitxer executable per al sistema operatiu OS/2, a finals de la dècada dels 80. Com OS/2 utilitzava la modalitat protegida del processador 80286, es va dissenyar el nou format d'executable per tal que contingués dues versions: una per al mode real (MS-DOS) i l'altra per al mode protegit (OS/2) que s'utilitzaven en funció del sistema on s'executava l'aplicació.

Enllaços externs[modifica | modifica el codi]