iis服务器助手广告
返回顶部
首页 > 资讯 > 精选 >哪五大元素组成JVM结构
  • 387
分享到

哪五大元素组成JVM结构

2023-06-17 14:06:27 387人浏览 泡泡鱼
摘要

这篇文章将为大家详细讲解有关哪五大元素组成JVM结构,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。这里和大家重点描述一下JVM结构的组成和用法,JVM结构由五个部分组成,他们分别是一组指令集

这篇文章将为大家详细讲解有关哪五大元素组成JVM结构,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。

这里和大家重点描述一下JVM结构的组成和用法,JVM结构由五个部分组成,他们分别是一组指令集、一组寄存器、一个栈、一个无用单元收集堆(Garbage-collected-heap)、一个方法区域。

JVM结构组成

虚拟机JVM结构由寄存器、栈、废区收集堆、存储区和指令集五部分组成。下面我们将逐一作出介绍。

1.寄存器(Registers)

同其他微处理器的寄存器一样,JVM机构的寄存器用来存放当前系统状态。然而,基于移植性要求,JVM拥有的寄存器数目不能过多。否则,对于任何本身的寄存器个数小于JVM的移植目标机,要用常规存储来模拟高速寄存器,是比较困难的。同时JVM是基于栈(Stack)的,这也使得它拥有的寄存器较少。

JVM的寄存器包括下面四个:

(1)PC程序计数寄存器

(2)optop操作数栈栈顶地址寄存器。

(3)frame当前执行环境地址寄存器。

(4)vars局部变量首地址寄存器。

这些寄存器长度均为32位。其中PC用来记录程序执行步骤,其余optop,frame,vars都存放JVM栈中对应地址,用来快速获取当前执行所需的信息。

2.栈(Stack)

JVM机构是以栈为基本存储机制的处理机。栈的特点是先进后出(FILO)。对每个类的每个方法,JVM都定义一定的栈空间,包含下面三种信息:

(1)LocalVariables局部变量

这是一个记录各方法局部变量的数组,其初始地址存放在vars寄存器中。每一个数组元素的长度均为32位。若变量长度超过32位,如双精度浮点变量或长整型变量,则占据两个元素的空间64位。

(2)ExecutionEnviroment执行环境

包含代表当前方法的栈的当前状态。存储的信息有:

◆激活的前一个方法。

   ◆指向局部变量区的指针。

◆指向操作数栈顶和栈底的指针。

执行环境是执行方法的控制中心,为解释执行和重新编译提供必要的信息。例如,解释器执行JVM的指令iadd,将两整型数相加,执行分为若干步。首先,解释器从寄存器frame中获得当前执行环境。然后,在当前执行环境中指向操作数栈顶的指针,取出要相加的两数。***还要将所加得的结果回送入栈。

(3)OperandStack操作栈

这是一个以32位为单位长度,用来存储JVM指令的参数的区域。

3.废区收集堆(Garbage-CollectedHeap)

所有的类被实例化时,所获得的存储空间都是从收集堆中分配的。此外,这个堆还要负责无用空间的回收使用。出于移植性和安全性考虑,Java不赋予程序设计员管理内存空间的权力。因而,在编译用new命令申请新对象存储空间后,由解释器负责跟踪记录这一块内存的使用情况。当使用结束时,回收空间送回堆中。在Sun公司的Java和HotJava环境中,这样的“废区收集”都是作为后台线程运行的,保证了系统运行的高效性。

4.存储区(MemoryArea)

JVM机构有两个重要的存储区域,即方法区(methodarea)和常数池区(constantpoolarea)。

方法区存放的是类中定义的各方法的二进制字节码。常数池区存放的则是方法名、类名、域名以及字符串常数。

5.指令集(InstructionSet)

指令集是JVM执行的操作码的集合。Java编译器就是将Java源程序转换成JVM的程序:一组JVM指令。

JVM指令都由一个操作码(opcode)带上零个、一个或两个操作数(operand)组成。操作数长度不尽相同,以8位为基本长度,超过8位时按BigEndian的顺序截断组合,即高位存放在低地址字节中,而低位存放在高地址字节中。操作码长度均为8位。这限制了指令种类最多只能为256(28)种。目前已经被定义使用的操作码有160种,它们包括栈操作、数组操作、算术运算、逻辑运算、数据类型转换、控制流程操作、断点和异常处理等丰富而详尽的内容,这里不再一一赘述。

关于哪五大元素组成JVM结构就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。

--结束END--

本文标题: 哪五大元素组成JVM结构

