32bit版Javaと64bit版Javaの相違点

はじめに

 「32bit版Javaと64bit版Javaって何か違うのかなー」と話題に上がるので違いを探し求めていたのですが、偶然参考になるページを発見したのでメモ。

参考になるページ

 以下のページが参考になります。


 内容をから察するにJDK5の時代に書かれたモノのようですので、その辺りは注意が必要かもしれません。

 ページはQA形式になっております。
 参考になるトピックは「64-bit Java」の所。
 見出しのみ引用すると以下の通り(日本語部分は参考のための訳。間違っていたらごめんなさい)。

  • What is 64-bit Java?
    64-bit Javaとは?

  • Which platforms and Java releases support 64-bit operation?
    どのプラットフォームとJavaリリースが、64-bit動作(Javaの64bit版)をサポートしている?

  • Where can I download the 64-bit SDK or JRE?
    どこで64-bit版のSDKまたはJREをダウンロードできますか?

  • When you download the SDK or JRE, must you choose between the 32 and 64-bit versions?
    SDKまたはJREをダウンロードする際に、32bitと64bitを選択する必要がありますか?

  • How do I select between 32 and 64-bit operation? What's the default?
    32bitで動作させるか、64bitで動作させるかをどう選択するのですか? デフォルトは何でしょうか。

  • Are both -client and -server VM modes available in 64-bit Java?
    「-client」と「-server」のVMモードは、64 bit版Javaで共に有効でしょうか?

  • Which components do not support 64-bit operation?
    どのコンポーネントが64bitでの動作をサポートしていない?

  • How is native code affected?
    ネイティブコードへの影響は?

  • When writing Java code, how do I distinguish between 32 and 64-bit operation?
    Javaコードを書くときに、どのように32 bitおよび64 bitの動作を区別するのですか?

  • Will 32-bit native code work with a 64-bit VMs?
    32 bitのネイティブコードは64 bitのVMと共に動作しますか?

  • Where can I learn more about 64-bit programming?
    64 bitのプログラミングについてどこで学ぶことができますか?

  • What are the performance characteristics of 64-bit versus 32-bit VMs?
    64 bitと32 bitのパフォーマンスにはどのような性質がありますか?

  • What are the default heap sizes for 64-bit VMs if GC ergonomics is not used?
    GCのエルゴノミクス*1が使われていない場合、64 bitのVMのデフォルトのヒープサイズは何ですか?

  • How large a heap can I create using a 64-bit VM?
    64 bit VMを使用して大きなヒープを作成する方法は?

  • Which garbage collector should I use for very large 64-bit heaps?
    非常に大きな64 bitのヒープを使用する際に、どのガベージコレクタを使うべきですか?

さいごに

 余談ですが、この参考ページにたどり着いたのはWikipediaの以下のページのおかげです。

 書いてくれた方に感謝を。

*1:そもそもGCのエルゴノミクスとは?という件については「Oracle Technology Network for Java Developers | Oracle Technology Network | Oracle」を参照