网站大量收购闲置独家精品文档,联系QQ:2885784924

java虚拟的机3.pdf

  1. 1、本文档共19页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Java虚拟机 1 虚拟机简介 1.1 起源 为了减轻编译过程中,中间语言向不同机器代码转换这一烦 琐的任务,提出了虚拟机的思想,最早是在五十年代末的UNCOL 方案中首先被提出来的,建议设计一个通用的中间语言,该语言 的名字为UNCOL(universal computer oriented language),即 面向通用计算机的中间语言。 中间语言的概念与抽象机的概念并不完全相同,中间语言可 以看作是抽象机的汇编语言。 抽象机是具体计算机的理论模型。 Turing机 图灵 机械可计算 1.2 通用抽象机 七十年代的通用抽象机JANUS,其基本思想是:把对输入源语 言的分析阶段(词法、语法、以及部分语义)与代码生成阶段分割 开来。前一部分应该是与具体机器无关的,后一部分则涉及源语 言的各种成分在不同的机器上如何实现的问题。 1 具体的计算机很多,差别很大等,实现起来较困难。 1.3 专用抽象机 为特定计算机设计的专用抽象机。 从通用抽象机到专用抽象机,表明人们的认识也有了提高, 放弃了不切实际的目标,转而追求比较现实的目标。 1.4 面向语言的专用抽象机 这种AM 只能用来实现和移植某一种特定的语言,许多著名 的语言都有了自己的专用抽象机,如Pascal 的P-CODE,ALGOL 的Z-CODE 等。 2 目的: (1) 便于移植 把这个系统用抽象机的方法重新实现一遍,然后再把用抽象 机写的系统提供给用户,使用户只需花费实现一个小抽象机的代 价就可得到整个系统。 (2) 获得高效率 在特殊的硬件模型上获得高效率。抽象机可视为硬件模型的软 件映射,它是介于语言的语义和硬件物理实现之间的一个层次, 是从该语言中抽出其基本功能而设计的一台直接执行这些基本 功能的理想机器。 2 Java虚拟机概述 Java虚拟机 (Javavirtual machine,JVM)是面向语言的专 用抽象机,它的设计主要是受了P-Code 的影响,它和P-Code 一样都是面向堆栈的机器,JVM 的设计兼顾了软件的移植与硬件 的执行效率,目前已有以JVM 指令为机器指令的JavaCPU。 Java语言之所以实现了平台中立,其根本原因在于各操作系 统平台都配有Java虚拟机,虚拟机屏蔽了不同软硬平台之间的 差异,它负责解释或及时编译执行Java字节码文件。 Java 虚拟机是一组有关指令系统、字节码格式等的规格说 3 明。只要根据JVM 的规格描述将解释移植到特定的计算机上,就 能保证经过编译的任何Java代码都能在该机器上运行。 当说到 “Java虚拟机”时,可能有以下三种解释:  抽象规范  一个具体的实现  一个运行中的虚拟机实例 当启动一个Java程时,一个虚拟机实例就诞生了;当该程序 关闭,这个虚拟机实例也就随之消亡了。 图 Java平台结构 4 每个Java 虚拟机包含:  一个类装载子系统  一个执行引擎  运行时的数据区 Java虚拟机技术是Java平台的核心技术,涉及的范围很广,其 中包括解释技术、及时编译技术、异常处理技术、多线程技术、 内存管理与无用单元的回收技术等。 3 Java虚拟机的体系结构与设计 5 线程 Java 栈 方法区 帧 PC 寄存器

文档评论(0)

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

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

1亿VIP精品文档

相关文档