zorkeAccount的博客

一个小白的成长日记

【JVM】JVM综述

    一、

    所谓JVM,即一种对操作系统和硬件平台进行抽象的软件,可以执行java字节码程序,通过将每一条java字节码指令翻译成不同平台机器码,达到在特定平台运行java字节码程序的目的。

    其中,java字节码即由java编译器编译java程序得到的二进制class文件程序!


    二、

    1、既然要执行class程序,那么JVM肯定首先需要的是读取这些class文件吧,也就是第一个点java类的加载机制,涉及到的点有:类生命周期、类加载器、类加载机制、双亲委派模型

   2、既然是读取了.class文件中的二进制数据,那么JVM总归是要提供内存空间去存储这些二进制数据吧,也就是第二个点JVM内存模型,涉及到的点有:程序计数器、java方法栈、本地方法栈、堆、方法区

   3、既然有内存存储二进制数据(方法区)和Class对象(堆),那么JVM肯定是需要对这些使用或未使用的内存空间进行管理的,也就是JVM垃圾回收机制,涉及到的点有:对象存活判断(引用计数法、可达性分析法)、垃圾收集算法(标记-清除算法、复制算法、标记-压缩算法、分代收集算法)、垃圾收集器

   4、既然涉及到对内存空间(方法区和堆)的管理,那么一定就有对相关内存空间参数大小的设置操作,也即所谓的jvm调优,涉及到的点有:相关监控和故障处理命令(jps jstat jmap jhat jstack jinfo)、相关监控调优工具(jconsole.exe、jvisualvm.exe,MAT(Memory Analyzer Tool)、GChisto)


   三、

    1、垃圾收集器执行垃圾回收频率什么样的一个范围算是正常,或者多什么样的频率算是过度频繁而需要调整堆空间大小的,或者说根据什么样的业务场景具体的例子呢?




阅读更多
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/zorkeAccount/article/details/80691433
文章标签: JVM java 面试
个人分类: java
想对作者说点什么? 我来说一句

JVM虚拟机图片

2018年01月03日 997KB 下载

JVM分析工具

2018年02月08日 57.93MB 下载

JVM 工作原理

2013年01月20日 1.33MB 下载

JVM思维导图

2017年08月07日 324KB 下载

jvm字节码自动加载

2018年02月07日 14.8MB 下载

深入解析jvm深入解析jvm

2011年05月31日 9.77MB 下载

JVM内存管理

2012年11月08日 894KB 下载

jvm 配置jvm参数

2011年09月01日 203KB 下载

炼数成金jvm

2017年09月09日 48B 下载

JVM Diagnostics Guide 1.4.2

2011年06月03日 1.97MB 下载

没有更多推荐了,返回首页

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