虚拟机的组成:
所谓java能够实现跨平台,是因为在不同平台上运行不同的虚拟机所决定的,因此java文件的执行不直接在操作系统上执行,而是通过jvm虚拟机执行,我们可以从下面这张图中看到。JVM并没有直接与硬件打交道,而是通过与操作系统斤进行交互用以执行java程序
如下图所示:
JVM执行流程:
如图所示:
JVM的内从区域:
-
内存区域概述
对于c或者c++程序员来说,必须堆每个对象的整个生命周期负责。但是对于java程序员来说,在jvm的自动内存管理机下,不需要为每个对象去写delete或者free代码,不容易出现内存泄露或者内存溢出的问题,但是正因为java程序员将内存管理权力交给的内存管理机制,所以一旦出现内存泄露或者内存溢出的问题,在对jvm内存结构不清湖的情况下,排查错误将会成为一项非常复杂且困难的工作。
-
运行时数据区
以上内容是学习垃圾回收机制锁必须要了解的东西