JAVA虚拟机JVM介绍.pptx

  1. 1、本文档共30页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
JAVA虚拟机JVM介绍

JVM汇报人:陈琦帆汇报人:陈琦帆 JVM 简介— 目录Java 虚拟机和 Java 内存区域概述Java 虚拟机栈和本地方法栈Java 堆方法区和运行时常量池Java 虚拟机和 Java 内存区域概述什么是虚拟机,什么是 Java 虚拟机Java 虚拟机基础架构Java 虚拟机运行时数据区程序计数器区域Java 虚拟机和 Java 内存区域概述 — 什么是虚拟机,什么是 Java 虚拟机虚拟机定义:模拟某种计算机体系结构,执行特定指令集的软件系统虚拟机( Virtual Box、VMware),进程虚拟机进程虚拟机JVM、Adobe Flash Player、FC模拟器高级语言虚拟机JVM、.NET CLR、P-CodeJava 虚拟机和 Java 内存区域概述 — 什么是虚拟机,什么是 Java 虚拟机Java 语言虚拟机可以执行 Java 语言的高级语言虚拟机。 Java 语言虚拟机并不一定就可以称为 JVM,譬如:Apache HarmonyJava? 虚拟机必须通过 Java TCK(Technology Compatibility Kit)的兼容性测试的Java语言虚拟机才能称为“Java? 虚拟机”Java? 虚拟机并非一定要执行“Java”程序业界三大商用 JVM:Oracle HotSpot 、 Oracle JRockit VM、IBM J9 VMJava 虚拟机和 Java 内存区域概述 — JAVA虚拟机架构该图参考了网上广为流传的JVM构成图,大家看这个图,整个JVM分为四部分:Class Loader?类加载器Execution Engine?执行引擎Native Interface本地接口Runtime data area运行数据区Java 虚拟机和 Java 内存区域概述 — 什么是虚拟机,什么是 Java 虚拟机Oracle HotSpot 虚拟机最初由名为“Longview Technologies”的小公司开发,后被 Sun 公司收购。最初并非面向 Java 语言开发,而是面向 Strongtalk 语言。HotSpot 命名来自它的“热点代码探测”技术。从 JDK 1.2 开始加入 Sun(Oracle)JDK,在 JDK 1.3 开始成为 Sun(Oracle)JDK 的默认实现,在1.4中成为唯一的虚拟机。在2006年底开始开源,由此建立的 OpenJDK 项目。本系列课程中所有的虚拟机实现,所指的都是 Oracle HotSpot 虚拟机。Java 虚拟机和内存区域概述 — Java 虚拟机运行时数据区Java 虚拟机运行时数据区在《Java 虚拟机规范》中定义了若干种程序运行期间会使用到的存储不同类型数据的区域。有一些区域是全局共享的,随着虚拟机启动而创建,随着虚拟机退出而销毁。有一些区域是线程私有的,随着线程开始和结束而创建和销毁。是所有 Java 虚拟机共同的内存区域概念模型Java 虚拟机和内存区域概述 — Java 虚拟机运行时数据区运行时数据区的划分程序计数器Java 堆Java 虚拟机栈本地方法栈方法区Java 虚拟机和内存区域概述 — 程序计数器区域程序计数器(Program Counter Register)一块较小的的内存空间,它的作用可以看作是当前线程所执行的字节码的行号指示器。如果线程正在执行的是一个 Java 方法,这个计数器记录的是正在执行的虚拟机字节码指令的地址;如果正在执行的是 Native 方法,这个计数器值则为空。此内存区域是唯一一个在 Java 虚拟机规范中没有规定任何 OutOfMemoryError情况的区域。JVM 自动内存管理:内存区域基础概念Java 虚拟机栈和本地方法栈Java 虚拟机栈和本地方法栈Java 虚拟机栈的概念和特征本地方法栈的概念和特征栈帧概念和特征本地变量表和操作数栈实战内存异常实战Java 虚拟机栈和本地方法栈 — Java 虚拟机栈的概念和特征Java 虚拟机栈的特征线程私有后进先出(LIFO)栈存储栈帧,支撑 Java 方法的调用、执行和退出可能出现 OutOfMemoryError 异常和 StackOverflowError 异常Java 虚拟机栈和本地方法栈 — 本地方法栈的概念和特征Java 本地方法栈的特征线程私有后进先出(LIFO)栈作用是支撑 Native 方法的调用、执行和退出可能出现 OutOfMemoryError 异常和 StackOverflowError 异常有一些虚拟机(如 HotSpot)将 Java 虚拟机栈和本地方法栈合并实现Java 虚拟机和内存区域概述 — 栈帧概念和特征栈帧的概念和特征Java 虚拟机栈中存储的内容,它被用于存储数据和部分过程结果的数据结构,同时也被用

文档评论(0)

wuyuetian + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档