美文网首页
【译】JVM Internals

【译】JVM Internals

作者: 小山包 | 来源:发表于2016-12-23 11:22 被阅读0次

原文 http://blog.jamesdbloom.com/JVMInternals.html#jvm_system_threads

这篇文章解释了JVM的内部架构。下面的这幅图表展示了一个Java SE 7标准下的典型JVM的关键组件们。


JVM内存模型

下面两个章节中会解释上图中的每个组件。第一个章节部分为线程相关的组件们,第二个章节为线程无关的组件们。

  • 线程相关
    • JVM系统线程(JVM System Threads)
    • 每个线程(Per Threads)
      • 程序计数器(program Counter)
      • 栈(Stack)
      • 本地栈(Native Stack)
      • Stack Restrictions
    • 栈帧(Frame)
      • 本地变量数组(Local Variable Array)
      • 操作数栈(Operand Stack)
      • 动态链接(Dynamic Linking)
  • 线程无关
    • 堆(Heap)
    • 内存管理(Memory Management)
    • 非堆内存(Non-Heap Memory)
    • JIT编译(Just In Time Compilation)
    • 方法区(Method Area)
    • class文件结构(Class File Structure)
    • 类加载器(Classloader)
    • 更快的类加载(Faster Class Loading)
    • 方法区在哪里(Where is Method Area)
    • 类加载器引用(Classloader Reference)
    • 运行时常量池(Run Time Constant Pool)
    • 异常表(Exception Table)
    • 符号表(Symbol Table)
    • 常量化字符串(字符串表)

线程相关

线程是程序里的一个执行单位,可以说是一个执行“原子”。JVM允许一个应用拥有多个线程同时执行。在HotSpot虚拟机中,Java线程和本地操作系统线程是一一对应的。在Java线程准备就绪后(thread-local存储,缓存分配,对象同步,栈同步,程序计数器同步),本地操作系统线程就会被创建。

相关文章

网友评论

      本文标题:【译】JVM Internals

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