写在前面:我是「云祁」,一枚热爱技术、会写诗的大数据开发猿。昵称来源于王安石诗中一句 写博客一方面是对自己学习的一点点总结及记录,另一方面则是希望能够帮助更多对大数据感兴趣的朋友。如果你也对 Java虚拟机 Java虚拟机就是二进制字节码的运行环境,负责装载字节码到其内部,解释 / 编译为对应平台上的机器指令执行。每一条Java指令,Java虚拟机规范中都有详细定义,如怎么取操作数,怎么处理操作数,处理结果放在哪里。 特点 JVM 的位置 1、方法区和堆区是所有线程共享的内存区域;而Java栈、本地方法栈和程序员计数器是运行是线程私有的内存区域。 2、Java栈又叫做JVM虚拟机栈 3、方法区(永久代)在JDK1.8中又叫做元空间Metaspace 方法区用于存储已被虚拟机加载的类信息、常量、静态变量、即时编译器(JIT编译器,英文写作Just-In-Time Compiler)编译后的代码等数据。虽然Java虚拟机规范把- 方法区描述为堆的一个逻辑部分,但是它却有一个别名叫做 Non-Heap(非堆),目的应该是与 Java 堆区分开来。 4、Java代码执行流程: Java程序 —>(编译javac)—> 字节码文件.class —> 类装载子系统化身为反射类Class —> 运行时数据区 —>(解释执行)—> 操作系统(Win、Linux、Mac JVM) Java编译器输入的指令流基本上是一种基于栈的指令集架构,另外一种指令集架构则是基于寄存器的指令集架构。 由于跨平台的设计,Java的指令都是根据栈来设计的,不同平台CPU架构不同,所以不能设计为基于寄存器的 二者区别: 栈:跨平台性、指令集小、指令多;执行性比寄存器差 一些简单查看命令: 通过引导类加载器(bootstrap class loader)创建一个初始类(initial class)来完成的,这个类是由虚拟机的具体实现指定的。 古今JVM Android虚拟机 DVM
[ 云之祁祁,或雨于渊 ]
,甚是喜欢。数据中台、数据建模、数据分析以及Flink/Spark/Hadoop/数仓开发
感兴趣,可以关注我的动态 https://blog.csdn.net/BeiisBei ,让我们一起挖掘大数据的价值~每天都要进步一点点,生命不是要超越别人,而是要超越自己! (ง •_•)ง
文章目录
一、Java 和 JVM 简介
1.1 Java:跨平台的语言
1.2 JVM:跨语言的平台
Java不是最强大的语言,但是JVM是最强大的虚拟机。1.3 Java 及 JVM 历史上重大事件
在 JDK11之前,OracleJDK中还会存在一些OpenJDK中没有的、闭源的功能。但在JDK11中,我们可以认为OpenJDK和OracleJDK代码实质上已经完全一致的程度。1.4 计算机系统当中JVM所处的位置
Java代码的执行流程
Java一次编译,到处运行。二、JVM的整体结构
三、JVM的架构模型
寄存器:指令少//查看指令集命令代码 cd out/production/类根目录 //反编译 javap -v StackStruTest.class //打印程序执行的进程 jps
四、JVM的生命周期
4.1 启动
4.2 执行
4.3 退出
五、JVM的发展历程
本网页所有视频内容由 imoviebox边看边下-网页视频下载, iurlBox网页地址收藏管理器 下载并得到。
ImovieBox网页视频下载器 下载地址: ImovieBox网页视频下载器-最新版本下载
本文章由: imapbox邮箱云存储,邮箱网盘,ImageBox 图片批量下载器,网页图片批量下载专家,网页图片批量下载器,获取到文章图片,imoviebox网页视频批量下载器,下载视频内容,为您提供.
阅读和此文章类似的: 全球云计算