7月 072020
一、Art的诞生
Art是在Android4.4系统中加入的,但是默认是不开启的
Art和Dalvik的切换是通过指定一个系统设置项来切换的,见art/Android.mk中.PHONY: use-art下面那一段脚本
本文摘录片段
1 2 3 |
adb shell setprop persist.sys.dalvik.vm.lib.2 libdvm.so adb shell setprop persist.sys.dalvik.vm.lib.2 libart.so adb shell setprop persist.sys.dalvik.vm.lib.2 libartd.so |
libdvm.so是DalvikVm的so库
libart.so是Art Vm的so库
之所以两个能同时切换,是因为他们都实现了JNI_Create_JavaVm的入口函数。
二、Art的崛起
在Android4.4加入Art之后,一直是默认没有开启的,直到Android5.0,DalvikVm彻底被删除,art担当大任
可以对比下4.4和5.0源码中dalvik/vm下的代码结构
http://androidxref.com/4.4_r1/xref/dalvik/vm/
http://androidxref.com/5.0.0_r2/xref/dalvik/vm/
可以看到从5.0开始,dalvik的代码已经被删除掉了
Sorry, the comment form is closed at this time.