JVMの説明:
JVMは、Java仮想マシン(Javaのある仮想マシンの略称)、JVMは、様々なコンピュータ実現される機能の実際のコンピュータシミュレーション上を通過する架空のコンピュータであるコンピューティングデバイスのコードです。
Java言語は、非常に重要な特性は、プラットフォーム独立です。Java仮想マシンの使用は、この特性を達成するための鍵です。一般的な高レベルの言語は、異なるプラットフォーム上で実行したい場合は、少なくとも異なるにコンパイルする必要のあるオブジェクトコード。そして、Java仮想マシン語の導入後、Java言語は、ときに、異なるプラットフォーム上で実行するために再コンパイルする必要はありません。Java言語のように、特定のシールドのプラットフォームに関連付けられているJava言語情報を使用して、Java仮想マシンのコンパイラ単にオブジェクト・コードを生成する(Java仮想マシン上で実行されているバイトコードは)、複数のプラットフォーム上で変更することなく実行することができます。プラットフォーム固有のように実行されるJava仮想マシンのバイトコード、バイトコードインタプリタマシン命令を実行。これは「一度コンパイルどこでも実行」の理由をするためのJavaの能力です。
Javaソースコードのコンパイル
Javaの基本データ型
他の種類のデータ
JVM仮想マシンのメモリ構造
そのプログラムカウンタにJVM仮想マシンのメモリ、仮想マシン・スタック、ネイティブメソッドスタック、Javaヒープ、メソッド領域。
プログラムカウンタ:プライベートメモリ空間で比較的小さいです。メインレコードのコマンドが実行されます。
VMスタックは:スレッドプライベートメモリ空間であると同時に、主にローカル変数、部分的な結果、およびコールとリターンの参加方法を保存するために使用するJavaスレッドを作成します。(コンテキストデータを保存するために、仮想マシンの実行時のスタックのデータ構造の「スタックフレーム」と呼ばれるものを使用します。)
ネイティブメソッドスタック:コール管理機能Java用VMスタック、ローカル管理メソッドを呼び出すために使用されるネイティブメソッドスタック(メソッドがCで実装)
Javaヒープ:すべてのオブジェクトは、配列はヒープ領域に割り当てられます。
新世代、古い時代:ヒープが分かれています。
新世代:ちょうど生成されたヤング保存されたオブジェクトとオブジェクト。新生代のに分けられる:(オブジェクトが作成したばかりの場合)、e'den生存空間を()、1(GC少なくとも一度)。
メソッド領域(永久領域):JVM内のすべてのスレッド(メモリヒープのJavaの独立した)によって共有されます。クラスに記憶される主なメタデータ(クラスタイプ情報、定数プール、フィールド情報、メソッド情報:定義情報記憶定数等)。ときGC回復、唯一の永続的な定数プールエリア(参照されていない定数)を回復し、後でクラスのメタデータを回復する回復。
JVM Baiduの百科事典住所:https://baike.baidu.com/item/JVM/2902369?fr=aladdin