Java虚拟机Java虚拟机(Java virtual
machine,JVM)是运行Jav才程序必不可少的机制。编译后的Java程序指令并不直接在硬件系统的CPIJ上执行,而是由JVM执行。JVM是
编译后的Java程序和硬件系统之间的接口,程序员可以把JVM看作一个虚拟的处理器。它不仅解释执行编译后的Java指令,而且还进行安全检查。它是
Java程序能在多平台间进行无缝移植的可靠保证,同时也是Java程序的安全检验引擎。
Java虚拟机规范中给出了JVM的定义:JVM是在一台真正的机器上用软件方式实现的一台假想机。JVM使用的代码存储在。class文件中。JVM的某些指令很像真正的CPU指令,包括算术运算、流控制和数组元素访问等。
Java虚拟机规范提供了编译所有Java代码的硬件平台。因为编译是针对假想机的,所以该规范能让Java程序独立于平台。它适用于每个具体的硬件平台,以保证为JVM编译的代码的运行。JVM不但可以用软件实现,而且可以用硬件实现。
JVM的具体实现包括:指令集(等价于CPIJ的指令集)、寄存器组、类文件格式、栈、垃圾收集堆、内存区。
JVM的代码格式为压缩的字节码,因而效率较高。由JVM字节码表示的程序必须保持原来的类型规定。Java主要的类型检查是在编译时由字节码校验器完成的。Java的任何解释器必须能执行符合JVM定义的类文件格式的任何类文件。
网管网bitsCN.com
Java虚拟机规范对运行时数据区域的划分及字节码的优化并不做严格的限制,它们的实现依平台的不同而有所不同。JVM的实现叫做Java运
行时系统,简称为运行时。Java运行时必须遵从Java虚拟机规范,这样,Java编译器生成的类文件才可被所有Java运行时系统下载。嵌入了
Java运行时系统的应用程序,就可以执行Java程序了。目前有许多操作系统和浏览器都嵌入了Java运行时环境。
Java虚拟机的性能Java在问世之初,因其没有完全优化,并且是解释执行,因此Java程序的运行效率较低。同时,有着较长发展史、已非常成熟的C+十语言仍在开发界扮演着主要角色,人们往往拿C++的性能效率与刚诞生的Java相比较,这当然失之偏颇。
Java解释器经过不断的优化,字节码的执行速度已有很大提高。另外,在字节码执行之前可以先经过JIT编译器(just in time
compiler)进行编译,生成针对具体平台的本机执行代码。它的执行效率可比解释执行的效率提高4~8倍。现在许多厂商都提供JlT编译器,这项技术
已非常成熟。由于字节码与平台无关,所以经过编泽的Java仍不失跨平台的特点。
Hotspot技术是Sun公司推出的一种全新技术。它提供对代码的运行时选择,为的是从根本上解决Java程序的效率问题。在程序执行
时,I{otspot对每个字节码指令进行分析,根据它的执行次数,动态决定它的执行方式。比如,一段指令需要多次重复执行,则立即编译为可执行代码。如
果是只执行一次的简单指令,且解释执行的效率更高,则使用解释执行的方式。有了这项技术,Javal的效率问题基本上可以得到解决
分享到:
相关推荐
JVM工作原理学习笔记,感兴趣的小伙伴们可以下载来看看。
JVM的生命周期 JVM的体系结构 JVM类加载器 JVM执行引擎 JVM运行时数据区 JVM垃圾回收 问题
讲JVM工作原理、垃圾回收讲的非常好的一个ppt
jvm工作原理资料
淘宝大学内部培训资料,JVM工作原理,垃圾回收,讲解的很不错。
在执行方法时JVM提供了invokestatic、invokevirtual、invokeinterface和invokespecial四种指令来执行 (1)invokestatic:调用类的static方法 (2)invokevirtual:调用对象实例的方法 (3)invokeinterface:将属性...
JVM 原理及工作机制JVM 原理及工作机制
详细介绍了JVM执行子系统的工作原理,包括类文件结构与字节码指令(Class类文件结构、JVM字节码指令简介)、JVM类加载机制(类加载器、类加载时机、类加载过程)、字节码执行引擎(运行时候的栈结构、方法调用、方法...
首先讲述JVM的基本概念和原理、架构等。最后一HelloApp讲述JVM的工作过程
2017年最新的关于jvm的书,里面还包含了如何编译openjdk部分,值得一看。
JVM原理讲解和调优 JVM原理讲解和调优 JVM原理讲解和调优
文档仅仅叙述了JVM组成,工作原理。以及java对象的创建存储消亡
JVM_工作原理.JVM_工作原理.JVM_工作原理.
JAVA应用JVM原理及参数调优深入讲解视频.1 JAVA应用JVM原理及参数调优深入讲解视频.2 JAVA应用JVM原理及参数调优深入讲解视频.3 JAVA应用JVM原理及参数调优深入讲解视频.4 JAVA应用JVM原理及参数调优深入讲解视频.5 ...
深入jvm 内核-原理,诊断于优化视频教程.算是比较基础的
深入JVM内核—原理、诊断与优化视频教程 深入JVM内核—原理、诊断与优化视频教程
本资料主要是讲解了Java虚拟机的机制,jvm设计原理与实现
深入JVM内核—原理、诊断与优化视频教程———目前,Java是更为流行的编程语言之一,它的基础平台就是JVM。除了Java,如JRuby、Scala、Clojure等语言也运.