虚拟机中每个对象都有一个对象锁,用于协调多线程访问同一个对象时的同步。
除了锁,每个java对象逻辑上还与实现等待集合的数据相关联,等待集合是用来让多个线程为完成同一个共同目标二协调工作的。,由等待方法(从object那里继承的三个名为wait()的重载方法)和通知方法(notify()和notifyAll())联合使用。
程序计数器
PC寄存器的大小是一个字长,他既能够持有以个本地指针,也能够持有一个returnAddress。当线程执行一个本地方法是,PC寄存器的值是“undefined”
java栈
新线程启动时,java虚拟机会分配一个java栈。
虚拟机知会直接对java栈执行两种操作:以帧为单位的压栈或出栈。
每当线程调用一个java方法时,都会有个新帧压入栈,在执行这个方法时,使用这个帧来存储参数、局部变量、中间运算结果等;
无论java方法是正常返回还是抛出异常返回,虚拟机都会从栈上弹出当前帧;
帧栈由三部分组成:局部变量区、操作数栈、帧数据区。
局部变量区、操作数栈大小有具体方法而定,按字长计算,编译时就确定了这些值并放在class文件中,帧数据区大小依赖具体实现。
分享到:
相关推荐
第2章:概览Java虚拟机整体架构; 第3章:介绍如何将Java语言编写的程序转换为虚拟机指令集; 第4章:定义class文件格式。它是一种与硬件和操作系统无关的二进制格式,用来表示编译后的类和接口; 第5章:定义了...
深入 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系统因其开放性而吸引了众多开发者...
2. 字节码验证:Java虚拟机对字节码进行验证,检查其是否符合Java虚拟机的规范。 3. 字节码执行:Java虚拟机执行字节码,通过解释或编译来执行字节码指令。 4.垃圾回收:Java虚拟机的垃圾回收机制可以自动回收不再...
读书笔记:java虚拟机详解jvm从入门到精通
《Java核心技术系列:Java虚拟机规范(Java SE 8版)》由Oracle官方发布,Java虚拟机技术创建人撰写,国内资深Java技术专家翻译。书中基于全新Java SE 8,完整且准确地阐述Java虚拟机规范,是深度了解Java虚拟机和...
2. 跨平台特性:Java不仅是一种跨平台的语言,它还是一个全新的网络计算平台,可以运行在不同的操作系统上,而无需修改代码。 3. 关键技术:Java平台包含了多种相关技术,例如不同种类的API、优化技术等。这些技术...
java虚拟机OutOfMemoryError:Java heap space堆dump文件,可以直接用来分析。
《Java核心技术系列:Java虚拟机规范(Java SE 8版)》由Oracle官方发布,Java虚拟机技术创建人撰写,国内资深Java技术专家翻译。书中基于全新Java SE 8,完整且准确地阐述Java虚拟机规范,是深度了解Java虚拟机和...
1. Java虚拟机的裁减和安装:Java虚拟机需要裁减和安装到ARM平台上,以满足嵌入式设备的资源限制。 2. Java核心类库的裁减和安装:Java核心类库需要裁减和安装到ARM平台上,以满足嵌入式设备的资源限制。 3. Java...
第二章:java虚拟结构(运行时区域内存:寄存器,java虚拟机栈,java堆,方法去,运行时常量池,本地方法栈); 第三章:为java虚拟机编译; 第四章:Class文件格式; 第五章:加载、链接与初始化
1. **Java虚拟机概述**:Java虚拟机是Java平台的核心组件,它负责解析和执行Java字节码,为程序提供了一个跨平台的运行环境。理解JVM的工作原理有助于优化代码并解决各种运行时问题。 2. **内存模型**:书中详细...