web-dev-qa-db-ja.com

Mac OS X Leopard(10.5.x)は32ビットですか64ビットですか?

Mac OS X Leopard(10.5.x)は32ビットですか64ビットですか?

4GBを超えるRAMをアドレス指定できますか?

5
Josh Hunt

簡単に言うと、Leopardは32ビットと64ビットの組み合わせです。

  • Tigerは、低レベルのシステムライブラリに64ビットのサポートを追加し、GUI以外のアプリケーションで64ビットを有効にしました。
  • Leopardは、システムフレームワーク全体に64ビットのサポートを追加したため、どのアプリも64ビットにすることができます。
  • Snow Leopardは、Appleが出荷する64ビットカーネルと多くの64ビットユーザーアプリケーションを追加します。もちろん、すべてのフレームワークとライブラリの32ビットバージョンは引き続き利用できますが、両方のモードでアプリを実行するには、両方のスタックをロードする必要があります。これは非効率的であり、Apple is開発者がボートに乗り、64ビットバージョンでアプリを構築することを強くお勧めします。

10.5のカーネルはまだ32ビットであるため、いくつかのトリックを使用して、より多くのアドレス可能なメモリを実現できます。正確な詳細は現時点では回避できますが、Leopardでは4 GBの物理メモリしかアドレス指定できないと思います。32ビットプロセスがを超える場合と同様に、64ビットメモリスペースがディスク上の仮想メモリに波及すると思います。インストールされているRAMの量。


編集:仮想メモリの側面について間違っていました。 32ビットカーネルcan 4 GBを超えるメモリをアドレス指定しますが、多くの物理メモリを追加すると、カーネルの32ビットメモリスペースのかなりのチャンク(〜1/3)が消費されます。制限)は、カーネルのパフォーマンスを低下させる可能性があります。明らかに、アプリケーションが使用可能なメモリよりも多くのメモリを使用する場合(32ビットモードまたは64ビットモードのいずれか)、OSは仮想メモリをマップする必要があります。

特に、Snow Leopardの64ビットカーネルは、物理メモリの記述など、使用できるアドレススペースを大幅に増やすことで、カーネル自体に余裕を持たせています。ほとんどの人はまだその制限に達していないが、インストールされた状態で開始するRAM近い将来増加する。

8
Quinn Taylor

このシリーズは非常に有益であることがわかりました。

Mac OS X 10.6 Snow Leopard 64ビットへの道

これは、過去数年間のAppleの64ビットサポートとアーキテクチャについてかなり深く掘り下げています。

6
Jay Conrod

これが非常に紛らわしい理由は、Mac OS Xが、ネイティブ64ビットアプリを上で実行しながら(もちろん64ビットモードで)、ロングモードの互換モードでほとんどの32ビットカーネルを実行できる唯一のOSだからです。その結果、Mac OS X SnowLeopardには実際には3つのモードがあります。私のブログにそれについての記事があります: http://yuhongbao.blogspot.com/2009/09/mac-os-xs-64-bit-modes.html

0
Yuhong Bao

X86、x86-64、PowerPCのすべてにプラットフォームサポートがあります。すべての新しいMacはx64として出荷されます。

SnowLeopardはPowerPCのサポートを終了します。

X64で実行している場合は、はい、4GBを超えるRAMをアドレス指定できます。

64ビットであっても、64ビットおよび32ビットアプリケーションを正常に実行できます。

参照用にこのウィキペディアのページを参照してください

0
Brian R. Bondy