0

平台是指操作系统还是 CLR、JVM 等?

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

那么目前市场上有哪些不同版本的 JVM 和 CLR?

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

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

4

2 回答 2

2

CLR 有很多版本:

  • 适用于 Windows x86 的多个不同版本和服务包
  • 从 v2 开始的 64 位 CLR
  • Compact Framework(主要用于移动设备和 XBox)
  • CoreCLR(用于 Silverlight)
  • 微框架
  • 共享源转子实现

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

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

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

于 2010-09-25T06:15:25.437 回答
1

平台是什么意思?

答案实际上取决于“平台”一词的上下文。但是当你谈到 java 平台时,大多数时候它是关于 JVM + JRE + JDK 的,它是整个 Java Pack。

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

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

有哪些版本的 JVM 可用?

  • Sun 的 JVM(现在是 oracle)
  • 冰茶 JVM
  • KVM(用于 JME)
  • CVM(JME 也是)
  • 阿帕奇和谐
  • 甲骨文JRockit
  • 还有更多

为什么JVM有这么多版本?

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

关于.NET?

请参阅@Jon Skeet 的回答:)


资源 :

于 2010-09-25T06:18:43.783 回答