Java资源分享网 - 专业的Java学习网站 学Java,上Java资源分享网
JVM 核心知识点总结 PDF 下载
匿名网友发布于:2024-09-18 09:27:38
(侵权举报)
(假如点击没反应,多刷新两次就OK!)

JVM 核心知识点总结 PDF 下载 图1

 

 

资料内容:

 

1.1 OpenJDK
1996 JDK 1.0 发布以来,Sun 公司在⼤版本上发⾏了 JDK 1.1 JDK 1.2 JDK
1.3 JDK 1.4 JDK 5 JDK 6 ,这些版本的 JDK 都可以统称为 SunJDK 。之后在 2006 年的
JavaOne ⼤会上,Sun 公司宣布将 Java 开源,在随后的⼀年多⾥,它陆续将 JDK 的各个部分在
GPL v2GNU General Public Licenseversion 2)协议下开源,并建⽴了 OpenJDK 组织来对这
些代码进⾏独⽴的管理,这就是 OpenJDK 的来源,此时的 OpenJDK 拥有当时 sunJDK 7 的⼏乎全
部代码。
 
1.2 OracleJDK
JDK 7 的开发期间,由于各种原因的影响 Sun 公司市值⼀路下跌,已⽆⼒推进 JDK 7 的开发,
JDK 7 的发布⼀直被推迟。之后在 2009 Sun 公司被 Oracle 公司所收购,为解决 JDK 7 长期跳
票的问题,Oracle JDK 7 中⼤部分未能完成的项⽬推迟到 JDK 8 ,并于 2011 年发布了JDK 7
在这之后由 Oracle 公司正常发⾏的 JDK 版本就由 SunJDK 改称为 Oracle JDK
2017 JDK 9 发布后,Oracle 公司宣布从此以后 JDK 将会在每年的 3 ⽉和 9 ⽉各发布⼀个⼤
版本,即半年发⾏⼀个⼤版本,⽬的是为了避免众多功能被捆绑到⼀个 JDK 版本上⽽引发的⽆法交付
的风险。
JDK 11 发布后,Oracle 同步调整了 JDK 的商业授权,宣布从 JDK 11 起将以前的商业特性全部
开源给 OpenJDK ,这样 OpenJDK 11 OracleJDK 11 的代码和功能,在本质上就完全相同了。同
时还宣布以后都会发⾏两个版本的 JDK
⼀个是在 GPLv2 + CE 协议下由 Oracle 开源的 OpenJDK
⼀个是在 OTN 协议下正常发⾏的 OracleJDK
两者共享⼤部分源码,在功能上⼏乎⼀致。唯⼀的区别是 Oracle OpenJDK 可以在开发、测试或者⽣
产环境中使⽤,但只有半年的更新⽀持;⽽ OracleJDK 对个⼈免费,但在⽣产环境中商⽤收费,可以
有三年时间的更新⽀持。
 
1.3 HotSpot VM
它是 Sun/Oracle JDK OpenJDK 中默认的虚拟机,也是⽬前使⽤最为⼴泛的虚拟机。最初由
Longview Technologies 公司设计发明,该公司在 1997 年被 Sun 公司收购,随后 Sun 公司在 2006
年开源 SunJDK 时也将 HotSpot 虚拟机⼀并进⾏了开源。之后 Oracle 收购 Sun 以后,建⽴了
HotRockit 项⽬,并将其收购的另外⼀家公司(BEA)的 JRockit 虚拟机中的优秀特性集成到
HotSpot 中。HotSpot 在这个过程⾥⾯移除掉永久代,并吸收了 JRockit Java Mission Control
监控⼯具等功能。到 JDK 8 发⾏时,采⽤的就是集两者之长的 HotSpot VM