你的位置:首页 > 软件开发 > Java > JVM概论

JVM概论

发布时间:2015-03-14 00:00:25
引子   Java虚拟机是Java应用程序的执行环境。通常而言,JVM是由一组严格的指令集和一个复杂的内存模型来具体实现的虚拟机,它用来解释编译好的java字节码文件,将字节码转换为特定机器可以执行的本机代码(native code)。它也可以指代某一软件运行时的进程实例。这里, ...

JVM概论

引子

  Java虚拟机是Java应用程序的执行环境。通常而言,JVM是由一组严格的指令集和一个复杂的内存模型来具体实现的虚拟机,它用来解释编译好的java字节码文件,将字节码转换为特定机器可以执行的本机代码(native code)。它也可以指代某一软件运行时的进程实例。这里,我们以hotspot实现的JVM为例。

  JVM的规则保证任何一款具体实现的JVM都要以完全相同的方式去解释java字节码文件,无论是一个进程,一个独立的java操作系统,抑或是一个直接执行字节码命令的处理器芯片。一般情况下,我们通常讨论的JVM是一个运行在操作系统上的进程。

  JVM的架构设计使得它可以精细的控制JAVA应用程序的每一个动作,在没有权限的情况下,应用程序无法去访问本地文件系统,处理器,网络等。例如,在远程操作的情况下,代码需要有签名证书。

  除了去解释java字节码,许多软件实现的JVM都有一个JIT编译器用于生成频繁执行的方法机器代码。机器代码是可以直接被cpu解析执行的,所以比字节码速度更快。

你无需去理解JVM的内部,就能编写并运行一个JAVA应用程序。但是,如果你知道了其中的一些原理,就能避免一些性能上的问题。本文以sunspot为例子来说明。

架构

  JVM主要有两大子系统:

  • 类加载器:负责读取java源文件,并把类加载进内存。

    原标题:JVM概论

    关键词:jvm

jvm
*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们: admin#shaoqun.com (#换成@)。