Java仮想マシン・テクノロジ
JDKは、1つ以上のJava仮想マシン(VM)実装を提供します。
- クライアント・アプリケーション用によく使用されるプラットフォームでは、Java HotSpot Client VM (クライアントVM)と呼ばれるVM実装にJDKが付属しています。クライアントVMは起動時間を短縮し、メモリー・サイズを縮小するように調整されています。これを起動するには、アプリケーションの起動時に
-client
コマンド行オプションを使用します。
- すべてのプラットフォームで、JDKがJava HotSpot Server VM (サーバーVM)と呼ばれるJava仮想マシン(VM)実装に付属しています。サーバーVMはプログラム実行速度が最大になるように設計されています。アプリケーションの起動時に
-server
コマンド行オプションを使用することで呼び出すことができます。
両方のVM実装に共通するJava HotSpotテクノロジの機能の一部を次に示します。
- 適応型コンパイラ - アプリケーションは標準インタプリタで起動しますが、コードは実行時に解析してパフォーマンス・ボトルネック、つまり「ホット・スポット」を検出します。Java HotSpot VMは、パフォーマンスを向上させるため、コードのこのようなパフォーマンス-クリティカルな部分をコンパイルしますが、ほとんど使われないコード(プログラムの大部分)を不必要にコンパイルすることはありません。また、Java HotSpot VMは、適応型コンパイラを使って、インライン化などのテクニックで、コンパイルしたコードを最適化するための最善の方法をオン・ザ・フライで判断します。コンパイラが実行時解析を行うので、どの最適化最大のパフォーマンス利点を生み出すかを推測で判断しなくて済みます。
- 高速メモリー割り当てとガベージ・コレクション - Java HotSpotテクノロジは、オブジェクトの高速メモリー割り当てを提供し、高速、効率的、最先端のガベージ・コレクタの選択肢を提供します。
- スレッド同期 - Javaプログラミング言語は、プログラム実行の複数同時パス(「スレッド」と呼ばれる)の使用に対応します。Java HotSpotテクノロジは、大規模なメモリー共有マルチプロセッサ・サーバーで使用するために拡張できるように設計された、スレッド処理機能を提供します。
ツール
拡張機能
詳細情報