论坛
潜水/灌水快乐,沉淀知识,认识更多同行。
ToB圈子
加入IT圈,遇到更多同好之人。
朋友圈
看朋友圈动态,了解ToB世界。
ToB门户
了解全球最新的ToB事件
博客
Blog
排行榜
Ranklist
文库
业界最专业的IT文库,上传资料也可以赚钱
下载
分享
Share
导读
Guide
相册
Album
记录
Doing
应用中心
搜索
本版
文章
帖子
ToB圈子
用户
免费入驻
产品入驻
解决方案入驻
公司入驻
案例入驻
登录
·
注册
账号登录
立即注册
找回密码
用户名
Email
自动登录
找回密码
密码
登录
立即注册
首页
找靠谱产品
找解决方案
找靠谱公司
找案例
找对的人
专家智库
悬赏任务
圈子
SAAS
qidao123.com技术社区-IT企服评测·应用市场
»
论坛
›
数据库
›
Oracle
›
Dalvik假造机、ART假造机与JVM的核心区别
Dalvik假造机、ART假造机与JVM的核心区别
玛卡巴卡的卡巴卡玛
论坛元老
|
5 天前
|
显示全部楼层
|
阅读模式
楼主
主题
1864
|
帖子
1864
|
积分
5592
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要
登录
才可以下载或查看,没有账号?
立即注册
x
一、架构设计差别
指令集架构
JVM
:基于
栈结构
,所有利用(如算术运算、方法调用)均依赖利用数栈完成,指令集紧凑但实行效率较低(需频繁内存交互)。
Dalvik
:基于
寄存器架构
,直接利用假造寄存器,指令更少且实行速率更快(如add-int/2addr一条指令即可完成加法)。
ART
:继承Dalvik的寄存器架构,但通过
AOT预编译
直接将字节码转为机器码,制止运行时表明或JIT编译。
字节码格式
JVM
:实行.class文件,每个类独立编译,存在冗余信息(如重复字符串常量)。
Dalvik/ART
:使用.dex文件,合并多个.class文件并去除冗余,体积更小(如Google+ APK代码体积减少75%),且支持跨类共享常量池。
二、实行机制对比
特性
JVM
Dalvik
ART
编译方式
JIT(运行时编译)JIT(运行时编译)
AOT(安装时预编译)
+ JIT(热代码优化)
启动速率
中等(需加载类库)
慢
(首次需JIT编译)
快
(直接实行机器码)
内存占用
高(栈利用频繁)中等(寄存器优化)低(预编译减少暂时对象)
存储开销
低(.class文件)低(.dex压缩优化)
高
(预编译机器码增加10%-20%存储)
三、内存管理与垃圾回收(GC)
JVM
GC算法
:标记-扫除(Mark-Sweep)、分代收集(如G1),停顿时间较长。
堆管理
:每个对象头部存储GC标记,内存碎片化较严峻。
Dalvik
GC机制
:采用Mark-Sweep,
频繁触发GC
(尤其低内存装备),导致界面卡顿。
堆分区
:分为Zygote堆(预加载核心类)和Active堆(应用对象),通过写时复制(Copy-on-Write)优化进程创建。
ART
GC优化
:引入
并发标记-扫除
(Concurrent Mark-Sweep),减少停顿时间;支持分代GC,提拔回收效率。
内存分配
:采用RosAlloc、BumpPointer等算法,减少碎片化并提拔分配速率。
四、性能与实用场景
计算密集型任务
JVM
:通用性强,但效率低于寄存器架构(如ARM装备上浮点运算性能差)。
Dalvik
:JIT动态优化热代码,但运行时编译开销大(如游戏场景CPU占用率高)。
ART
:AOT预编译+JIT混淆模式,复杂计算流畅(如3D渲染帧率提拔30%)。
多进程与资源隔离
JVM
:单进程多线程,依赖利用体系线程调理。
Dalvik/ART
:
每应用独立进程
,通过Linux进程隔离保障安全性(如瓦解不影响其他应用)。
五、设计目的与生态定位
JVM
:
跨平台核心
:实现“一次编译,随处运行”,依赖差别平台的JVM实现(如Windows JDK与Linux JDK)。
通用性优先
:牺牲部分性能调换广泛的硬件兼容性。
Dalvik/ART
:
移动端优化
:针对ARM架构和低功耗装备设计,夸大能效比(如ART的AOT编译低落CPU连续负载)。
体系集成
:深度整合Android特性(如Zygote进程预加载、Binder IPC),提拔启动速率和响应能力。
总结
Dalvik vs JVM
:寄存器架构与栈架构的本质差别导致Dalvik在移动端更高效,但JVM的跨平台能力不可替换。
ART vs Dalvik
:AOT预编译彻底解决JIT的运行时开销,但牺牲存储空间调换性能飞跃。
实用场景
:
JVM得当服务器和桌面应用,Dalvik/ART专为Android移动生态优化。
ART的混淆编译模式(AOT+JIT)均衡了安装时间与运行效率,成为Android 5.0+的性能基石。
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复
使用道具
举报
0 个回复
倒序浏览
返回列表
快速回复
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
or
立即注册
本版积分规则
发表回复
回帖并转播
回帖后跳转到最后一页
发新帖
回复
玛卡巴卡的卡巴卡玛
论坛元老
这个人很懒什么都没写!
楼主热帖
SQL SERVER事务提交回滚
Kubernetes(k8s)Deployment、Statefu ...
基于STM32的手势识别检测
【C++】ZZ1864- 解题精讲
一文读懂,硬核 Apache DolphinSchedul ...
ConcurrentHashMap源码,看我这篇就够 ...
如何用技术改变生活
软件无线电安全之GNU Radio基础 -上 ...
【Openxml】颜色变化属性计算 ...
数据类型的内置方法
标签云
渠道
国产数据库
集成商
AI
运维
CIO
存储
服务器
快速回复
返回顶部
返回列表