针对程序员/开发人员的JVM内部的规范参考[关闭]

问题描述 投票:12回答:2

标题很好地反映了我的问题。我想知道有关JVM(不仅仅是HotSpot,但显然是开始的地方)如何实现或处理特定功能的问题是否有良好的资源或跳跃点?我不是在寻找JLSJVM Spec中的东西 - 我知道先去那里。

例如:在尝试理解性能问题时,我们经常进行的对话不是关于规范的内容,而是实际实现中的当代最佳实践。例如,有一些城市神话说“最终类在Java中表现更好,因为JVM可以内联或以其他方式优化这些东西。”是否有一般资源我们可以转向以评估这些浮动的声明?

我通过HotSpot特定的参考资料回答了我自己的问题。其他供应商的产品呢?小型JVM的细节?多核细节?平台细节,如果它们有所作为?其他JVM语言的细节?

只是为了避免一些潜在的抱怨:1)这不是寻找过早的优化(事实上,更好地理解平台应该劝阻受过良好教育的开发人员!); 2)我知道Java程序员应该专注于漂亮,可移植,随处运行的代码,但对于我们中的许多人来说,平台细节最终会引起关注!

这是受到specific questionThorbjørn Ravn Andersen的一些有用评论的启发。我很高兴收集一些其他更有用的例子,超出我上面引用的例子,以激发人们可能想要这些资源的原因。

关于SO的一些有趣的相关问题:Tail-call optimization in JVMKiller JVM featuresoptimizations that are going to be useless tomorrowDifferences between JVM implementations

编辑添加:我将答案提供给所提及的最佳个人参考,或者提供指向网站的指针(可能是为了回答这个问题而建立的),最好地集中/编目JVM实施智慧和实际后果。客户语言和开发人员。

java jvm jvm-languages
2个回答
5
投票

0
投票

前段时间我总结了一个关于what advanced programmer should know about jvm internals的简短摘要,并帮助他更好地理解并发性,gc,jit等。它是基于规范和OpenJDK的集中摘要。

© www.soinside.com 2019 - 2024. All rights reserved.