浅谈JVM
Posted xlhlx
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了浅谈JVM相关的知识,希望对你有一定的参考价值。
1:JVM 整体组成
--》@1.类加载器(ClassLoader)
@2.运行时数据区(Runtime Data Area)
@3.执行引擎(Exection Engine)
@4.本地库接口(Native Interface)
2:各个组成部分的用途
--》程序在执行之前先要把java代码转换成字节码(class文件),JVM首先需要把字节码通过一定的方式 类加载器(ClassLoader) 把文件加载到内存中 运行时数据区 (Runtime Data Area),而字节码文件时JVM的一套指令集规范,并不能直接交给底层操作系统去执行,因此需要特定的命令解析器 执行引擎 (Execution Engine)将字节码翻译成底层系统指令再交由CPU去执行,而这个过程需要调用其它的语言接口 本地库接口(Native Interface)来实现整个程序的功能,
3:运行数据区组成
--》我们通常所说的JVM组成指的是运行数据区
运行数据区又有5部分组成:
1:程序计数器 2:java虚拟机栈 3:本地方法栈 4:Java堆 5:方法区
程序计数器和Java虚拟机栈是内存私有
Java堆是虚拟机中内存最大的一块 被所有线程共享 (内存共享)
方法区不等于永生代(内存共享)
4:扩展 运行时常量池 直接内存
以上是关于浅谈JVM的主要内容,如果未能解决你的问题,请参考以下文章