针对程序员/开发人员的JVM内部的规范参考[关闭]
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了针对程序员/开发人员的JVM内部的规范参考[关闭]相关的知识,希望对你有一定的参考价值。
标题很好地反映了我的问题。我想知道有关JVM(不仅仅是HotSpot,但显然是开始的地方)如何实现或处理特定功能的问题是否有良好的资源或跳跃点?我不是在寻找JLS或JVM Spec中的东西 - 我知道先去那里。
例如:在尝试理解性能问题时,我们经常进行的对话不是关于规范的内容,而是实际实现中的当代最佳实践。例如,有一些城市神话说“最终类在Java中表现更好,因为JVM可以内联或以其他方式优化这些东西。”是否有一般资源我们可以转向以评估这些浮动的声明?
我通过HotSpot特定的参考资料回答了我自己的问题。其他供应商的产品呢?小型JVM的细节?多核细节?平台细节,如果它们有所作为?其他JVM语言的细节?
只是为了避免一些潜在的抱怨:1)这不是寻找过早的优化(事实上,更好地理解平台应该劝阻受过良好教育的开发人员!); 2)我知道Java程序员应该专注于漂亮,可移植,随处运行的代码,但对于我们中的许多人来说,平台细节最终会引起关注!
这是受到specific question对Thorbjørn Ravn Andersen的一些有用评论的启发。我很高兴收集一些其他更有用的例子,超出我上面引用的例子,以激发人们可能想要这些资源的原因。
关于SO的一些有趣的相关问题:Tail-call optimization in JVM,Killer JVM features,optimizations that are going to be useless tomorrow,Differences between JVM implementations。
编辑添加:我将答案提供给所提及的最佳个人参考,或者提供指向网站的指针(可能是为了回答这个问题而建立的),最好地集中/编目JVM实施智慧和实际后果。客户语言和开发人员。
- OpenJDK "JVM Internals" wiki是HotSpot的起点
- 甲骨文的Java SE 6 Performance White Paper及其前辈给出了很多见解,尽管我的问题本身没有组织
- 关于HotSpot的同步,请参阅我的answer here。
前段时间我总结了一个关于what advanced programmer should know about jvm internals的简短摘要,并帮助他更好地理解并发性,gc,jit等。它是基于规范和OpenJDK的集中摘要。
以上是关于针对程序员/开发人员的JVM内部的规范参考[关闭]的主要内容,如果未能解决你的问题,请参考以下文章