每日一題 - JVM內存區域是如何劃分的?

隨着Java版本的不斷更新迭代,目前最新版是 Java13,在Java8及之後的版本,徹底移除了持久代(Permanent Generation),而使用Metaspace來進行替代。但是大體上,比較重要的內存區域是固定的。

JVM內存區域劃分如圖所示,從圖中可以看出:

1. JVM堆中的數據是共享的,是佔用內存最大的一塊區域。我們常說的垃圾回收,操作的對象就是堆。
2. 可以執行字節碼的模塊叫作執行引擎。
3. 執行引擎在線切換時怎麼恢復?依靠的就是程序計數器。
4. JVM的內存劃分與多線程是息息相關的。像我們程序中運行時用到的棧,以及本地方法棧,它們的維度都是線程。
5. 本地內存包含元數據區和一些直接內存。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章