`
liuwenjie517333
  • 浏览: 25989 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

jvm 体系概述

    博客分类:
  • jvm
jvm 
阅读更多

JVM 大概体系

 

JVM大概体系(从csdn上找的一幅图)

 

 

                    

 

从上图可以看出,JVM由四大块组成:ClassLoader类加载器,jvm内存区,执行引擎,本地方法栈

 

1、ClassLoader:类加载器,主要负责查找,加载,解析 .class文件到jvm内存区,以供jvm执行引擎执行加载的字节码。

 

2、jvm内存区:主要包括堆,方法区,本地线程栈,native方法栈,PC (程序计数器)JVM中所有内存相关问题都集中在这块

 

  • 方法区:主要是存储classLoader加载的类的信息,方法的信息,常量池中的信息

 

  • 堆: 堆里面存的都是通过new 关键字修饰的对象内存信息,比如new ObjectAObjectA运行的内存就在堆中
  •  虚拟机栈:java中都是以线程方式执行代码,线程在执行代码的时,也需要一部分内存,这部分内存只有执行的线程所拥有。虚拟机栈里主要是存储java方法栈里的信息,比如方法里的局部变量表,操作数栈,方法出口等信息。
  •  Native方法栈:jvm中有java编写的方法,也有底层native方法,native方法栈就是native方法执行时的内存信息。
  • PC (程序计数器):记录当前线程执行 虚拟机字节码指令的地址,为给个线程所私有。虚拟机在执行字节码时,通过改变PC的值来选择下一条需要执行的字节码指令。
  •  直接内存:直接内存不受JVM管理,使用native函数库直接分配内存,然后通过DirectByteBuffer对象作为这块内存的引用进行操作。

                         

3、jvm执行引擎:  .class文件被ClassLoader加载到内存中,变成了JVM可解释的代码,这些代码需要执行才能完成各种业务,这个时候执行这些代码的模块就是jvm执行引擎了。主要是把可解释的代码,解释为操作系统机器码。

 

 

4、natevie interface: 本地接口,主要是不同语言实现的方法,提供给java调用。原本多用于一些专业领域,比如JAVA驱动,地图制作引擎,现在关于本地方法的调用,已经被类似的Socket通信,WebService调用等方式取代了。

参考资料:

http://blog.csdn.net/mshootingstar/article/details/44783227

《深入理解java 虚拟机》

      http://docs.oracle.com/javase/specs/

  • 大小: 34.7 KB
分享到:
评论

相关推荐

    JVM体系结构与GC调优

    **JVM体系结构与GC调优** Java虚拟机(JVM)是Java应用程序的核心组成部分,它为Java程序提供了一个运行时环境。理解JVM的体系结构对于优化Java应用的性能至关重要,尤其是垃圾收集(Garbage Collection, GC)的...

    46页+JVM体系结构与GC调优.pptx

    JVM体系结构与GC调优,46页+PPT,包括JVM体系结构概述、GC算法介绍、内存管理、垃圾回收、调优方法和监控工具

    java垃圾回收以及jvm参数调优概述

    Java技术体系中所提倡的自动内存管理最终可以归结为自动化地解决了两个问题:给对象分配内存以及回收分配给对象的内存。而且这两个问题针对的内存区域就是Java内存模型中的堆。垃圾回收机制的引入可以有效的防止内存...

    JVM笔记.docx

    【JVM 体系结构概述】 Java 虚拟机(JVM)是Java应用程序的核心,它作为操作系统上的一个抽象层,使得Java代码可以在任何支持JVM的平台上运行,无需关心底层系统的具体细节。JVM主要由以下几个部分构成: 1. 类...

    jvm原理及调优

    #### 一、JVM概述 JVM(Java Virtual Machine,Java虚拟机)是Java编程语言的基础,它作为一种软件层面的抽象计算机,能够在多种操作系统平台上执行Java字节码程序。Java编译器的目标是生成能够被JVM理解的字节码...

    jvm 启动过程

    #### 一、Java虚拟机(JVM)概述 ##### 1. 为什么使用Java虚拟机? Java虚拟机(JVM)是Java语言能够在多种平台上无缝运行的关键所在。它通过抽象出一个统一的计算环境,使得Java程序无需针对不同平台进行额外的...

    深入JVM整理文档

    ### 深入理解JVM:Java虚拟机详解 ...以上概述了Java虚拟机(JVM)的基本概念及其关键组成部分,有助于深入理解Java程序是如何被加载、执行和管理的。这对于开发高效稳定的Java应用程序至关重要。

    Java虚拟机(JVM)概述

    JVM可以解读指令代码并与底层进行交互:包括操作系统平台和执行指令并管理资源的硬件体系结构。从本质上讲,虚拟机是个被构建来提供特定或通用目的服务环境的非实体计算机。这听起来像是一个仿真器,用来仿真机器未...

    JAVA文件编译执行与虚拟机(JVM)介绍

    5. **JVM指令集体系结构**:包括JVM指令集的基本概念、指令集与不同CPU架构的关系,以及JVM指令集的组成结构。 #### JAVA文件的编译与执行过程详解 JAVA程序的执行过程主要分为三个阶段:源代码的编写、编译成字节...

    jvm 加载class文件

    #### 一、Java与JVM中的Class文件加载机制概述 Java作为一种动态性极强的解释型编程语言,在程序运行时,Java虚拟机(JVM)负责将编译生成的`.class`文件加载到内存中进行执行。在Java环境中,每个类(Class)以及...

    java体系概述

    Java体系概述 Java是一种广泛使用的面向对象的编程语言,由Sun Microsystems(现为Oracle Corporation的一部分)于1995年发布。它的设计目标是“一次编写,到处运行”(Write Once, Run Anywhere),这意味着Java...

    深入JVM内核—原理、诊断与优化视频教程

    ##### 1.2 JVM体系结构 JVM主要由以下几个部分组成: - **类加载器子系统**:负责将字节码文件加载到内存中。 - **执行引擎**:解释或编译字节码并执行。 - **本地接口**:允许Java代码调用本地方法或访问本地库。 -...

    个人总结之—JVM性能调优实战

    #### 概述 本文档是一篇关于JVM(Java虚拟机)性能调优的经典实战总结。在实际应用开发与维护过程中,JVM性能调优是一个非常重要的话题,它直接关系到应用程序运行效率、资源利用以及用户体验等多方面因素。本总结...

    Java企业应用开发核心知识体系概述

    本篇将基于“Java HotSpot内存管理技术白皮书”来探讨相关的核心知识体系。 首先,Java HotSpot虚拟机(JVM)是Oracle公司开发的一款高性能的Java运行时环境。它通过对Java字节码进行即时编译(JIT),实现了高效的...

    深入理解JVM内存结构及运行原理全套视频加资料.txt

    JVM是Java知识体系中的重要部分,对JVM底层的了解是每一位Java程序员深入Java技术领域的重要因素。本课程试图通过简单易懂的方式,系统的深入讲解JVM相关知识。包括JVM执行过程、虚拟机类加载机制、运行时数据区、GC...

    深入理解Java虚拟机视频教程(jvm性能调优+内存模型+虚拟机原理)视频教程

    第9节Java技术体系00:08:46分钟 | 第10节jdk8的新特性00:07:31分钟 | 第11节lanmbda表达式简介00:07:02分钟 | 第12节Java虚拟机-classic vm00:06:06分钟 | 第13节Java虚拟机-ExactVM00:03:35分钟 | 第14节Java...

    2020-review-7-jvm.pptx

    #### 一、概述 Java 虚拟机 (JVM) 是 Java 技术的核心组成部分之一,它为 Java 程序提供了运行环境。本篇文章将根据给定的信息“2020-review-7-jvm.pptx”中提到的“JVM内部原理”,对JVM的关键组成部分进行详细的...

    IBM SDK, Java Technology Edition, Version 5.0 IBM Java JVM诊断指南

    - **内存管理概述**:解释了JVM如何处理内存分配和释放。 - **对象分配**:探讨了JVM如何分配内存空间来存储新创建的对象。 - **可达性分析**:描述了如何确定哪些对象仍然是活跃的并需要保留内存。 - **垃圾收集**...

Global site tag (gtag.js) - Google Analytics