JVM和Dalvik的区别

本文详细对比了Dalvik、JVM和KVM三种虚拟机的运行环境、语言支持、运行式和效率等方面的异同,深入探讨了它们在不同场景下的适用性和性能表现。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

基于平台不同:

Dalvik基于寄存器,而JVM基于栈,KVM基于栈 

运行环境不同:

在有限的内存,允许同时运行多个Dalvik实例,并且每一个Dalvik应用作为一个独立的Linux进程执行。 

        JVM只能运行一个JVM实例,JVM因平台的不一样进程也不一样。 
        KVM只能一个实例运行。 
运行语言:   
Dalvik可以运行不同的语言,如java和Scala。 

        JVM可以运行不同的语言,如java和Python语言 
        KVM运行j2me语言 

运行格式不同:

Dalvik是.dex

JVM一般是.class

KVM一般是.class 

编写语言:

Dalvik是一般由C或C++编写

JVM一般是C++或java编写

KVM一般是C或C++ 

效率不同:

Dalvik是基于寄存器所以效率高于基于栈的JVM,KVM 

加载函数不同:

Dalvik是Dexfile加载class类文件

JVM和KVM是ClassLoader 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值