根据jvm规范,jvm的整体架构包含2个子系统和2个组件
两个子系统:
1.Class loader 类装载器子系统
2.Execution engine 执行引擎子系统
两个组件:
1.Runtime data area 运行时数据区
2.Native interface 本地接口
Class loader作用
根据给定的全限定名类名(如java.lang.Object)将class文件的内容装载到Runtime data area 中的method area(方法区)。Java 程序员可以继java.lang.ClassLoader 类来写自己的Class loader。
Execution engine作用
执行classes 中的指令。任何JVM specification 实现(JDK)的核心是Execution engine, 换句话说:Sun 的JDK 和IBM 的JDK 好坏主要取决于他们各自实现Execution engine 的好坏。每个运行中的线程都有一个Execution engine 的实例。
Native interface作用
与native libraries 交互,是其它编程语言交互的接口。
Runtime data area作用
jvm内存所在区域,主要包括五个部分:Heap (堆), Method Area(方法区域), Java Stack(java栈), Program Counter(程序计数器), Native method stack(本地方法栈)。Heap 和Method Area 是被所有线程的共享使用的;而Java Stack, Program Counter 和Native method stack 是以线程为粒度的,每个线程独自拥有。
分享到:
相关推荐
TL学院诸葛老师JVM架构师课程笔记TL学院诸葛老师JVM架构师课程笔记TL学院诸葛老师JVM架构师课程笔记TL学院诸葛老师JVM架构师课程笔记TL学院诸葛老师JVM架构师课程笔记TL学院诸葛老师JVM架构师课程笔记TL学院诸葛老师...
### 清晰的JVM架构解析 #### 一、引言 JVM(Java Virtual Machine,Java虚拟机)是运行Java程序的核心组件之一,它提供了一个独立于硬件平台的抽象计算模型,使得Java代码能够在任何支持JVM的操作系统上运行。本文...
在Java学习中,理解和调优JVM是基础中基础,核心的的核心,无理由不学好。一图胜千言,这张图化涵盖了JVM相关核心知识点,值得收藏。
1. **JVM架构**: - **类加载器**:负责加载.class文件,确保程序运行所需的类能够被找到并加载到内存中。 - **运行数据区**:包括堆、方法区、虚拟机栈、本地方法栈和程序计数器等几个部分。 - **堆**:存储对象...
1. **JVM架构**:JVM主要由类装载器、运行时数据区、执行引擎、本地方法接口和本地库组成。了解每个部分的功能对于优化程序性能至关重要。 2. **类装载机制**:包括加载、验证、准备、解析和初始化五个阶段,确保类...
同时,为了能更深入理解与之相关的知识点,本文特地编写了“第二章 基础知识”,详细的讲解与GC学习相关的JVM架构、JVM选项、Object内存布局、指针压缩等内容,以便读者能更加清晰的理解GC原理的底层逻辑。
#### 一、JVM架构概览 Java虚拟机(JVM)作为Java程序运行的基础环境,其内部结构复杂且高效。理解JVM的基础知识对于优化Java应用程序至关重要。JVM主要由以下几个关键部分组成: 1. **类加载器系统**:负责读取Java...
1. **JVM架构**:JVM包括类装载器、运行时数据区、执行引擎、本地方法接口和本地方法库等主要部分。了解这些组件的作用和交互方式是理解JVM工作流程的基础。 2. **内存模型**:JVM的内存分为堆内存(Heap)、栈内存...
1. **JVM架构**:JVM主要由类装载器、运行时数据区、执行引擎、本地方法接口和本地库组成。每个部分都有其特定的功能,共同确保Java程序的正常运行。 2. **类装载器**:负责加载类文件到JVM中,包括引导类装载器、...
### JVM架构组成 JVM的架构主要包括三个主要组成部分:类加载器子系统、执行引擎和本地接口。 #### 类加载器子系统 类加载器子系统负责加载Java类到JVM中。类加载过程包括加载、验证、准备、解析和初始化几个阶段...
1. JVM架构组成:JVM主要由类加载器(Class Loader)、运行时数据区(Runtime Data Area)、执行引擎(Execution Engine)以及本地接口(Native Interface)等部分组成。了解这些组件各自的作用和工作方式,是理解...
### JVM架构 JVM主要由以下几个组件构成: 1. **类装载器(ClassLoader)**:负责查找和加载类文件到JVM内存中。 2. **运行时数据区(Runtime Data Area)**:包括方法区、堆、虚拟机栈、本地方法栈和程序计数器。...
1. **JVM架构**:JVM由类加载器、运行时数据区、执行引擎、垃圾收集器和本地方法接口等组件构成。它们协同工作,使得Java应用程序能够顺利执行。 2. **类加载器**:负责加载类文件,解析并准备类的数据结构,确保类...
本文档是关于 Java 虚拟机(JVM)的深入分析,作者 Martin Toshev 通过分享 JVM 的架构、实现机理和调试技术,帮助读者更好地理解 JVM,并为其提供了实践经验。 虚拟机基础 虚拟机是指一种可以执行某种语言的字节...
JVM架构主要分为以下几个部分:堆内存、栈内存、方法区、程序计数器和本地方法栈。堆内存是所有线程共享的区域,主要用于存储对象实例。栈内存则与每个线程关联,用于存储基本类型和对象引用。方法区存放类的信息,...
#### 二、JVM架构与运行时数据区域 ##### 1. JVM架构概念图 JVM的架构可以分为以下几个部分: - **程序计数器(Program Counter Register)**:当前线程所执行的字节码的行号指示器。 - **虚拟机栈(Java Virtual ...
**1.2 JVM架构** JVM主要由以下几个部分组成: - **类加载器子系统**:负责将.class文件加载到内存中。 - **运行时数据区**:包括方法区、堆、栈等区域,用于存储程序运行时的数据。 - **执行引擎**:解释或编译字节...
1. **JVM架构**:JVM由类装载器、运行时数据区、执行引擎、本地方法接口和本地方法库组成。其中,类装载器负责加载.class文件,运行时数据区存储程序运行时的数据,执行引擎执行字节码,本地方法接口与操作系统交互...
1. **JVM架构** JVM分为几个主要区域:方法区、堆、栈、程序计数器和本地方法栈。理解这些区域的功能及其交互方式是优化的基础。例如,堆内存用于对象分配,栈存储方法调用,方法区存储类信息。 2. **垃圾收集** ...