Lorsque j'utilise $ arch
mon MacBook Pro 10.9 2012, j'obtiens la sortie
i386
La page de manuel pour arch
dit que
the arch command is 2-way universal, 32-bit only
Cependant, $ file "$(which arch)"
donne
/usr/bin/arch: Mach-O universal binary with 2 architectures
/usr/bin/arch (for architecture x86_64): Mach-O 64-bit executable x86_64
/usr/bin/arch (for architecture i386): Mach-O executable i386
OTOH, python2.7
s'exécute en tant qu'exécutable 64 bits:
$ /usr/bin/python2.7 -c 'import sys; print "%x" % sys.maxint'
7fffffffffffffff
En outre, le noyau est apparemment 64 bits:
$ file /mach_kernel
/mach_kernel: Mach-O 64-bit executable x86_64
uname
accepte:
$ uname -m
x86_64
..ou le fait?
$ uname -p
i386
macos
universal-binaries
intuitif
la source
la source
arch
fonctionne donc en 32 ou 64 bits, mais indique uniquement si l'architecture est PPC ou Intel [- dérivée], et indique qu'Intel utilise l'i386
étiquette plutôt queintel
. J'imagine que c'est ce que signifie "universel bidirectionnel, 32 bits uniquement".