22 votos

¿Por qué `arch` muestra `i386` como resultado?

Cuando ejecuto $ arch en mi MacBook Pro 2012 con 10.9, obtengo la salida

i386

La página del manual para arch dice que

el comando arch es universal de 2 vías, solo 32 bits

Sin embargo, $ file "$(which arch)" da

/usr/bin/arch: binario universal Mach-O con 2 arquitecturas
/usr/bin/arch (para arquitectura x86_64): Mach-O ejecutable de 64 bits x86_64
/usr/bin/arch (para arquitectura i386): Mach-O ejecutable i386

Por otro lado, python2.7 se está ejecutando como un ejecutable de 64 bits:

$ /usr/bin/python2.7 -c 'import sys; print "%x" % sys.maxint'
7fffffffffffffff

Además, al parecer el kernel es de 64 bits:

$ file /mach_kernel
/mach_kernel: ejecutable Mach-O de 64 bits x86_64

uname está de acuerdo:

$ uname -m
x86_64

..o ¿está?

$ uname -p
i386

17voto

geocoin Puntos 121

Aquí tienes:

uname -p imprime el nombre de la arquitectura del procesador de la máquina.

uname -m imprime el nombre del hardware de la máquina.

El comando arch sin argumentos, muestra el tipo de arquitectura de la máquina.

En última instancia, sospecho que esta es la respuesta que buscas: https://stackoverflow.com/questions/12763296/os-x-arch-command-incorrect

Para mayor confusión, ejecuta:

$arch
i386
$machine  
i486
$uname -m
x86_64
$uname -p
i386

0 votos

Está bien, por lo tanto, arch se ejecuta como 32 o 64 bits, pero solo informa si la arquitectura es PPC o derivada de Intel, e informa de Intel usando la etiqueta i386 en lugar de intel. Supongo que eso es lo que significa "universal de 2 vías, solo 32 bits".

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X