1

現在実行中の Mac OS X システムが 32 ビット マシンか 64 ビット マシンかを判断するにはどうすればよいですか?

4

3 に答える 3

1

「64ビットマシン」の意味によって異なります。プロセッサ ファミリに応じて、大きく 3 つのカテゴリがあります。

  1. 一部の 64 ビット演算をサポート
  2. X-64 モード (64 ビット アドレッシング) でプログラムを実行できます。
  3. 64 ビット カーネルをサポート

ここではセンス "2" を意味していると思います。これは、アプリケーション コードに最も関係があるからです。古い PowerPC Mac で実行する必要がない限り、センス "1" について心配する必要はないと思います。

あなたは特にCコードでこれを行うと述べましたが、実際にはあまり意味がありません。C コードをコンパイルしている場合は、32 ビットおよび 64 ビットのバリアントを使用してアプリケーションを「ファット」にビルドするだけでよいため、コンパイル時に次のようにチェックします。

#if _LP64
//64-bit stuff
#else
//32-bit stuff
#endif
于 2009-11-19T17:51:57.067 に答える
0

少しグレッピーですが..

#!/bin/sh

ioreg -l -p IODeviceTree | grep EFI64
if [ $? = 0 ]
then
    echo "I am a 64bit machine!"
else 
    echo "I am a 32bit machine!"
fi

で包まれたNSTask *task = [[NSTask alloc] init]; ...

于 2009-11-19T17:20:53.683 に答える
0

sizeof(long) == 432 ビット システムでもsizeof(long) == 864ビット システムでも、それはかなり確実です。同じことがポインターにも当てはまるはずです。

于 2009-11-18T09:20:36.837 に答える