Jvm
2024-12-12 16:04:04   0  举报             
     
         
 jvm运行,以及解析
    作者其他创作
 大纲/内容
 即时编译器编译后的代码
  异常处理
  类结构信息
  class文件
  本地库接口
  清理和返回
  静态变量
  局部变量表
  探测器
  内存区域
  本地方法库
  中间带生成器
  Jvm线程1. 类加载器:2. 内存区域分配:元空间、堆、虚拟机栈、本地方法栈3. 方法执行与内存管理:    方法:虚拟机栈、本地方法栈    内存:堆,新生区、老年区、元空间4. 请求流程:类加载 -> 加载本地库 -> 方法调用 -> 参数传递和返回结果 -> 对象分配 -> 垃圾回收 -> 异常处理;
  代码优化器
  堆Heap
  加载本地库
  目标代码生成器
  当前栈帧
  轻GCMinor GC
  伊甸园(Eden Space)
  元空间(永久存储区,方法区)
  方法出口
  运行时常量池
  jvm运行顺序1. 类加载器将 .class文件加载到方法区2. 初始化静态变量和静态代码块3. 当以现场开始执行某个方法时,会在虚拟机中创建一个新的栈帧4. 栈帧中的局部变量表初始化为方法的参数和局部变量5. 按照字节码逐步执行方法体内的逻辑6. 如果遇到对象创建指令(如 new),则在堆中分配内存并初始化对象7. 对于本地方法调用,切换到本地方法栈进行处理8. 定期检查堆中的对象是否可以回收9. 使用标记-清楚、复制、整理等算法释放不再使用的对象所占用的内存
  幸存区 0 区
  类的加载信息
  执行引擎
  类加载器
  垃圾回收器
  其他元数据
  字段和方法数据
  重GC Full GC
  调用本地方法
  本地方法栈Native Method Stack
  动态链接
  老年代(old generation)
  栈帧N
  JIT编译器
  参数传递和返回结果
  虚拟机栈VM Stack
  程序计数器Program Counter Register
  幸存区 1 区
  操作数栈
  interpreter (解释器)
  新生区
   
 
 
 
 
  0 条评论
 下一页
  
   
   
   
   
  
  
  
  
  
  
  
  
 