浅谈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的主要内容,如果未能解决你的问题,请参考以下文章

浅谈JVM

jvm 原理浅谈

浅谈jvm

浅谈JVM:类加载机制

浅谈JVM及原理

浅谈JVM及原理