跨平台 .NET 运行环境,Mono 3.0 发布

jopen 11年前

Mono 是一个由Novell 公司主持的项目。该项目的目标是创建一系列符合ECMA 标准(Ecma-334 和Ecma-335)的.NET 工具,包括C# 编译器和共通语言执行平台。与微软的.NET Framework 不同,Mono 项目不仅可以运行于Windows 系统上,还可以运行于Linux,FreeBSD,Unix,Mac OS X 和Solaris。

微软开发了一个称为共享源码公共语言基础(Shared Source Common Language Infrastructure,Shared Source CLI)的可用于 FreeBSD,Windows 和 Mac OS X 的 .NET 实现版本。微软的共享源码协议并不是开源软件协议,且可能对于社区来说也是不足够的(它明文禁止了对软件的商业用途)。我们还可以见到另外一个 .NET 实现版本,Portable.NET 项目,该项目与 Mono 项目有着很多相同的目标。

Mono 虚拟机包含一个实时编译引擎,该引擎可用于如下处理器:x86,SPARC,PowerPC,ARMS390(32位模式和64位模式),x86-64IA64 和64位模式的 SPARC。该虚拟机可以将代码实时编译或者预先编译到原生代码。对于那些没有列出来的系统,则使用的是代码解释器。

下图是MONO的体系结构图
跨平台 .NET 运行环境,Mono 3.0 发布

在 Mono 3.0 中使用更灵活的新版本发布过程,努力减少一些待办的工作,让大家更快的获取新功能。这意味着从现在开始,我们的“master”分支将保持稳定,而大项目的开发将采用分支的形式进行。

Mono 3.0 主要改进内容:

  • C# Async compiler
  • Unified C# compiler for all profiles
  • 4.5 Async API Profile
  • 集成微软新的开源堆栈:
    • ASP.NET MVC 4
    • ASP.NET WebPages
    • Entity Framework
    • Razor
    • System.Json (replaces our own)
    </li>
  • 全新高性能垃圾收集器 (SGen - 在性能和稳定性方面都有很多提升)
  • Metric ton of runtime and class library improvements.
  • </ul>

    详情请看 release notes