欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

关于Jvm的见解(一)

程序员文章站 2022-05-07 10:19:00
Jvm组成结构 硬件体系(如Intel体系、spac等)——>操作系统(如Windows、Linux等)——>Java Virtual Machine 所以虚拟机与硬件系统并没有直接的交互。 Class Loader类加载器: 负责加载类文件,是否可以运行由执行引擎决定。 Native Interf ......

jvm组成结构

  硬件体系(如intel体系、spac等)——>操作系统(如windows、linux等)——>java virtual machine  所以虚拟机与硬件系统并没有直接的交互。

  关于Jvm的见解(一)

  class loader类加载器:

    负责加载类文件,是否可以运行由执行引擎决定。

  native interface:

    本地接口的作用:融合不同的编程语言为java所用,如c/c++程序,并且在内存中专门开辟了一块内存空间用来处理标记为native的代码。

    目前,使用较少,除非和硬件打交道,如java驱动打印机。

  method area:

    被所有线程共享,所有的字段和方法字节码,以及一些特殊方法,如构造方法,接口也在此定义。简单说,所有的定义的方法的信息都保存在该区域,此区间属于共享区域。

  pc register:

   每个线程都有一个计数器,就是一个指针,指向方法区中的方法字节码,由执行引擎读取下一条指令,占得内存极小,几乎可以忽略不计。

  native method stack 本地方法栈

  具体做法是先登记,在执行时,加载native libraies。

  优化问题:在共享区域优化,其他区域不优化。 99%优化的是堆,1%优化的是方法区区。