跨平臺的 .NET 運行環境,Mono 2.10.8 發布
Mono 是一個由Novell 公司主持的項目。該項目的目標是創建一系列符合ECMA 標準(Ecma-334 和Ecma-335)的.NET 工具,包括C# 編譯器和共通語言執行平臺。與微軟的.NET Framework 不同,Mono 項目不僅可以運行于Windows 系統上,還可以運行于Linux,FreeBSD,Unix,Mac OS X 和Solaris。
Mono 的開發工具 MonoDevelop
微軟開發了一個稱為共享源碼公共語言基礎(Shared Source Common Language Infrastructure,Shared Source CLI)的可用于 FreeBSD,Windows 和 Mac OS X 的 .NET 實現版本。微軟的共享源碼協議并不是開源軟件協議,且可能對于社區來說也是不足夠的(它明文禁止了對軟件的商業用途)。我們還可以見到另外一個 .NET 實現版本,Portable.NET 項目,該項目與 Mono 項目有著很多相同的目標。
Mono 虛擬機包含一個實時編譯引擎,該引擎可用于如下處理器:x86,SPARC,PowerPC,ARM,S390(32位模式和64位模式),x86-64,IA64 和64位模式的 SPARC。該虛擬機可以將代碼實時編譯或者預先編譯到原生代碼。對于那些沒有列出來的系統,則使用的是代碼解釋器。
下圖是MONO的體系結構圖
Mono 2.10.8 發布了,該版本更新了并行任務庫,可在多線程模式下使用 SQLiteConnection,改進了調試器協議,支持 MSBuild 4.0 ,可運行 NuGet 和 Phalanger 3.0 ;支持一些 Azure 庫,支持靜態二進制文件中綁定 profilers 等等多項改進。