SORU
10 EYLÜL 2009, PERŞEMBE


Nasıl python kabuk OS X 32 bit veya 64 bit modunda yürütülüyorsa belirleyebilirim?

Bir şekilde kabuk kabuk içinde ne olduğunu söylemem gerek.

Denedim bakıyor platform modül ama öyle görünüyor ki sadece söyle senin hakkında "hakkında bit mimarisi ve Bağlantı biçimi için kullanılan yürütülebilir": ikili derlenmiş olarak 64 bit (gerçi ben çalışan OS X 10.6) çok daha iyi olacak gibi görünüyor her zaman rapor 64 bit olmama rağmen kullanma yöntemleri described here zorla 32 bit modu).

CEVAP
10 EYLÜL 2009, PERŞEMBE


GÜNCELLEME: Bir şekilde here belirtildiği gibi sys.maxsize bakmak için:

$ python-32 -c 'import sys;print("%x" % sys.maxsize, sys.maxsize > 2**32)'
('7fffffff', False)
$ python-64 -c 'import sys;print("%x" % sys.maxsize, sys.maxsize > 2**32)'
('7fffffffffffffff', True)

sys.maxsize Python 2.6 tanıtıldı. Eğer eski sistemler için bir test gerekiyorsa, biraz daha karmaşık bu test tüm Python 2 ve 3 sürümleri üzerinde çalışması gerekir:

$ python-32 -c 'import struct;print( 8 * struct.calcsize("P"))'
32
$ python-64 -c 'import struct;print( 8 * struct.calcsize("P"))'
64

BTW, bu platform.architecture() kullanmak için cazip olabilir. Ne yazık ki, sonuçlar her zaman güvenilir, particularly in the case of OS X universal binaries değildir.

$ arch -x86_64 /usr/bin/python2.6 -c 'import sys,platform; print platform.architecture()[0], sys.maxsize > 2**32'
64bit True
$ arch -i386 /usr/bin/python2.6 -c 'import sys,platform; print platform.architecture()[0], sys.maxsize > 2**32'
64bit False

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Bigapplemagic

    Bigapplemagi

    22 EYLÜL 2011
  • DetroitBORG

    DetroitBORG

    29 Temmuz 2008
  • hitcreatormusic2

    hitcreatormu

    21 Mayıs 2010