Mono
電腦軟體專案 / 維基百科,自由的 encyclopedia
Mono是一個由Xamarin公司(先前是Novell,最早為Ximian)所主持的自由開放原始碼專案。該專案的目標是建立一系列符合ECMA標準(Ecma-334[3]和Ecma-335[4])的.NET工具,包括C#編譯器和通用語言架構。與微軟的.NET Framework(共通語言執行平臺)不同,Mono專案不僅可以執行於Windows系統上,還可以執行於Linux、FreeBSD、Unix、OS X和Solaris,甚至一些遊戲平台,例如:Playstation 3、Wii或XBox 360。Mono的標誌是一個猴子格式的臉。
開發者 | Novell, Xamarin |
---|---|
目前版本 | |
原始碼庫 | |
作業系統 | 跨平台 |
類型 | 系統平台 |
特許條款 | GPL、LGPL與MIT特許條款,或雙重特許 |
網站 | http://www.mono-project.com/ |
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實現版本Portable.NET(英語:Portable.NET)專案,該專案與Mono專案有着很多相同的目標。
Mono虛擬機器包含一個即時編譯引擎,該引擎可用於如下處理器:x86、SPARC、PowerPC、ARM、S390(32位元模式和64位元模式)、x86-64、IA-64和64位元模式的SPARC。該虛擬機器可以將代碼編譯為本機代碼。