博客
关于我
JVM 学习笔记一、JVM与Java体系结构
阅读量:623 次
发布时间:2019-03-12

本文共 1155 字,大约阅读时间需要 3 分钟。

JVM与Java体系结构

汇编语言、机器语言、高级语言关系

汇编语言是机器语言的中间层,它们通过interpreters(解释器)将高级语言代码转换为机器指令。Java作为一个高度抽象的高级语言,其特性使其能够脱离特定的机器指令体系,依赖Java虚拟机(JVM)来执行其语伤。

Java 的特性

Java的跨平台特性确保了它在任何运行环境中都能运行。这一特性得到了进一步的拓展,Java不再局限于自己的语言环境,通过JSR-292规范,其虚拟机会支持非Java语言编写的程序运行。

Java的自动垃圾回收和内存管理机制为开发者大幅度减轻了内存管理的负担,这也是Java程序能够在较大的堆空间中高效运行的重要原因。

Java代码执行过程详图

JAVA程序通过编译器转换为字节码文件,其执行则依赖于Java虚拟机。 java文件经过转换成字节码后,JVM将其解码并执行,具体过程可通过以下步骤理解:

  • 字节码文件被JVM加载到方法区中。
  • J mlx解码器将字节码转换为本地机器指令。
  • 指令由底层处理单元执行。
  • 虚拟机

    虚拟机可以分为两种类型:system virtualization和program virtualization。

    • System virtualization: 类似于VMware,提供对整个计算环境的仿真。
    • Program virtualization: 专注于运行单一程序,JVM负责Java字节码的解释与执行。

    JVM的主要目标是为Java程序提供标准化的运行环境,通过统一的指令集实现跨平台性。

    JVM的架构模型

    JVM的架构决定了其实现方式,主要包括指令系统和栈式结构。

  • 指令系统: JVM指令采用零地址格式,操作数是栈顶元素,从而简化了内存管理。
  • 栈式架构: 虚拟机栈的形式实现指令效率较低,但更适合移植性。
  • 寄存器架构: 采用一地址指令,提升执行效率,但难以跨平台。
  • JVM反编译

    javap工具可以用于反汇编Java字节码,提供关于方法和变量的详细信息。用户可通过以下命令进行操作:

    • -c选项反向汇编字节码。
    • -v选项提供附加信息。
    • -l选项显示本地变量表和行号信息。
    • -p选项展示类和成员信息。

    JVM的生命周期

  • 启动阶段: 类加载器创建初始类,线程执行初始化方法,类初始化完成后,项目开始正常运行。
  • 执行阶段: 按照字节码指令执行,线程处理异常时可能终止或暂停。
  • 退出阶段: 通过不同的方式终止,包括程序结束、错误或系统命令。
  • JVM整体架构

    JVM主要包含以下组成部分:

  • 类加载子系统: 负责加载字节码到方法区。
  • 执行引擎: 解码字节码并执行。
  • 本地接口: 与外部资源交互的接口。
  • 运行流程可总结为:编译器将Java代码转换成字节码,JVM将其加载和解释,最终由执行引擎执行。

    转载地址:http://pswaz.baihongyu.com/

    你可能感兴趣的文章
    pcie握手机制_【博文连载】PCIe扫盲——Ack/Nak 机制详解(一)
    查看>>
    pcm转wav的方法及代码示例
    查看>>
    PC史上最悲剧的16次失败
    查看>>
    PC端恶意代码分析Lab1.1-5.1,从零基础到精通,收藏这篇就够了!
    查看>>
    PC端稳定性测试探索
    查看>>
    PC端编辑 但能在PC端模拟移动端预览的富文本编辑器
    查看>>
    PDB文件:每个开发人员都必须知道的
    查看>>
    springMVC学习(二)
    查看>>
    Pdfkit页眉和页脚
    查看>>
    PDF中的Pandoc语法突出显示不起作用
    查看>>
    pdf从结构新建书签_在PDF文件中怎样创建书签
    查看>>
    pdf做成翻页电子书_第一弹:常见BOOX电子书阅读器问题解答,这些技能你都会吗?...
    查看>>
    PDF工具箱-分割提取合并
    查看>>
    pdf打印骑缝章
    查看>>
    PDF文字识/编辑?这个工具真的很强大!
    查看>>
    pdf文档出现乱码如何修改
    查看>>
    pdf根据模板导出
    查看>>
    PDF调出本来存在的书签面板
    查看>>
    pdf转图片
    查看>>
    pdf转图片、提取pdf文本、提取pdf图片
    查看>>