您现在的位置是:主页 > news > 设计网站技术/企业宣传推广
设计网站技术/企业宣传推广
admin2025/5/24 5:13:55【news】
简介设计网站技术,企业宣传推广,私人做网站费用,天津建筑信息网JVM架构让我们获得有关JVM内部架构的一些关键见解,其中包括:1.类加载器它是用于加载类文件的JVM子系统。在运行Java程序时,它首先由类加载器加载。Java包括的三个类加载器如下:a.Bootstrap ClassLoader:它是扩展类加载…
JVM架构
让我们获得有关JVM内部架构的一些关键见解,其中包括:
1.类加载器
它是用于加载类文件的JVM子系统。在运行Java程序时,它首先由类加载器加载。Java包括的三个类加载器如下:
a.Bootstrap ClassLoader:它是扩展类加载器的超类。它有助于加载包含所有类文件的rt.jar文件。
b.扩展ClassLoader:它是系统类加载器的父类加载器,也是Bootstrap的子类加载器。$ JAVA_HOME / jre / lib / ext目录中的jar文件可以通过扩展ClassLoader提取。
C.系统/应用程序ClassLoader: 它是扩展类加载器的子类,也称为应用程序类加载器。可以通过它从类路径中提取类文件。默认情况下,设置为当前目录的Classpath可以使用“ -cp”或“ -classpath”开关进行更改。
2.类(方法)区域
诸如字段和方法数据,运行时常量池以及方法代码之类的预类结构存储在“类(方法)区域”中。它是在JVM启动时创建的内存,并且在所有线程(如Heap)之间共享。
3.堆
通过此有用的运行时数据区域分配对象。它是一个存储对象及其实例变量的内存位置。每当用Java创建对象时,它都会进入堆-内存区域。
4.堆叠
除了存储框架外,Java Stack还保存变量和部分结果。它还在方法,调用和返回中起着关键作用。每个单独的线程都包含与线程同时创建的私有JVM堆栈。每当方法升级时,都会在方法调用完成时生成并破坏新的框架。
5.程序计数器(PC)寄存器
PC寄存器在执行时包含JVM指令地址。跟踪指令,它对于未为本机方法定义的每条指令都具有价值。
6.本机方法堆栈
应用程序中使用的本机过程是本机方法堆栈的一部分。这些方法用Java以外的语言编写。与每个线程相关联,JVM实现不能依赖于常规堆栈,也无法加载本机方法。确切地说,它类似于stack,但用于本机方法。
7.引擎
作为JVM的关键方面,它与各种内存区域进行通信。这包括:
a.垃圾收集器:这在JVM的动态内存管理系统中起着至关重要的作用。通过垃圾收集器释放已被任何可达的Java对象所占用且不再引用的内存。
b.解释器:读取字节码流后执行指令。
C.即时(JIT)编译器:为了提高性能,JIT编译器同时编译具有相似功能的部分字节码。它有助于减少编译过程所需的时间。
Java本机接口(JNI)
可以通过JNI提供的接口连接以其他语言编写的应用程序,例如C,C ++,Assembly等。Java使用JNI框架与OS库进行交互或将输出发送到控制台。
JVM的用途是什么?
JVM具有两个主要功能:允许Java程序在任何设备或操作系统上运行(称为“一次编写,随处运行”原则),以及管理和优化程序内存。
优点和缺点
Java程序通过JVM适当地执行。字节码–一种中间语言,用于编译Java程序,然后通过JVM执行。JVM推动的任何平台都可以执行被编译为字节码的每个程序。这样就使Java软件更加有效,并且与各种计算平台有关,并且兼容。JVM具有一些明显的优点和缺点,任何开发人员在投资Java开发之前都应仔细权衡一下。
1.安全性
通过JVM的安全措施,程序员可以有效地编写高端安全的Java程序。它使操作系统资源能够识别恶意软件,并相应地进行预防。
2.表现
与用C ++编写的程序相比,在JVM上运行的Java程序执行速度可能较慢。这是由于代码优化过度依赖于不同的系统特定功能。此外,由于Java字节码与系统无关,因此无法针对特定的硬件集进行优化。
3.正确性
正确的是程序,它可以有效执行并最大程度地满足用户的期望。JVM的内置功能使其能够正确运行且没有错误。
为什么要使用JVM?
尽管具有Java语法代码,JVM仍可以在各种不同的语言程序上运行。下面列出了为什么如此广泛地使用它以及为何在不同平台上使用它的几个原因:
它使用堆内存:堆内存是一个核心组件,用于动态内存分配以定义类和对象初始化,并且由于JVM支持堆内存,因此它已被广泛接受。
为远程代码位置提供安全性:JVM框架的设计方式使远程应用程序易于执行。执行Java Applet遵循该理论。