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。该虚拟机可以将代码编译为本机代码。