JVM解释器和编译器

首先看一个命令

[[email protected] ~]# java -version
java version "1.8.0_191"
Java(TM) SE Runtime Environment (build 1.8.0_191-b12)
Java HotSpot(TM) 64-Bit Server VM (build 25.191-b12, mixed mode)

再看几个名词

hotspot包括server和client两种模式的实现:

Java HotSpot Client VM(-client),为在客户端环境中减少启动时间而优化;

Java HotSpot Server VM(-server),为在服务器环境中最大化程序执行速度而设计。

启动时间上client模式较快,运行速度上server模式较快,最重要的是server垃圾回收处理的好。

原文地址:https://www.cnblogs.com/mutong1228/p/10311120.html

时间: 2024-11-20 04:48:54

JVM解释器和编译器的相关文章

JVM实用参数(一)JVM类型以及编译器模式

JVM实用参数(一)JVM类型以及编译器模式 原文地址:https://blog.codecentric.de/en/2012/07/useful-jvm-flags-part-1-jvm-types-and-compiler-modes/ 译者:赵峰,iDestiny    校对:郭蕾 现在的JVM运行Java程序(和其它的兼容性语言)时在高效性和稳定性方面做的非常出色.自适应内存管理.垃圾收集.及时编译.动态类加载.锁优化——这里仅仅列举了某些场景下会发生的神奇的事情,但他们几乎不会直接与普

在C,C++,java和python运行时解释器和编译器的区别

在这四种语言里有两种不同的程序运行过程: 1.  高级语言-> 机器代码: C和C++的编译过程有几个步骤: > 预编译: 将.c 文件转化成 .i文件),使用的gcc命令是:gcc –E,对应于预处理命令cpp > 编译: 将.c/.h文件转换成.s文件, 使用的gcc命令是:gcc –S, 对应于编译命令 cc –S > 汇编:将.s 文件转化成 .o文件,使用的gcc 命令是:gcc –c,对应于汇编命令是 as > 链接:将.o文件转化成可执行程序,使用的gcc 命令

解释器和编译器,编译型原理和解释型原理

解释器: 解释器(英语:Interpreter),又译为直译器,是一种电脑程序,能够把高级编程语言一行一行直接转译运行.解释器不会一次把整个程序转译出来,只像一位“中间人”,每次运行程序时都要先转成另一种语言再作运行,因此解释器的程序运行速度比较缓慢.它每转译一行程序叙述就立刻运行,然后再转译下一行,再运行,如此不停地进行下去. 解释器运行程序的方法有: 1.直接运行高级编程语言 (如 Shell 自带的解释器) 2.转换高级编程语言码到一些有效率的字节码 (Bytecode),并运行这些字节码

用VC编译lua源码,生成lua语言的解释器和编译器

用VC编译lua源码,生成lua语言的解释器和编译器 1.去网址下载源码 http://www.lua.org/download.html 2.装一个VC++,我用的是VC6.0 3.接下来我们开始编译源码,我们需要编译: 一个静态库 一个动态库 一个lua语言解释器 一个lua编译器 建立一个工静态库工程 打开VC-->文件-->(点击)新建--(弹出框中选择)工程-->(win32 static library) 创一个空的工程 工程名为luaLib 把lua中所有的源码添加,去掉其

解释器和编译器的区别

http://blog.csdn.net/xuqiaobo/article/details/52534947 解释器和编译器两者各有优势:当程序需要迅速启动和执行的时候,解释器可以首先发挥作用,省去编译的时间,立即执行.在程序运行后,随着时间的推移,编译器逐渐发挥作用,把越来越多的代码编译成本地代码之后,可以获得更高的执行效率.当程序运行环境内存资源限制较大,可以使用解释器节约内存,反之可以使用编译执行来提升效率.同时,解释器还可以作为编译器激进优化时的一个逃生门,让编译器根据概率选择一些大多数

ios开发 解释器和编译器

儿子和女儿——解释器和编译器的区别与联系 菜鸟经常将编译器和解释器弄混淆,无奈之下,于是向高手请教. 高手说: “ 解释器是一条一条的解释执行源语言.比如php,postscritp,javascript就是典型的解释性语言. 编译器是把源代码整个编译成目标代码,执行时不在需要编译器,直接在支持目标代码的平台上运行,这样执行效率比解释执行快很多.比如C语言代码被编译成二进制代码(exe程序),在windows平台上执行. ” 菜鸟说:“我还是不明白,能给个形象的比喻么?” 高手说:“给你讲个故事

儿子和女儿——解释器和编译器的区别与联系

https://www.cnblogs.com/sword03/archive/2010/06/27/1766147.html 菜鸟经常将编译器和解释器弄混淆,无奈之下,于是向高手请教. 高手说: “ 解释器是一条一条的解释执行源语言.比如php,postscritp,javascript就是典型的解释性语言. 编译器是把源代码整个编译成目标代码,执行时不在需要编译器,直接在支持目标代码的平台上运行,这样执行效率比解释执行快很多.比如C语言代码被编译成二进制代码(exe程序),在windows平

JVM、java编译器和java解释器

JVM:JVM有自己完善的硬件架构,如处理器.堆栈(Stack).寄存器等,还具有相应的指令系统(字节码就是一种指令格式).JVM屏蔽了与具体操作系统平台相关的信息,使得Java程序只需要生成在Java虚拟机上运行的目标代码(字节码),就可以在多种平台上不加修改地运行.JVM是Java平台无关的基础.JVM负责运行字节码:JVM把每一条要执行的字节码交给解释器,翻译成对应的机器码,然后由解释器执行.JVM解释执行字节码文件就是JVM操作Java解释器进行解释执行字节码文件的过程. Java编译器

解释器与编译器 (收集)

1. 在具体计算机上实现一种语言,首先要确定的是表示该语言语义解释的虚拟计算机,一个关键的问题是程序执行时的基本表示是实际计算机上的机器语言还是虚拟机的机器语言.这个问题决定了语言的实现.根据这个问题的回答,可以将程序设计语言划分为两大类:编译型语言和解释型语言. 2. 由编译型语言编写的源程序需要经过编译.汇编和链接才能输出目标代码,然后机器执行目标代码,得出运行结果,目标代码由机器指令组成,一般不能独立运行,因为源程序中可能使用了某些汇编程序不能解释引用的库函数,而库函数代码又不在源程序中,