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 でより一般的) が含まれます。

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

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

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

推薦する

ロボットの役割とよくある問題について議論する

まず、ロボットの役割と用途について説明します。ロボットは、Web サイトと検索エンジン間の合意です。...

VSaaS を使用してビデオとアラームを管理するにはどうすればよいですか?

​組織が人々と財産の安全とセキュリティの向上を求めているため、ビデオ監視の需要は毎年増加し続けていま...

百度、3B事件に初めて反応:競争を歓迎し、悪質な侵害に反対

南方都市報記者謝睿、高玲雲、研修生欧景紅 百度と奇虎360の戦いが本格化した。1日後、双方は一時的に...

Shuren Cloud の Wang Pu: 3 つの主要な技術トレンドが PaaS の新たな変数を定義する

11月16日、中国オープンソースクラウドアライアンスWG6コンテナワーキンググループとShuren ...

主要なインターネットイベントに関する推測と雑談、そして2011年の概要

主要なインターネットイベントに関する推測と雑談、そして2011年の概要現在、インターネットは急速に発...

災害復旧のためにクラウドを導入する企業向けの 3 つのヒント

毎年多くの自然災害が発生しているため、多くの企業は自社の災害復旧方法が効果的かどうか、また自社の計画...

そもそもサイトのホームページが上位にないということは、順位が下がったということでしょうか?

ほとんどのウェブマスターは、サイトのホームページがそもそも存在しないと、ウェブサイトの権威が下がるの...

ホームファニシング電子商取引Qijia.comがオフラインで反撃:Oriental Homeの19店舗を買収

北京から記者の唐勲芳が報告します電子商取引はオフラインで「反撃」し始めた。 1月10日、本紙記者はQ...

タイトルの長さがSEOの結果に与える影響についての簡単な説明

タイトルの長さは SEO に影響しますか? 答えは、間違いなく「はい」です。しかし、長くすべきか短く...

分散ファイルサーバーをまだ手動で構築していますか?ワンステップでDockerイメージを試してみてください

[[270411]] FastDFS 分散ファイルサーバーについてこの記事をクリックした時点で、すで...

相手のウェブサイトの重みを5つの側面から分析する

1. 競合サイトのBaiduスナップショットの更新時間ウェブサイトの Baidu スナップショットの...

ウクライナ VPS: ukrdc、KVM 仮想化、無制限のトラフィック、苦情防止

ukrdc は 2009 年に設立されたウクライナのホスティング会社です。主な事業は VPS です。...

百度は再びスパム外部リンクの厳しい取り締まりを宣言、ウェブマスターは生き残りに苦戦

4月25日、百度幹部の李氏は再び外部リンクに関する声明を発表した。百度のアルゴリズム更新に伴い、百度...

大学マーケティングのための効果的なプロモーションチャネルを確立するにはどうすればよいでしょうか?

大学マーケティングは主に学生を対象としています。学校が比較的集中しており、学生の購買力が強いため、効...