Mono

Mono是一個由Xamarin公司 （ 先前是Novell ， 最早爲Ximian ） 所主持的自由開放源碼專案 。 該專案的目標是創建一系列符合ECMA標準 （ Ecma - 334和Ecma - 335 ） 的.NET工具，包括C#編譯器和通用語言架構。與微軟的.NET Framework （ 共通語言執行平臺 ） 不同 ， Mono項目不僅可以運行於Windows系統上 ， 還可以運行於Linux 、 FreeBSD 、 Unix 、 OS X和Solaris ， 甚至一些遊戲平臺 ， 例如 ： Playstation 3 、 Wii或XBox 360 。 Mono的標誌是一個猴子格式的臉 。 Mono現由Novell持有雙重許可 ， 這和Qt和Mozilla Application Suite的情況相似 。 Mono的C #編譯器及其相關工具發佈於GNU通用公共許可證 （ GPL ） 之下 ， 其運行時庫發佈於GNU寬通用公共許可證 （ LGPL ） 之下 ， 其類庫發佈於MIT許可證之下 。 這些均是開源協議因此Mono是一個開源軟件 。 微軟開發了一個稱爲通用語言架構 （ Shared Source Common Language Infrastructure ， Shared Source CLI ； 即今ECMA — 通用語言架構 ） 的可用於FreeBSD ， Windows和Mac OS X的.NET實現版本 。 微軟的共享源代碼協議並不是開源軟件協議 ， 且可能對於社區來說也是不足夠的 （ 它明文禁止了對軟件的商業用途 ） 。 另外 ， GNU也有一個.NET實現版本項目 ， 該項目與Mono項目有着很多相同的目標 。 Mono虛擬機包含一個即時編譯引擎 ， 該引擎可用於如下處理器 ： x86 、 SPARC 、 PowerPC 、 ARM 、 S390 （ 32位模式和64位模式 ） 、 x86 - 64 、 IA - 64和64位模式的SPARC 。 該虛擬機可以將代碼編譯爲本機代碼 。