【JVM】学习JVM的总纲
本文是开篇,不涉及技术层面的知识。
一、jvm是什么
1. 百度百科上的概念
JVM是Java Virtual Machine(Java虚拟机)的缩写,JVM是一种用于计算设备的规范,它是一个虚构出来的计算机,是通过在实际的计算机上仿真模拟各种计算机功能来实现的。
——百度百科
2.作用
- 实现一处编译到处运行
这是java语言能够一处编译到处运行的根本,一般不同操作系统都会对应一个jvm,我们只需要编写好java源代码,编译成class文件,就可以放到任意一种的操作系统上已经安装好的jvm中运行。
jvm在各种操作系统中的存在相当于一个进程,它的底层是调用操作系统的指令实现的。
- 执行class文件
jvm有自己完善的硬件架构,能够帮我们实现类加载,将class文件转换成操作系统的指令,优化class文件。
3.特性
- 移植性。上面也有讲到,就不重复了。
- 成熟性。Java,诞生于1995年,原属于SUM公司,在1996,JDK1.0正式发布,jvm就诞生了,时间越长成熟性就越高。
- 覆盖面。
4.jvm中的程序执行流程

二、JVM的五大模块
1.类装载器子系统
用来将.class文件装载到内存中

2.*运行时数据区
这个是我们应该了解的重点。
这一模块讲的是jvm在运行时,它所占据的内存结构

3.执行引擎
执行引擎是jvm核心组成部分之一,建立在物理器,硬件和操作系统层面之上,引擎在执行代码时会有解释执行和编译执行两种选择,输入字节码文件,字节码解析输出结果.
就是将.class文件转换为操作系统的指令。
4.本地方法接口
这里涉及到本地方法栈,本地方法库
5.*垃圾回收机制
GC策略/算法、GC分析、JVM调优等,这也是我们要学习的重点。
三、最后
以后关于【JVM】的文章都会围绕这五个模块来讲,争取精通JVM。
|你知道的越多,不知道的越多。 |如果本文章内容有问题,请直接评论或者私信我。如果觉得写的还不错的话,点个赞也是对我的支持哦。 |未经允许,不得转载!|微信搜【程序员徐小白】,关注即可第一时间阅读最新文章。回复【面试题】有我准备的50道高频校招面试题,以及各种学习资料。

浙公网安备 33010602011771号