jvm是java Virtual Machine的简称,意为java虚拟机。
虚拟机:通过软件模拟的具有完整硬件系统功能的,运行在一个完全隔离环境中的完整计算机系。jvm使用软件模拟java字节码的指令集。
jvm的内存区域:
1.线程独占区和线程共享区:我们知道每一个程序一般都是多个线程同时运行的,为了线程更加安全的进行,每个线程都有自己的私密数据,不能供别的线程使用,有些数据要提供给其他线程以便于完成线程之间的相互通讯。
2.方法区:存储运行时常量池;被编译后的代码等数据。
3.java堆:存储对象的实类信息等。
4.虚拟机栈:存储方法运行时需要的数据,栈帧等。功能:为程序调用java方法.
5.本地方法栈:为程序调用本地方法。
6.程序计数器:记录当前线程所执行的字节码的行号。
上述仅为最基本常识,详细内容做了以下分类:
JVM之虚拟机栈:https://blog.csdn.net/akyj1021/article/details/84960715