栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

JVM 虚拟机系列:通识、架构

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

JVM 虚拟机系列:通识、架构

JVM原理(一)JVM通识、JVM架构_多学习多思考-CSDN博客_jvm

一、JVM通识 

       学习JVM的目的

面试重灾区,我们必须搞懂它。生产过程中,肯定会面临JVM调优相关问题,需要也必须搞懂它。打基础,想搞懂我们java赖以生存的环境长什么样子,提升对Java知识点的理解。

1.1 程序的执行方式

     程序执行的方式主要有三种:静态编译执行,动态编译执行和动态解释执行。(编译是指:编译成可让操作系统直接执行的机器码)

      静态编译执行语言:C 、C++

      动态编译执行(运行中进行编译):JVM

      动态解释执行(一行编译一行执行):JVM

1.2 为啥使用JVM

    很显然 JVM帮我们屏蔽了操作系统。

    如果时C语言直接编译的机器码,在编译之前需要知道目标操作系统,比如Window操作系统编译之后的字节码时无法在 Linux操作系统上运行的。

      

1.3 机器码和字节码的区别

      机器码时电脑CPU直接是识别并读取的机器指令,运行速度很快,但是比较晦涩难懂,难以编写。字节码时一种中间状态的二进制文件,需要直译器翻译转译后才能成功机器码

1.4 JDK JRE JVM之间的关系

     显然,JDK包含了 JRE和编译器等一些开发工具,JRE时java程序运行环境。JDK:java开发工具包,既包含了JRE也包含了一些编译工具如:javac  javap。 JRE属于java程序运行环境。JVM在JRE中。

1.5 OracleJDK 和 OpenJdk

      OrcalJDK 是基于OpenJDK源代码构建的,因此OracleJDK 和 OpenJdk之间没有重大差异。

1.6  JVM和Hotspot之间的关系

        JVM是《JVM虚拟机规范》中提出来的规范。

Hotspot是使用JVM规范的商用产品,除此之外还有Oracle JRockit、IBM的J9也是JVM产品

1.7  JVM 和Java之间的关系

      JVM只认识 .class文件,但是并不是只有 java文件才可以编译成 class文件

1.8  JVM的运行模式

 JVM有两种运行模式:Server模式与Client模式。

两种模式的区别在于:

Client模式启动速度较快,Server模式启动较慢;
但是启动进入稳定期长期运行之后Server模式的程序运行速度比Client要快很多。
因为Server模式启动的JVM采用的是重量级的虚拟机,对程序采用了更多的优化;而Client模式启动的JVM采用的是轻量级的虚拟机。所以Server启动慢,但稳定后速度比Client远远要快。
 

一、JVM架构 

架构主要分为:class file、类加载子系统、运行时的数据区、执行引擎。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/741254.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号