为什么在openJDK的官网上只有port:mips,而没有port:loongson呢

今天为了解决oralce官网上下的javafx sence builder工具不能在龙芯上跑的问题,想找一个的源码自已编译,突然发现官网上没有龙芯移值这个栏目 ,有mips的主页但只是一个简单的介绍和一个maillist没什么实质内容,感觉龙芯的国际影响还是太小了,现在龙芯版的jdk8也挺好用的,为什么不申请放上去呢。
已邀请:

aoqi

赞同来自: Holoo

OpenJDK运行时的二进制主要来源两部分,一个是gcc编译生成的代码,一个是JVM本身动态生成的代码。
对于gcc生成的二进制,是否兼容是由gcc保证的,目前龙芯发布的OpenJDK二进制有两个:loongnix源上的rpm包和官网上的tar包(http://www.loongnix.org/index.php/Java),这两个二进制的编译环境都是Loongnix系统,默认参数是loongson3a,故只能在龙芯平台上运行。如果想让gcc生成的二进制跟标准MIPS兼容需要使用相应的编译参数重新编译OpenJDK即可。
对于JVM动态生成的代码,是否兼容是由龙芯JVM的研发决定的。这部分龙芯在研发时是有考虑的,基本上在所有使用了龙芯专有指令的地方也都对应的使用了符合MIPS标准的实现,在动态生成代码时会根据当前运行平台进行动态的调节,比如在运行时JVM会检测正在运行的CPU是gs464、gs464e还是非龙芯芯片,相应的会生成相对于该芯片的机器码。
因此可以说,龙芯OpenJDK是跟标准MIPS兼容的,只不过龙芯目前还没有对非龙芯的MIPS芯片进行过测试,也没有发布兼容的二进制。感兴趣的话大家可以自己试一下。
 
另外关于向官方社区提交代码的问题,龙芯OpenJDK一直在做相关的尝试,未来可能会进行更多的努力,争取将龙芯的代码回馈给官方社区。

jiangtao9999

赞同来自:

龙芯有扩展指令,导致和 mips 官方的不兼容。
而且龙芯似乎也没有先做个 mips 版,之后再用开关打开关闭龙芯专有指令的习惯。
所以,你这个提交以什么架构去做呢?如果是 mips ,人家肯定没法收。
如果不是 mips ,那你又覆盖了 mips 的内容。

heiher - 生态破坏者?

赞同来自:

可能是因为错过了提交窗口或没有跟进开发分支吧,记得龙芯中科之前公开过java的开源仓库,可以一试。

wlxn

赞同来自:

原来是这 样啊,融入开源社区的好处不用多说了,希望 龙芯再接再厉吧。期待看到官方站点上有龙芯的一席之地。这也与是胡总建立第三极的目标是一致的。
   不过多说一句,龙芯的人手毕竟 有限,可能有高手,但与社区比人手还是少些。应该多做点培育社区的工作,牵个头就好,全靠自已可能有点不够啊。

说点具体的,现在jdk8是可以用了。但是我想用javafx,和virsualVM的时候,发现找不到龙芯版的下载。

自已只好找源码编译,也碰到不少问题。龙芯java开发组如果看以也请关注一下。如果能放在loongnix仓库中就好了。

要回复问题请先登录注册