虚拟机实现的核心都是他的执行引擎,使用指令集来定义
java虚拟机指令集的每种操作码都有助记符,使用汇编风格,使用javap可以查看class文件中方法的字节码助记符
虽然java虚拟机没有保存任意值的寄存器,但每个方法都有一个局部变量集合。
指令集实际的工作方式就是吧局部变量当做寄存器,用索引来访问,局部变量使用前,必须将它压入操作数栈;
平台无关性是影响指令集设计的最大因素,保证在很多平台体系结构上都很容易实现java虚拟机;
java以栈为中心设计指令集的另一个动机是,编译器一般采用以栈为基础的结构向连接器或优化器传递编译的中间结果;
java以栈为中心的体系结构可以讲运行时进行的优化工作于执行时即时编译或者自适应优化的执行引擎结合起来;
指令集设计的另一个目标是进行字节码验证能力,特别是使用数据分流器进行的一次性验证,java的安全框架需要这种验证能力。
在装载字节码的时候使用数据流分析器进行一次性验证,有助于提高速度。
自适应优化的虚拟机开始的时候对所有代码都是解释执行。
自适应优化计数使程序最终吧原来占80%--90%运行时间的代码变为极度优化的、静态链接的C++本地代码,使用的总内存数并不比全部解释java程序大多少。
分享到:
相关推荐
第1章 :简单地介绍了Java虚拟机的历史并吹捧了←_← 一下Java的平台无关性(一次编译,到处运行); 第2章:概览Java虚拟机整体架构; 第3章:介绍如何将Java语言编写的程序转换为虚拟机指令集; 第4章:定义...
深入 Java 虚拟机.pdf Java 虚拟机(Java Virtual Machine,JVM)是 Java 语言的 runtime 环境,是 Java 程序执行的核心组件。它提供了一个平台无关的环境,允许 Java 程序在不同的操作系统和硬件平台上运行。 一...
《Java核心技术系列:Java虚拟机规范(Java SE 8版)》由Oracle官方发布,Java虚拟机技术创建人撰写,国内资深Java技术专家翻译。书中基于全新Java SE 8,完整且准确地阐述Java虚拟机规范,是深度了解Java虚拟机和...
读书笔记:java 虚拟机,深入理解Java虚拟机 JVM高级特性与最佳实践
**Android虚拟机ART详解** Android运行环境的核心组成部分之一就是虚拟机,从早期的Dalvik到现在的Android RunTime(ART),这一进化过程极大地提升了Android应用的性能和效率。本文将深入探讨ART的工作原理、优势...
技术部研发团队技术干货分享:Java虚拟机.
### Java虚拟机分析与优化关键知识点 #### 一、Java虚拟机基础知识 1. **Java虚拟机(JVM)概述** - Java是一种面向对象的编程语言,具有“一次编写,到处运行”的特点。 - Java代码通过编译器转换为字节码,由...
资源名称:Scala程序设计:Java虚拟机多核编程实战资源截图: 资源太大,传百度网盘了,链接在附件中,有需要的同学自取。
读书笔记:Java虚拟机从入门到精通
Java基础知识学习:包括JVM虚拟机、对象模型等Java基础知识代码案例Java基础知识学习:包括JVM虚拟机、对象模型等Java基础知识代码案例Java基础知识学习:包括JVM虚拟机、对象模型等Java基础知识代码案例Java基础...
### 深入理解Android(二):Java虚拟机Dalvik #### 一、背景与研究目的 在深入了解Dalvik虚拟机之前,我们先来探讨一下背景与研究目的。随着移动设备性能的不断提高,Android系统因其开放性而吸引了众多开发者...
4.垃圾回收:Java虚拟机的垃圾回收机制可以自动回收不再使用的对象,避免内存溢出。 Java虚拟机的优点包括: * 平台无关性:Java虚拟机使得Java语言编译器生成的目标代码可以在多种平台上运行。 * 可移植性:Java...
读书笔记:java虚拟机详解jvm从入门到精通
编程选择题40道:Java虚拟机:内存模型与垃圾回收机制.Tex.docx
《Java核心技术系列:Java虚拟机规范(Java SE 8版)》由Oracle官方发布,Java虚拟机技术创建人撰写,国内资深Java技术专家翻译。书中基于全新Java SE 8,完整且准确地阐述Java虚拟机规范,是深度了解Java虚拟机和...
4. 虚拟机的组成:Java虚拟机(JVM)是Java平台的基础,它负责解释执行Java字节码,并提供了运行环境的隔离,保证了程序的安全运行。 5. 虚拟机的优点:使用虚拟机可以创建隔离环境,避免了操作系统间的兼容性问题...
java虚拟机OutOfMemoryError:Java heap space堆dump文件,可以直接用来分析。
《Java核心技术系列:Java虚拟机规范(Java SE 8版)》由Oracle官方发布,Java虚拟机技术创建人撰写,国内资深Java技术专家翻译。书中基于全新Java SE 8,完整且准确地阐述Java虚拟机规范,是深度了解Java虚拟机和...
- **内存模型**:Java虚拟机的内存模型是理解Java程序执行过程的关键,包括堆、栈、方法区等多个部分。这些区域在Java虚拟机启动时会被初始化,并且有着各自特定的用途和生命周期。 - **类文件格式**:Java虚拟机...
1. Java虚拟机的裁减和安装:Java虚拟机需要裁减和安装到ARM平台上,以满足嵌入式设备的资源限制。 2. Java核心类库的裁减和安装:Java核心类库需要裁减和安装到ARM平台上,以满足嵌入式设备的资源限制。 3. Java...