JVM(一):基本知识
基本知识:
JVM作用:解析class文件成计算机能识别的命令。
查看个人pc中的JVM:
hotspot VM:热点探测(JDK1.5以上的版本),
JIT:频繁使用的文件,编译之后,会缓存到内存中,以提高速度。
java Hotspot server vm:服务器端线程数一般比较大,故jvm中配置的内存更大。(为服务器环境最大化执行速度而设计)
java Hotspot client vm:为桌面级应用服务的JVM,比如swing,而且JVM中配置的内存相对较小。(减少启动时间而设计)
JVM基本结构
程序计数器:线程需要获取JVM时间段间断执行,程序计数器用于记录现在执行到哪里了
堆:存放对象实例和数组,GC回收的地方,各个线程共享内存。
方法区:存放.class文件加载进来的类信息,如类名称、方法、变量等,各个线程共享内存
虚拟机栈:每个线程会创建一个虚拟机栈,故虚拟机栈是线程独有的
存放基本数据类型、对象的引用,每个虚拟机栈保存众多栈帧,每个栈帧对应一次方法调用。
本地方法栈: 和虚拟机栈功能类似,只是多了native,调其他语言用。
参考:https://blog.csdn.net/qq_41701956/article/details/100074023