JVM メモリ領域構造: 1 つのアカウント、2 つのスタック、1 つのパイル、1 つの領域

JVM メモリ領域構造: 1 つのアカウント、2 つのスタック、1 つのパイル、1 つの領域

[[320318]]

1 プログラムカウンタ

  • 小さなメモリスペース。
  • 現在のスレッドによって実行されたバイトコードの行番号を示すインジケーター。

2 仮想マシンスタック

これは、Java メソッド実行のスレッド メモリ モデルについて説明します。各メソッドが実行されると、Java 仮想マシンは同期的にスタック (StackFrame) を作成し、ローカル変数テーブル、オペランド スタック、動的接続、メソッド終了などの情報を格納します。各メソッドが呼び出されてから実行されるまでのプロセスは、スタック フレームが仮想マシン スタックにプッシュされてからスタックからポップされるまでのプロセスに対応します。

ローカル変数テーブル(ストレージ)

  • 基本的なデータ型
  • オブジェクト参照
  • returnAddress型(バイトコード命令のアドレスを指す)

異常な

StackOverflowError: スレッドによって要求されたスタックの深さが、仮想マシンで許可されている深さを超えています

OutOfMemoryError: スタックを拡張するときに十分なメモリを取得できません

3 ネイティブメソッドスタック

仮想マシンで使用されるネイティブ メソッド サービス。

4 Javaヒープメモリ回復の観点

新世代、旧世代、永久世代、エデン空間、サバイバー空間から、サバイバー空間へ。

メモリ割り当ての観点

すべてのスレッドで共有される Java ヒープは、複数のスレッド専用の割り当てバッファ (スレッド ローカル割り当てバッファ、TLAB) に分割できます。

異常な

OutOfMemoryError: インスタンスの割り当てを完了するためのメモリがないため、ヒープを拡張できなくなりました。

5 方法領域

  • すべてのスレッドで共有されるメモリ領域
  • 仮想マシンによってロードされたジャストインタイムコンパイラによってコンパイルされた型情報、定数、静的変数、コードキャッシュなどのデータを格納するために使用されます。
  • JDK8は永続的な世代を放棄し、それに応じてMetaSpaceを使用する。

異常な

OutOfMemoryError: 新しいメモリ割り当て要件を満たすことができない場合

6ランタイム定数プール

  • 方法領域の一部
  • コンパイル中に生成されたさまざまなリテラルとシンボル参照を格納するために使用されます。この部分のコンテンツは、クラスがロードされた後にメソッド領域の実行時定数プールに保存されます。

異常な

OutOfMemoryError: 定数プールがメモリに適用できなくなったとき

7 直接記憶

VMランタイムデータ領域の一部ではない

ネイティブ ダイレクト メモリの割り当ては、Java ヒープ サイズによって制限されません。

要約:

JVM メモリ領域構造には、プログラム カウンター、仮想マシン スタック、ネイティブ メソッド スタック、Java ヒープ、メソッド領域が含まれます。 1 つの計画、2 つのスタック、1 つの山、1 つの領域と単純に覚えることができ、覚えやすいです。

メソッド領域には、ランタイム定数プールと直接メモリ (NIO でより一般的) が含まれます。

よりしっかりと把握するためには、各領域の主な機能を理解する必要があります。

<<:  エッジコンピューティング市場は、モノのインターネット時代において大きな可能性を秘めている

>>:  クラウド コンピューティングはビジネスにどのようなメリットをもたらしますか?

推薦する

バックリンクについて考える

ウェブサイトのプロモーションと最適化を行う際に、非常に重要なパラメータとなるのが外部リンク(バックリ...

高品質なリンクに関する考えと方向性

私たちの業界では、毎日一つのことを強調しています。それは外部リンクです。外部リンクの重要性については...

raksmart: 「香港\日本\米国 cn2」指定シリーズ VPS が 50% オフ、トラフィック無制限の全 VPS が 20% オフ

Raksmart は今月、大規模な VPS プロモーションを開催しています。1G メモリと無制限トラ...

VMWare を使用してランダム トポロジ ネットワークを構築する方法

[[204017]]この記事は、コンピュータ ネットワーク ラボ クラスの課題です。実験タスク: V...

パブリッククラウドを導入して企業がコストを削減できる6つの方法

クラウドへの移行は、特に大幅な更新やメンテナンスが必要な場合、特定の領域で実際にビジネス費用を増加さ...

Huayun Data、2019年デジタル金融イノベーションフォーラムで金融クラウドソリューションを展示

2019年5月9日、広東・香港・マカオ協力促進協会金融専門委員会が主催する2019年デジタル金融イノ...

IoTの成長が牽引するエッジコンピューティングの4つの垂直アプリケーション

データは今日の経済の生命線であり、あらゆる業界の企業が顧客に優れた、よりパーソナライズされたエクスペ...

ウェブサイトが衰退の鎖から抜け出すために、ウェブサイトの基盤構築に努める(パート1)

インターネット技術の継続的な成長により、ウェブサイトの構築はコップ一杯の水を飲むのと同じくらい簡単に...

Rfchost-US DCS コンピュータ ルーム/CN2/Xen/ネットワーク爆発/簡易テスト

今日は役に立つ情報がないのでどうやって更新するか悩んでいたので、Cyyzaid の VPS (rfc...

テンセント(ホストセキュリティ)がガートナーの「クラウドワークロード保護プラットフォーム市場ガイド」レポートに掲載されました

最近、世界的に権威のある情報技術調査およびコンサルティング会社であるガートナーは、2021 年の「ク...

クラウドネイティブデスクトップ: 仮想デスクトップの解体と再定義

デスクトップクラウドの進化と、世代から世代へと受け継がれてきたさまざまなデスクトップ管理技術は、「デ...

レンレンダイ金融管理は資金を集めるために「危険を冒す」:中国でのP2Pの生き残り

鄧賢26分で1000万元を調達! P2P企業である株式会社Renrendaiビジネスコンサルティング...

Discuz! X2.5 ベータ版がリリースされ、ウェブマスターが体験およびテストできるようになりました

今日のニュースは、主にウェブマスターがダウンロードして新しいバージョンの機能を体験できるように、Di...

VM ストレージ ポリシーは vSAN クラスタの冗長性をどのように向上させますか?

[[216237]] FTT は、可用性を犠牲にすることなく vSAN クラスタで発生できる障害の数...