【发布时间】:2011-08-20 16:40:41
【问题描述】:
我正在尝试找到 Dalvik 的 interperter 循环的入口点。
我已经阅读了 Android (2.1 froyo) 启动代码,直到调用了“env->CallStaticVoidMethod()”。这意味着“开始在 Dalvik 中运行 JAVA 静态 void 方法”。在我的例子中,指定的方法是 ZygoteInit 的 main 方法。
但是,我在代码中的任何地方都找不到此入口方法(“CallStaticVoidMethod”)的 c/cpp 实现 - 只有引用和声明。
所有其他解释器入口点也是如此 - CallObjectMethod、CallBooleanMethod 等...
在源代码的 dalvik/vm/Jni.c 文件中,有一个全局变量 gNativeInterface 保存了指向所有这些函数的指针。它是用我找不到定义的符号初始化的(我怀疑这是因为使用了一些宏来定义它们)。
首先感谢所有回复者。
【问题讨论】:
标签: android java-native-interface interpreter dalvik