是的OpenJDK VM和Oracle HotSpot虚拟机仍然是两个不同的JVM?
我似乎无法找到关于OpenJDK的VM任何东西有些官方文件。即使在OpenJDK的主页有一个热点集团所属开发HotSpot虚拟机。
热点组是由参与设计,实施的开发者,并且HotSpot虚拟机的保养的
但是,如果检查我的Windows机器上的Java的版本它打印出
Java的热点(TM)64位服务器VM
但是,在我的Ubuntu VPS
OpenJDK的64位服务器VM
如果这是两个不同的虚拟机是什么它们之间的主要区别是什么?他们有不同的运行时标志设置?
甲骨文的HotSpot JVM是基于OpenJDK项目的热点。所以,他们大多是同一个虚拟机,除了甲骨文JVM有一些额外的商业功能,主要是,Java的飞行记录器,应用类数据共享和协同内存管理。
运行时的标志是两个VM几乎相同; 看到使用的完整列表
-XX:+UnlockDiagnosticVMOptions -XX:+UnlockCommercialFeatures -XX:+PrintFlagsFinal
作为JDK 8u131的,唯一不同的是在下面的标志(在OpenJDK的VM不存在):
bool EnableResourceManagementTLABCache = true {product}
bool EnableSharedLookupCache = true {product}
bool FlightRecorder = false {commercial}
ccstr FlightRecorderOptions = {product}
bool LogCommercialFeatures = false {product}
ccstr MemoryRestriction = none {commercial}
bool ResourceManagement = false {commercial}
intx ResourceManagementSampleInterval = -1 {commercial}
ccstr StartFlightRecording = {commercial}
bool TraceSharedLookupCache = false {product}
bool UnlockCommercialFeatures := true {commercial}
bool UseAppCDS = false {commercial}
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句