Java Virtual MMachine は、Java バイトコード (.class ファイル) を受け取り、バイトコードを (行ごとに) 機械が理解できるコードに変換します。
JVM にはクラス ローダーと呼ばれるモジュールが含まれています。 JVM のクラス ローダーは、プログラムのロード、リンク、および初期化を担当します。それ:
クラスをメモリにロードします。
バイトコード命令を確認します。
プログラムにメモリを割り当てます。
JVM には次の 5 つのメモリ場所があります。
ヒープ -オブジェクト (参照型) に実行時ストレージを割り当てます。
スタック - ローカル変数と部分的な結果を保存します。スタックにはフレームが含まれており、各スレッドに 1 つのフレームが割り当てられます。スレッドが完了すると、フレームも破棄されます。また、メソッドの呼び出しと戻りにも役割を果たします。
PC レジスタ - プログラム カウンター レジスタには、JVM によって現在実行されている命令のアドレスが含まれます。
実行エンジン - 仮想プロセッサ、バイトコード命令を 1 つずつ解釈するインタプリタ、およびジャストインタイム コンパイラを備えています。
ネイティブ メソッド スタック - アプリケーションで使用されるすべてのネイティブ メソッドが含まれています。
以上がJavaでは、JVMによって何種類のメモリ領域が割り当てられますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。