托管模块和平台独立性

时间:2010-03-17 15:02:58

标签: .net

.Net模型是这样的: C#代码 - > C#编译器 - >管理模块(Win PE) - > CLR - > “你好,世界” 代码被编译为托管模块,该模块调用CLR,CLR又执行运行代码所需的工作(假设它是一个exe)。

我最初的理解是.Net是微软的Java框架,与CLR相当于JVM的MS。但有趣的是,Managed模块是一个Win PE,这意味着任何想要使用.Net的操作系统也必须接受并使用Win PE格式。我的问题是:

  1. 到目前为止理论是否正确?
  2. 支持/实施Win PE格式的Linux / Unix / Solaris / OSX等有哪些机会?
  3. 目前正在进行哪些替代方案以实现互操作性?
  4. Java采取什么方法使其在不同平台上可执行?

1 个答案:

答案 0 :(得分:2)

您正在寻找Mono

回答你的问题:

  1. 他们已经通过Wine和Mono做了。
  2. 我不确定你的意思。
  3. Java编译为由Java运行时打开的.jar文件,其方式与Microsoft Word打开.doc文件的方式相同。