gpt4 book ai didi

c++ - unsafe.cpp 如何链接到 openJDK 构建系统中的 Unsafe.java

转载 作者:行者123 更新时间:2023-11-28 05:58:12 28 4
gpt4 key购买 nike

我已将 unsafe.cpp 和 Unsafe.java 克隆到自定义版本。我要构建新的 JVM,但似乎我的 UnsafeNew.java 内联了 unsafe.cpp 方法,而不是新的 unsafenew.cpp 方法。

希望具有 openJDK 构建系统专业知识的人知道这是如何联系在一起的。

谢谢

汤姆

最佳答案

好吧,至少在 openJDK 7 中,答案是它被硬编码到构建系统中。虽然常规 JNI 需要 LoadLibrary() 调用,但对于 Unsafe 和少数其他文件,这是由编译器完成的。

在 hotspot/src/share/vm/prims/nativeLookup.cpp 中有一个名为

的数组
JNINativeMethod lookup_special_native_methods[] 

包括

{ CC"Java_sun_misc_Unsafe_registerNatives",NULL, FN_PTR(JVM_RegisterUnsafeMethods)} 

这就是诀窍。

我希望我在这方面对某人有所帮助。

汤姆

关于c++ - unsafe.cpp 如何链接到 openJDK 构建系统中的 Unsafe.java,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33781468/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com