openjdk 内存分析_分析:Google转向OpenJDK的真正含义

Oracle与Google的法律纠纷可能即将结束,Android正转向OpenJDK,这对Java生态和Android开发者带来积极影响。虽然Android不太可能采用Hotspot/JIT,也不支持Swing/AWT/FX,但Java兼容性的增强将促进平台的统一。Google的举动可能出于Java兼容性考虑,而非纯粹技术选择。对于旧版Android,解决方案如Retrolambda仍可应对。整体而言,这标志着Java社区向着更开放、更和谐的方向发展。
摘要由CSDN通过智能技术生成

openjdk 内存分析

自昨天以来,我一直在关注新闻爆炸,因为黑客的一篇新闻文章强调说,Android提交包含OpenJDK文件。 对于Java来说,这是一个了不起的消息,而且是向前迈出的一大步,目前尚不清楚这是否只是另一个举措,还是Google与Oracle之间达成和解的暗示,但我非常希望这确实是一个和解。 到目前为止,谷歌不会就此案以及它是否仍在和解中做出任何评论

免责声明:我在Sun / Oracle工作,但是对这里讨论的任何事情都不了解。 这里的信息来自公共资源,我对上述公司的心态的理解,以及我们对Codename One案的关注(我们在开始时就咨询了很多知识产权律师,这个案子一直在我们的脑海中)。

我已经在reddit和hacker新闻线程中阅读了很多评论,它们似乎包括对评论的一些投票,这些评论显然是错误的,这里是有关这些常见错误引用的简短FAQ /信息。

Android将移至Hotspot / JIT

那不太可能。 Java与OpenJDK的兼容性和兼容性不要求您使用随它附带的JIT或其任何源代码。 一些合规的实现则没有。

尽管Hotspot的性能可能会超过ART,但移动设备的启动时间性能与台式机性能却大不相同。 电池寿命比速度更重要,我怀疑热点是否为此而优化。

Swing / AWT / FX最终将在Android上得到支持

没有迹象表明,这似乎不太可能。

Google可以通过支持Java的子集来符合Java的要求,这要归功于Java 9的模块化变化,甚至更加容易。Swing/ AWT / FX的符合性使整个过程变得完全不同。

谷歌错了

有这样的说法,例如Google复制代码等。

我不喜欢Android与Java不兼容且分叉的事实,但我通常不同意该说法。 分叉Java可能在“道德上”是错误的,但我认为从法律上讲这不是错误的。 在审判的发现阶段,只有一种小方法被证明是直接复制,法官认为这很可笑。

Google并未违反Java和咖啡杯商标,这是保持Java清洁的重要工具。 例如,他们从未宣称Android运行Java,而是运行Android / Dalvik和现在的ART。 它编译Java源代码,这是一个巨大的飞跃。

该声明涉及对API进行版权保护,这是一个有问题的声明,因为Google确实使用了公共API的无尘室实现。 最高法院有效地表示,公共API的无尘室实现是非法的!

这是一件很不好的事情,因为版权是隐性的。 即使出版材料的人未明确在各种类型的作品旁边写下这么少的字词(c),也归其所有。 因此,如果您曾经实现过API,那么您现在可以有效地使用受版权保护的代码!

了解这一点的大多数程序员都认为Google的行为基于“合理使用”,这意味着他们实际上并未侵犯版权持有者的权利。

Oracle是一家贪婪的诉讼公司

并不是的。 Oracle确实起诉公司,但一般来说,大型公司可以负担得起,我不知道他们起诉初创公司或其他小公司(如果我在这里错了,请随时纠正我)。 与Sun相比,利润驱动得多。 我真的很喜欢Sun,也喜欢在那工作,我对Oracle不能这么说……

但是总而言之,Sun不再存在的部分原因是管理不善,也许不够“贪婪”。 在Java方面拥有强大的“地主”可能会在某些方面令人不安,但它有其优势。 我认为任何试图将Oracle视为“邪恶”的人都是错误的。

就像微软的诉讼一样

否。Microsoft是Java的被许可人,并使用代码创建了不兼容的实现。 Google是被许可人,但Android部门不是。 据我非律师所知,谷歌是Java的被许可人这一事实并未纳入审判。

这是关于Java兼容性

尽管Java兼容性很重要,并且Google确实在那方面造成了一定程度的损害(虽然不像诉讼那样严重,但仍然如此),但这不是造成这种情况的原因。

诉讼原本提到要赔偿60亿美元,而Google愿意支付1亿美元以和解……这就像大多数诉讼都涉及金钱一样。

起诉金钱并不一定很坏,但这显然比双方都付出了高昂的代价,因为它损害了市场上的Java并损害了其最大的两个用户(Oracle和Google)。 Sun过去每卖出一部J2ME手机都要按设备收取许可费,这笔钱实在是一笔不菲的钱。 我认为Sun失去了这一收入来源,因为它仅仅十多年都没有更新J2ME,而当它最终完成时为时已晚。

这对Java有好处吗?

是。 毫无疑问! 有人认为诉讼应该是Google的决定性胜诉,我认为那会很好,因为如上所述,我认为版权条款对整个行业没有好处。 但是那艘船已经航行了,现在对Java来说最好的事情是结束敌意并统一一种标准Java,因此它很棒。

此外,结束这种敌意意味着Java在法庭上证明了自己的斩获,这是一个巨大的里程碑。 当涉及法律体系选择使用更开放的技术(例如WebAssembly)时,开发人员经常会产生辩解。 诸如此类的技术可能具有可以被起诉的隐藏元素,而我们甚至都不知道,例如,几年前仅使用GIF文件就可以采取法律行动……

对于更开放的标准,这是有问题的,因为在这样的法院案件中,没有一个“房东”来推动该技术的发展。

Java已经出庭了好几天,而关于OpenJDK的好处之一就是它包含了专利许可条款。 这是罕见的,而且确实很有价值,如果Google和Oracle在OpenJDK上达成和解,这几乎意味着我们所有人都可以和平地支持它,而诉讼的可能性将大大降低。

此外,我认为这对于Android来说将非常有用,因为它最终将迁移到Java的更新版本,因此可能会享受更好的工具。 这也意味着,由于潜在的专利诉讼,Android的Runtime可能会避免的某些优化可能会应用于ART,从而带来更多好处。

Google开发人员对IP清洁度压力的减轻也可以提高Google的生产率,并使Android开发人员可以专注于开发更好的产品。

那么旧版本的Android呢?

对于那些人,我们将可以使用像代号One中那样的Retrolambda之类的东西。

这将如何影响代号?

现在,我们尝试使用Google使用无尘室实现来保护自己免受将来IP索赔的相同基本思想模式,尽可能避免OpenJDK代码。

我们会密切关注此情况,如果发生这种情况,我们将使自己与CLDC 8兼容,CLDC 8是有效的Java 8子集。 这不需要太多的工作,因为我们已经有50%的工作了, ParparVM等对于达到该合规水平应该是微不足道的。

希望这会给我们一条前进的道路,使所有人都感到高兴。

摘要

对于所有Java开发人员来说,这都是一个好消息! 无论您是在Android,服务器,移动设备还是台式机上工作! 这可能是人们期待已久的“和平进程”的开始,或者至少是Google与Oracle之间的停火。 这样一来,我们所有人最终都可以在一个Java版本之后进行调整(考虑到Android更新过程缓慢)。 它可能有助于使Java重新与一些认为Java的封闭性质有问题的开发人员重新流行。

翻译自: https://www.javacodegeeks.com/2016/01/analysis-google-moving-openjdk-really-means.html

openjdk 内存分析

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值