Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
一直在寻找stackoverflow的答案,但无济于事。来自本网站的链接 如何在 Dalvik 虚拟机上执行 Android 应用程序。 有代码编译流程示意图
简单的问题是机器代码(或最终代码或本机指令)在哪里?
dalvik 字节码是机器码(最终转换或编译的代码)吗?
或者还有另一个编译步骤?
此外,跟踪的 JIT 编译出现在块中的什么位置?是在 DEX 编译器中还是在 DVM 中?
谢谢你的时间。
好的认为已经找到了答案。
1.编译流程
.java 文件——交给——java 编译器——生成——.class 文件。
所有 .class 文件 -- 交给 -- dx 工具 -- 生成单个 -- dex 文件
dex 文件——交给——dvm——生成——最终的机器码。
最终的机器代码——交给——CPU——执行。
2. JIT 编译器是 JVM 的一项功能,可将 JVM 指令块编译为本机机器码。
如果有任何误解,请在评论中通知。将修复答案。