高手问答第 227 期 —— 邓凡平老师做客 OSChina,从源码角度讲解 ART 虚拟机

局长 发布于 05/08 07:24
阅读 3K+
收藏 11

Android 设备的大规模普及使得 ART 虚拟机成为使用广泛的 JVM 之一。作为 Android 开发者,对 ART 虚拟机的研究有着非同寻常的意义。而 ART 虚拟机作为 Android 平台的核心底层技术实现,若要对其进行较为全面和深入的认识,剖析源码是绕不过去的一步。

本期高手问答邀请到了邓凡平老师@邓凡平 和我们一起深入了解 Android 的 Java 虚拟机 ART。

邓凡平,目前就职于民生银行总行科技部创新技术研究院,钻研和探索物联网等新技术在金融领域中的应用。曾就职于索尼移动,担任资深软件架构师。

作为资深的 Android 技术专家,邓老师也是国内早期从事 Android 技术研究和开发的工程师之一。从 2011 年起他就已经开始系统分析 Android 源码,称得上是国内 Android 源码分析领域的奠基人。从底层的虚拟机,到中间的系统层和框架层,再到上层的各种应用。邓老师对整个 Android 系统的源代码有非常深入的研究和理解,策划并撰写了“深入理解Android”系列图书(目前已出版8本),是广大 Android 工程师系统、并深入了解 Android 系统源代码的首选。

本期「高手问答」欢迎大家对 Android 底层以及源码方面的问题进行提问,尤其是 ART 虚拟机相关的问题,当然其他 Android 相关问题也可以在此提问。

为了鼓励踊跃提问,@华章 会在问答结束后从提问者中抽取 5 名幸运会员赠予《深入理解Android:Java虚拟机ART》一书。

图书购买地址:京东

OSChina 高手问答一贯的风格,不欢迎任何与主题无关的讨论和喷子。

下面欢迎大家向邓凡平老师@邓凡平 积极提问,直接回帖提问即可。

加载中
0
进军
进军

@邓凡平 想问一下,对于华为的方舟怎么看。方舟编译器具备普遍性还是目前只能用于华为手机

邓凡平
邓凡平
回复 @进军 : 不要着急,过几天就会开源
进军
进军
回复 @邓凡平 : 难道方舟是编译的那种跳过虚拟机的字节吗?如果真是这样的话,理论上华为就可以出一个可以原生运行apk的linux系统了,同时还想问一下,这个方舟,感觉和oracle的graalvm有点像。。。
邓凡平
邓凡平
https://mp.weixin.qq.com/s/Ia4BnJiOMsRnfU3KjykefA 借华为方舟编译器,谈一下Android ART JVM的几个有趣知识点。您看一下这个,就明白方舟编译器如果真搞出来,那绝对了不得了
0
xiaolei123
xiaolei123

@邓凡平 对于ART,有没有下一代?如果有,优化的方向是哪些呢?

邓凡平
邓凡平
今年谷歌io压根没提ART,这玩意已经很稳定了.....优化的话 大概是改些bug,或者一个叫Cloud ART Profile的东西,意思是把其他人使用某个app的情况传到google play store。当一个新用户下载这个app的时候,就可以直接根据这个使用情况进行编译。现在是自己先运行一段时间,得到类似的数据然后再编译。
0
_凤求凰_
_凤求凰_

大牛,我没有啥问题,就像 @ 你  @邓凡平

邓凡平
邓凡平
头发少好,夏天不热 呵呵
0
我的名字叫李猜
我的名字叫李猜

看头发就知道您是一位非常🐂🍺的人@邓凡平

邓凡平
邓凡平
我刚工作的时候就是这样了。那时候不懂技术,被领导瞧不起
0
开源中国奈非天
开源中国奈非天

@邓凡平 源码阅读应该从哪方面入手,如何快速有效的理解源码

九离天
九离天
回复 @邓凡平 : 看到这个推文,路过点赞
邓凡平
邓凡平
这个得长期训练了,至少1年为起步吧。我在CSDN上有过两次专访,是讲这个的。您可以看看。另外, 上周推了一篇公号,叫关于android学习的三个终极问题,您可以看看 https://mp.weixin.qq.com/s/35mwjD19q2AMOsjAnOmBbA
0
曾赛
曾赛
顶 @邓凡平
邓凡平
邓凡平
我有个初中同学叫这个名字,不过应该不是兄弟您,那人早已发财 :)
0
pkxutao
pkxutao

@邓凡平 请问您工作中哪些模块或功能使用了jni技术呢?因为平常都是简单的应用层开发很少使用jni方面的知识,还有就是ART虚拟机相对Dalvik的GC优势在哪里呢?谢谢

邓凡平
邓凡平
JNI我用得很多,比如很多APP加固,加解密的话,几乎都是用jni来做的。主要是反编译困难。dalvik已经不存在了,不需要讨论了。ART的话,我那本书对GC有介绍,但是没有对比。我还是偏原理分析一些,做性能测试等专业项少。谢谢哈
0
八一菜刀
八一菜刀

@邓凡平 你好,不管是Java虚拟机还是Android虚拟机,源码研究方面有什么好的建议吗?

邓凡平
邓凡平
基于源码的分析,有一本HotSpot实战,400页左右。搞java后台可以了解下,但android这块的话,我这本书还是第一本,您可以先看看。谢谢
0
红薯
红薯

@邓凡平 又出新书了啊,厉害厉害

邓凡平
邓凡平
红薯哥,好久不见您了。做领导,带领兄弟们发财,我还在一线做码畜:(
0
打杂uu
打杂uu

@邓凡平 ART虚拟机源码技术,对以后的 工作有哪些启示作用?

邓凡平
邓凡平
这个不好说,亲。我也在思考“深入理解”的目标是什么。前几天刚发了一个公众号文章,https://mp.weixin.qq.com/s/hZrTlo3sSENtOQVbJ_h2Dg 您可以看看
返回顶部
顶部