美文网首页
JVM 部分知识点

JVM 部分知识点

作者: 呼语 | 来源:发表于2020-06-14 13:49 被阅读0次

1. JVM 分区

方法区 堆
方法栈 本地方法栈 程序计数器
直接内存
类加载子系统 执行引擎

2. java 程序执行过程

源文件 编译器 字节码 JVM解释器 机器码

3. JVM的线程

一个程序对应一个虚拟机
一个jva线程 对应一个操作系统原生线程

4. 内存区域

程序计数器: 指示当前执行的字节码行号 。native方法则为空。
方法栈 :描述java方法执行的内存模型。每个方法执行都有一个栈帧。栈帧:局部变量表、操作栈、动态链接、放回地址。
本地方法栈
为native原生方法作支撑。

对象和数组存储的地方。GC主要的工作对象。

堆的图示
  • eden区 对象创建区域
  • from区 上一次GC的幸存者。
  • to区 与分区GC作配合。保留minorGC过程的幸存者。
  • minorGC过程
    复制 、edge+1 、清空 、 调换 。
    当edge == 15 时 ,转老年代。(较大对象直接转老年代)
  • 老年代
    MajorGC 标记清除算法。不会频繁执行。

方法区
java 7 永久代: 用于存储被 JVM 加载的类信息、常量、静 态变量、即时编译器编译后的代码等数据.
java 8 元空间: 不在虚拟机中,使用本地内存。常量池和类的静态变量放入java堆。
GC主要作类型卸载。

5. JVM GC算法

  • 确定可回收算法
    • 引用计数法 :存在循环引用的问题。
    • 可达性分析 : DFS GC root
      两次不可达变成可回收
  • 清除算法
    • 标记清除算法 : 内存碎片
    • 复制算法 : 使用内存压缩一半;存活对象多可能降低效率。
    • 标记整理算法:将存货对象移到另一端,覆盖回收对象。并清除边界外对象
  • 分代收集算法

6. java中的四种引用类型

  • 强引用 GC不回收
  • 弱引用 GC在内存不足时回收
  • 软引用 GC不管其内存是否足。都回收。
  • 虚引用。主要跟踪对象被垃圾回收的状态。

7. 几种 GC 回收器

相关文章

  • JVM 部分知识点

    1. JVM 分区 方法区 堆方法栈 本地方法栈 程序计数器直接内存类加载子系统 执行引擎 2. java 程序...

  • 阿里P8架构师指出的26个必备的知识点,你get到了吗?

    这份PDF面经知识点包括了五个大部分,26个知识点: Java部分:Java基础,集合,并发,多线程,JVM,设计...

  • JVM基础知识系列

    JVM基础系列 JVM知识点扫盲系列(1) JVM知识点扫盲系列(2) JVM内存的那些事 JVM类加载的那些事 ...

  • JVM 详解(JVM 内存模型、JMM 内存可见性、类加载机制、

    JVM 知识点汇总 首先看看 JVM 的知识点汇总。 如上图所示,JVM 知识点有 6 个大方向,其中,内存模型、...

  • jvm

    jvm知识点总结

  • 技术文章罗列

    JVM JVM知识点详解JVM初步诊断JVM内存模型 Java Api java8 stream Api讲解(上)...

  • 初识JVM

    为猿不识JVM,侃称大神也枉然。 最近利用晚上时间学习了JVM相关知识,还未真正深入。以脑图形式记录了部分知识点,...

  • java知识点

    66主要包括以下几个部分: Java 基础知识点 Java 常见集合 高并发编程(JUC 包) JVM 内存管理 ...

  • chapter-1 初识JVM

    本章知识点 1.JVM的概念2.JVM发展历史3.JVM种类4.Java语言规范5.JVM规范 初识JVM - J...

  • JVM虚拟机

    继续做知识点铺垫。 我这里再简单梳理下虚拟机相关知识点,当然只是热修复与插件化会涉及到的部分。 一、JVM整体结构...

网友评论

      本文标题:JVM 部分知识点

      本文链接:https://www.haomeiwen.com/subject/qsxxxktx.html