安卓虚拟机有哪些 ios上的安卓虚拟机步骤

在Stackoverflow上看到一个讨论Java和Python对比的问题。有人问为什么Java的运行环境叫JVM,而Python的只能叫解释器?(标题来自:gfi.com)估计没多少人想过这个问题。首先看一下***,看看虚拟机的定义。虚拟机有两种定义,一种是类似Vmware的系统虚拟机,一种是被称为程序虚拟...

在Stackoverflow上看到一个讨论Java和Python对比的问题。有人问为什么Java的运行环境叫JVM,而Python的只能叫解释器?

(标题来自:gfi.com)

估计没多少人想过这个问题。首先看一下***,看看虚拟机的定义。

虚拟机有两种定义,一种是类似Vmware的系统虚拟机,一种是被称为程序虚拟机的虚拟机,比如JVM。CLR是最常见的虚拟机。

虚拟机也称为托管运行时环境。当运行这个虚拟机时,它就像普通OS中的一个进程。当该进程启动时,虚拟机启动,当该进程被销毁时,虚拟机被销毁。使用虚拟机的目的是提供一个平台无关的编程环境。

JVM中的执行引擎只能处理编译好的Java字节码。字节码处理引擎实际上包含了一个字节码解释器和一个JIT编译器(这与CLR中的JIT有很大的不同。网)。解释器逐个执行字节码指令,速度稍慢。JIT编译器缓存热代码的编译,所以执行速度加快。

解释器的概念比较简单。它可以翻译和运行代码,无需编译。JVM里的解释器官方是这样的,JVM解释的是字节码。解释程序有三种运行程序的方式:

直接运行高级编程语言(如Shell内置的解释器)转换高级编程语言码到一些有效率的字节码(Bytecode),并运行这些字节码以解释器包含的编译器对高级语言编译,并指示处理器运行编译后的程序(例如:JIT)

Python的解释器属于第二种。Python代码第一次运行时,会把Python代码编译成字节码。如果可能的话,它会将这个字节码保存到一个. pyc文件中,这样下次启动时就不会编译这些代码,而是直接解释正在运行的字节码。事实上,这种机制正在模糊解释器和编译器之间的界限,或者解释语言和编译语言之间的界限。

通过对JVM和解释器概念的澄清,我好像还是不明白JVM为什么叫虚拟机。JVM中有字节码在运行,可能是直接解释执行,也可能是重新编译成目标语言。Python中的解释器也会在解释和执行之前将Python代码预编译成字节码。那么有什么区别呢?

很多人参与了讨论,从不同的角度解释了不同之处。

有些人认为虚拟机是独立于语言的。以JVM为例。除了Java,Scala、Clojure甚至Python都可以借助Jython工具在JVM上运行,但是除了Python之外,我还没有听说过有哪种语言可以被Python解释器解释执行。

也有人说Java是静态语言,而Python是动态语言。这使得Java字节码能够被解释和执行,或者被编译成机器指令来执行。另一方面,Python要复杂得多。虽然它允许程序员不关注变量的类型,但解释器必须推断数据类型,这在一定程度上影响了性能。

还有一种观点认为解释器是历史遗留下来的术语,现代语言中虚拟机和解释器的界限模糊甚至不存在。

事实上,在《学习Python》这本书里,作者看到Python的解释者叫PVM。基于这个事实,我同意解释器和虚拟机的区别越来越小,已经到了你我同舟共济的地步。从独立分割的角度来看,或许可以把这些步骤区分为解释器行为,把这些步骤区分为虚拟机行为,但是整体来看,两者的区别真的没有那么明显。

本文来自无言温柔天然对象投稿,不代表舒华文档立场,如若转载,请注明出处:https://www.chinashuhua.cn/24/508763.html

打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
() 0
上一篇 04-17
下一篇 04-17

相关推荐

  • 泰国哪些海岛可以潜水

    3值得逛的大皇宫泰国大城王朝遗址黎明寺奈哈恩拉威隆恩岛4芭东沿海三公里新月型的海滩上遍布旅馆超级市场购物中心和各种娱乐设施,吃喝玩乐,样样齐全旅游景点的东西都比较贵,不划算,不推荐买。周边岛屿更有无穷乐趣等你体验,被誉为“全球潜水启蒙课堂”的涛岛,举行疯狂满

    2023-07-29 10:39:01
    316 0
  • 个体户营业执照有哪些行业选择 个体户行业详细介绍

    随着大量新个体经济的出现,除了国家的大力倡导,很多企业设计的商业模式早已针对新个体,但很多人并不知道什么是新个体。实际上,新个体是相对于旧个体而言的。老个体户指的是80年代初的样子。由于长期的规范化发展,现在大部分都注册了自己的营业执照。老个人包括开店、搬运

    2023-07-29 10:09:01
    995 0
  • 高尔夫球杆品牌有哪些(高尔夫球杆的十大品牌介绍)

    最近,许多朋友私下写信给边肖,请边肖为他们推荐一家合适的高尔夫俱乐部。为了给朋友们提供正宗、可靠、性价比高的高尔夫球杆,边肖收集测量了很长时间,最终整理出边肖比较熟悉的五个高尔夫品牌,排名不分先后。快来看,一探究竟。1.卡拉威始于1982年的美国,全球最大的高尔

    2023-07-29 08:34:01
    363 0
  • 小加工项目有哪些(农产品加工项目有哪些)

    年轻人如何创业,是当代人讨论的话题。很多人都希望有一个好的项目。比如想做小规模生产加工的朋友也在问到底哪些项目赚钱?现在到处都有很多项目,但真正能赚钱的很少。7个好的商业机会建议第一,编织工艺制品,利用身边的一些自然资源,组织当地人进行一些工艺品加工项目,

    2023-07-29 08:03:01
    972 0

评论列表

联系我们

在线咨询: QQ交谈

邮件:admin@qq.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信