`

Java虚拟机原理学习

    博客分类:
  • JVM
阅读更多

一、

(1)虚拟机是Java的运行支撑系统,Java与生俱来的通用性、安全性和高效性都建立在Java的虚拟机之上,这三个特性之所以能够在 Java虚拟机上实现,是因为Java源代码的编译结果并非是本地机器指令,而是字节码。

(2)Java之所以能够实现 一次编译,处处运行,功不可没的当属字节码,和C/C++等传统语言不同,Java源代码的默认编译结果并非是可执行代码(本地机器指令),而是 具有平台通用性 的字节码,尽管不同平台Java虚拟机的实现机制不都想同,但是他们共同解释出来的字节码是一样的,所以说 字节码才是Java实现跨平台的关键因素。

(3)Java技术的核心就是Java虚拟机,因为所有的Java程序都运行在Java虚拟机内部,jvm之所以成为VM,是因为他是一组规范所定义出 的抽象计算机,JVM 的主要任务就是 负责将字节码 装载到其内部,解释 和编译为对应平台上的机器 指令执行。

      HotSpot VM是目前市场上高性能虚拟机的代表作之一,在其 内部,编译器和解释器是并存的,通过编译器和解释器的协同工作,既可以保证程序的响应时间,同时还可以提高程序的执行性能,并且对编译器的工作压力也降低了一定程度的负载。

      现在市场上的Java虚拟机规范并没有强制要求虚拟机内部实现一定要采用解释器和编译器共存的架构方案,但是目前主流虚拟器都会采用此架构,这是因为 当虚拟机启动的时候,解释器可以首先发挥作用,而不必等待编译器全部编译完。并且随着程序的运行时间的推移,编译器逐渐发挥作用,根据热点探测功能,将有价值的字节码编译为本地机器指令,以换取更高的程序执行效率。

(4)Java模板化:所谓的模板化指的就是开发人员在构建大型系统时,能够将系统中的每一个功能模块进行独立的开发和物理部署,这样做的优点不仅能有效的降低各个业务模块之间的耦合,同时还能够保证当单一模块发生故障的时候不会影响系统整体的运行。一般情况下开发人员选用OSGi技术作为模块化编程的首选。就目前而言,OSGi技术早已是Java模块化规范标准。

(5)语言无关性:Java虚拟机拥有语言无关性,并不会单纯地与Java语言私定终身 ,只要其他编程语言的编译结果满足并包含Java虚拟机的内部指令集、符号表以及其他的辅助信息,它就是一个有效的字节码文件,就能够被虚拟机所识别并装载运行。如果任何编程语言的编译结果都可以满足字节码的组成结构和储存形式,那么从理论上来讲都可以运行在Java虚拟机内部。

(6)使用Fork/Join框架实现多核运行:随着如今硬件水平的发展,就连手机等智能手机的CPU核心都采用多核超线程技术,而传统的pc设备、企业级服务器等也在关注的高频率转换为多核心去处理日常任务。

未完待续。。。。

分享到:
评论

相关推荐

    深入理解Java虚拟机(jvm性能调优+内存模型+虚拟机原理).zip

    《深入理解Java虚拟机》是一本深度探讨Java虚拟机(JVM)的著作,涵盖了JVM性能调优、内存模型以及虚拟机原理等多个关键领域。本文将基于这些主题,详细阐述其中的重要知识点。 首先,我们要了解Java虚拟机(JVM)...

    自己动手写Java虚拟机 (Java核心技术系列)@

    本书是继《深入理解Java虚拟机》之后的又一经典著作,它一方面遵循《Java虚拟机规范》,一方面又独辟蹊径,不仅能让Java虚拟机的学习变得更加简单和有趣,而且能让你对Java虚拟机的原理认识更深入和更深刻!...

    Java虚拟机规范 JavaSE7

    《Java虚拟机规范(JavaSE7版)》为想要了解Java虚拟机原理的程序员提供了必须的参考资料。它不仅仅是一份文档,更是为了确保不同厂商实现的Java虚拟机能够在统一的外部接口上进行交互和通信的契约。虽然规范中的...

    揭秘Java虚拟机-JVM设计原理与实现

    《揭秘Java虚拟机-JVM设计原理与实现》这本书深入探讨了Java虚拟机(JVM)的工作原理及其在Java编程中的核心地位。Java虚拟机是Java平台的核心组成部分,它负责执行字节码,为开发者提供了跨平台的运行环境。以下是...

    自己动手写Java虚拟机 kindle 版本

    本书是继《深入理解Java虚拟机》之后的又一经典著作,它一方面遵循《Java虚拟机规范》,一方面又独辟蹊径,不仅能让Java虚拟机的学习变得更加简单和有趣,而且能让你对Java虚拟机的原理认识更深入和更深刻!...

    Java虚拟机规范中文版.pdf

    为了更好地理解Java虚拟机的内部工作原理,开发者通常需要对JVM规范有深入的认识。例如,对JVM的垃圾回收算法的了解,有助于开发者编写出更适合自动内存管理的代码。了解JVM的线程模型,有助于编写高性能的多线程...

    深入理解Java虚拟机(jvm性能调优+内存模型+虚拟机原理).txt

    深入理解Java虚拟机详细视频教程,包括jvm性能调优、Java内存模型及虚拟机原理。有详细的文档资料,配合深入理解Java虚拟机书籍学习效果更佳

    Java虚拟机学习资料

    以下是对"深入理解Java虚拟机学习资料"的详细解析: 一、JVM概述 Java虚拟机是Java平台的核心组成部分,它负责加载、验证、执行Java字节码,并管理内存。JVM的设计目标是实现“一次编写,到处运行”。通过JVM,Java...

    30+个视频+深入理解Java虚拟机(jvm优化+内存模型+虚拟机原理)

    根据提供的文件标题、描述、标签以及部分内容,我们可以深入探讨与...通过以上介绍,我们不仅深入了解了Java虚拟机的基础知识,还学习到了如何对其进行优化和调整以提高应用程序性能。希望这些知识点能对你有所帮助!

    《Java虚拟机规范》

    标题《Java虚拟机规范》主要关注点是Java虚拟机(JVM)的设计与工作原理,这包括对Java字节码的理解以及它如何在不同硬件和操作系统平台上实现跨平台的特性。规范中详细介绍了class文件的格式,这是Java源代码编译后...

    深入java虚拟机 高清pdf 高清高清高清

    它详尽地探讨了Java虚拟机的工作原理、内存管理、类加载机制、字节码执行以及性能优化等多个核心主题,旨在帮助开发者提升程序的运行效率和稳定性。 1. **Java虚拟机概述**:Java虚拟机是Java平台的核心组件,它...

    java虚拟机的两本书

    这两本书,《深入Java虚拟机》和《Java虚拟机第二版》,是深入理解JVM内部工作原理的重要参考资料。 《深入Java虚拟机》通常包含了JVM的详细剖析,涵盖了诸如类加载机制、字节码执行、内存管理、垃圾收集、性能优化...

    Java虚拟机规范(Java SE 7).pdf

    《Java虚拟机规范(Java SE 7)》是Java开发者深入理解Java运行机制的重要参考资料,它详细阐述了Java虚拟机(JVM)的工作原理和内存管理机制,为开发者提供了宝贵的洞察力,帮助他们优化程序性能,理解和解决运行时...

    JAVA虚拟机解读入门

    《JAVA虚拟机解读入门》是一本面向初学者的指南,旨在带领读者深入理解Java虚拟机(JVM)的工作原理和内部机制。JVM是Java语言的核心组成部分,它为Java程序提供了一个跨平台的运行环境,使得“一次编写,到处运行”...

    Java虚拟机规范(SE 7中文版)

    译者们为了确保翻译的准确性和可读性,使用了通俗易懂的语言介绍了Java虚拟机的约束与运作原理,并在难以理解的地方加上了“译者注”以帮助读者理解。译者们明确指出,任何翻译的不妥之处和意见或建议都可以通过指定...

    Java 虚拟机原理教程

    了解和深入学习Java虚拟机的工作原理对于Java开发者来说至关重要,它可以帮助优化代码性能,理解内存管理,解决并发问题,以及调试和诊断应用程序。JVM的不断发展也推动了Java语言的进步,如Java 9引入的模块系统...

Global site tag (gtag.js) - Google Analytics