本文链接: http://www.lsjlt.com/news/289629.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 哪五大元素组成JVM结构
    这篇文章将为大家详细讲解有关哪五大元素组成JVM结构,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。这里和大家重点描述一下JVM结构的组成和用法,JVM结构由五个部分组成,他们分别是一组指令集...
    99+
    2023-06-17
  • 分析JVM的组成结构
    目录一、JavaSE体系二、运行时数据区三、程序计数器3.1、什么是程序计数器3.2、程序计数器有什么特点3.3、用个例子来说明四、虚拟机栈4.1、局部变量表4.2、操作数据栈4.3...
    99+
    2024-04-02
  • 怎么组成JVM内存结构
    今天就跟大家聊聊有关怎么组成JVM内存结构,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。你对JVM内存结构是否了解,这里和大家分享一下,JVM内存结构主要包括两个子系统和两个组件,这...
    99+
    2023-06-17
  • 常用html元素结构有哪些
    这篇文章将为大家详细讲解有关常用html元素结构有哪些,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。   基本结构:   <!DOCTYPEhtmlPUBLIC...
    99+
    2024-04-02
  • html有哪些常用的结构元素
    今天小编给大家分享的是html有哪些常用的结构元素,相信很多人都不太了解,为了让大家更加了解,所以给大家总结了以下内容,一起往下看吧。一定会有所收获的哦。 html常用的结构元素...
    99+
    2024-04-02
  • python表达式由哪些元素构成
    python表达式是由运算符和操作数构成的,其中操作数可以使用标识符进行表示,如a=3;b=2;c=a*b;且表达式是一个值,单独的一个值是一个表达式,单独的变量也是一个表达式。...
    99+
    2024-04-02
  • HTML5文档结构及相关元素有哪些
    本篇内容主要讲解“HTML5文档结构及相关元素有哪些”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“HTML5文档结构及相关元素有哪些”吧! SVG文档的元素基...
    99+
    2024-04-02
  • html5中元素的组成部分有哪些
    这篇文章主要介绍了html5中元素的组成部分有哪些的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇html5中元素的组成部分有哪些文章都会有所收获,下面我们一起来看看吧。 ...
    99+
    2024-04-02
  • 云服务器组成结构有哪些
    云服务器(Cloud Server)是一种用于存储、管理和共享计算资源的服务器集群。它通常由多个服务器组成,每个服务器都可以通过网络相互连接,从而构成一个虚拟的集群。 云服务器可以分为两个主要的部分:服务器硬件和操作系统。服务器硬件是云服...
    99+
    2023-10-27
    结构 服务器 有哪些
  • python变量名可以有哪些元素组成
    python变量名是由字母、下划线(_)和数字组成的,python变量名可以是字母或者下划线(_),但不能以数字开头,且变量名区分大小写,不能与python关键字重名。...
    99+
    2024-04-02
  • 云服务器的成本结构有哪些组成
    云服务器的成本结构包括以下几个组成部分: 基础设施成本:包括服务器硬件、网络带宽、存储容量、数据中心等组成部分。其中包括数据中心的硬件设施和维护费用,服务器硬件成本在几十万到几百万不等。 维护和运营成本:包括服务器系统、数据库、软件等维...
    99+
    2023-10-27
    成本 结构 服务器
  • 云服务器的组成结构有哪些
    云服务器(Cloud Server)是一种基于互联网的服务器,它提供了一种虚拟化的云平台,使得用户可以通过简单的管理界面来创建和管理他们自己的资源。以下是云服务器的组成结构。 硬件层:包括服务器、网络设备、存储设备和其他必要的软件组件。...
    99+
    2023-10-26
    结构 服务器 有哪些
  • HTML5中SVG的文档结构及相关元素有哪些
    HTML5中SVG的文档结构及相关元素有哪些,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。结构相关的组合和重用元素,这里先对SVG的文档结...
    99+
    2024-04-02
  • PHP数组特定元素查找的最佳数据结构选择
    在 php 中针对特定元素查找的最佳数据结构选择取决于查找要求:数组:适用于小数组或不频繁查找。有序数组:允许二分查找,适用于需要高效查找的排序数组。splfixedarray:优化数组...
    99+
    2024-05-04
    数组 数据结构 键值对 排列 标准库
  • 云服务器的组成结构包括哪些
    云服务器(Cloud Server)通常是指使用虚拟化技术构建的服务器,它将计算资源分布于多个计算节点上,从而减少了服务器数量和所需的资源成本,同时也提高了数据中心的可靠性和可扩展性。 云服务器的组成结构如下: 硬件平台:包括服务器硬件...
    99+
    2023-10-26
    结构 服务器
  • 云服务器的成本结构有哪些组成部分
    硬件成本:包括服务器主板、CPU、内存、硬盘等,每一种硬件的价格不同,因此云服务器的硬件成本占比也比较大。 软件成本:包括操作系统、数据库、安全等软件,每一种软件的价格不同,因此云服务器的软件成本占比也比较大。 网络成本:包括网络设备、路...
    99+
    2023-10-27
    组成部分 成本 结构
  • 云服务器的组成结构有哪些部分
    云服务器(Cloud Server)的组成结构一般包括以下几个部分: 基础设施资源:包括硬件服务器、虚拟机、存储和网络等组成部分,这些资源提供云服务所需的基础设施资源。 数据存储:包括数据库、文件存储、安全系统等组成部分,这些资源提供高...
    99+
    2023-10-26
    结构 服务器 有哪些
  • 云服务器的组成结构有哪些类型
    云服务器(Cloud Server)通常是指运行在公共云平台上的服务器,它可以通过互联网直接连接到互联网上的资源。以下是云服务器的组成结构: 云主机:云主机是云服务器最基本的组成部分,它提供了网络、存储、数据备份等基础服务。云主机通常包...
    99+
    2023-10-26
    类型 结构 服务器
  • RPA卓越中心的三种组织结构、五大核心功能与十大职能角色
    ...
    99+
    2023-06-05
  • 云服务器的组成结构有哪些类型的
    硬件基础设施:包括服务器主板、内存、硬盘、CPU等硬件设备,以及网络连接、存储设备、安全设备等软件基础设施。 操作系统:云服务器使用的操作系统是云平台运行的基础软件,通常由云平台管理员提供,包括Web服务器、数据库服务器、容器服务器等不同...
    99+
    2023-10-27
    类型 结构 服务器
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作