深度剖析JVM内存结构,由内核出发,彻底吃透JVM底层原理

本文详细介绍了JVM的内存结构,包括java代码的编译执行过程、JVM简介、体系结构和内存结构。重点讨论了JVM如何加载类,执行字节码,以及JVM内存的各个区域,如程序计数器、本地方法栈、方法区、栈和堆。同时,提到了JVM在不同版本中方法区的变化,以及直接内存的概念。通过对JVM内存的深入理解,有助于优化Java程序的性能。
摘要由CSDN通过智能技术生成

一、java代码编译执行过程

  1.源码编译:通过Java源码编译器将Java代码编译成JVM字节码(.class文件)

  2.类加载:通过ClassLoader及其子类来完成JVM的类加载

  3.类执行:字节码被装入内存,进入JVM虚拟机,被解释器解释执行

深度剖析JVM内存结构,由内核出发,彻底吃透JVM底层原理

 

  注:Java平台由Java虚拟机和Java应用程序接口搭建,Java语言则是进入这个平台的通道,

     用Java语言编写并编译的程序可以运行在这个平台上

二、JVM简介

1.java程序经过一次编译之后,将java代码编译为字节码也就是class文件,然后在不同的操作系统上依靠不同的java虚拟机进行解释,最后再转换为不同平台的机器码,最终得到执行

2.Java虚拟机(JVM) 处在核心的位置,是程序与底层操作系统、硬件无关的关键。

   JVM的下方是移植接口,移植接口由两部分组成:适配器和Java操作系统, 其中依赖于平台的部分称为适配器,JVM 通过移植接口在具体的平台和操作系统上实现

   JVM 的上方是Java的基本类库和扩展类库以及它们的API, 利用Java API编写的应用程序(application) 和小程序(Java applet) 可以在任何Java平台上运行而无需考虑底层平台

   Java虚拟机(JVM)实现了程序与操作系统的分离,从而实现了Java 的跨平台

深度剖析JVM内存结构,由内核出发,彻底吃透JVM底层原理

 

深度剖析JVM内存结构,由内核出发,彻底吃透JVM底层原理

 

3.JVM在它的生存周期中有一个明确的任务,那就是运行Java程序,因此当Java程序启动的时候,就产生JVM的一个实例;当程序运行结束的时候,该实例也跟着消失了

4.三种JVM:① Sun公司的HotSpot ② BEA公司的JRockit ③ IBM公司的J9 JVM

<
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值