平台究竟是什么意思?有多少版CLR& JVM可用吗?

时间:2010-09-25 06:11:13

标签: java .net jvm clr platform

平台是指OS还是CLR,JVM&那个??

我听说过CLR& JVM因操作系统而异。

那么不同版本的JVM& CLR现在还在市场上供应吗?

(我认为CLR只有1个版本仅适用于Windows)

尽可能地澄清我的这种困惑......

2 个答案:

答案 0 :(得分:2)

有很多版本的CLR:

  • 适用于Windows x86的多个不同版本和Service Pack
  • v2以后的64位CLR
  • Compact Framework(主要用于移动设备和XBox)
  • CoreCLR(适用于Silverlight)
  • 微框架
  • 共享源Rotor实现

在桌面框架中,有两个不同的垃圾收集器 - 一个针对服务器,一个针对客户端。

这些只是微软的实施......然后是Mono和任何其他第三方实现。

我对JVM的可用性不太熟悉,但有几个不同版本的HotSpot,其他公司也生产JVM(例如JRockit

答案 1 :(得分:1)

平台意味着什么?

答案实际上取决于“平台”一词的背景。 但是当你谈到java平台时,大部分时间都是关于JVM + JRE + JDK,它是整个Java包。

为什么JVM因操作系统而异?

为什么不能简单地在Linux上使用Windows Sun的JVM,首先,Linux和Windows不会以相同的方式执行二进制文件,因此您必须拥有两个不同的二进制版本。此外,您无法在两个操作系统上以相同的方式真正访问文件或与系统交互。

哪些版本的JVM可用?

  • Sun的JVM(现在是oracle)
  • IcedTea JVM
  • KVM(适用于JME)
  • CVM(JME也是)
  • Apache Harmony
  • Oracle JRockit
  • And a lot more

为什么有这么多版本的JVM?

仅仅因为java平台基本上是“如何运行Java应用程序”的一堆规范。 所以任何人都可以创建自己的有效JVM,只要它符合规范。

关于.NET?

请参阅@Jon Skeet的answer:)


资源: