Mono 计划―Linux版.NET平台 cashcho(原作)关键字 .net mono linux
written by cash (天下第七)
2001.01.23
版权所有,翻录不究
cashcao@msn.com
著名的Linux桌面环境“GNOME”的开发商美国Ximian公司在2001年7月开始启动一个名叫Mono Project的开放源码版“.NET”的开发项目,旨在使开发者能够编写同时在Windows和Linux上运行的.NET程序,Mono计划主要包括一个C#编译器、与微软公司的Common Language Infrastructure(CLI)兼容的类库、Linux版Common Language Runtime(CLR)编译器。
尽管微软.NET开放的结构许诺跨平台的使用能力(由于使用了中间语言,理论上.NET可以跨平台使用),但是微软公司却并没有计划为其它非微软操作系统平台提供可以使用.NET的相应的工具。针对这种状况,开放源代码协会通过Ximian开始了这个叫做Mono的项目。
据称这个项目大约有60名正规投资人,计划在今年年中左右使用户能够利用这些工具库,这要归功于它的倡导人Miguel de Icaza,Ximian公司的创办人和首席技术官。他推动了GNU网络对象模型环境(GNOME)-Linux两个主要的图形用户接口之一-的创建。Miguel de Icaza说:“虽然微软公司已向欧洲电子计算机工业协会(ECMA:European Computer Manufacturers' Association)以及World Wide Web Consortium(W3C)的标准化机关提交了c#及CLI的标准(现已获得通过),但因为该公司的共享(Shared Source)授权仅限于部分对象,所以不能开发面向Linux或UNIX等平台的应用程序。而我们将提供的是能够自由进行应用程序开发或提供Web服务的工具,令Linux用户也能够享受到.NET平台的巨大好处。”
一位软件开发者说,这个名为Mono的计划目的在于武装那些有意击败微软的开放资源开发者。如果Mono计划成功,微软面临的后果将十分严峻:可以预见,.NET的开放版将使得那些为微软视窗操作系统专门编写的程序能够在Linux或其它操作系统上运行得天衣无缝。
De Icaza说:“5年内,如果有程序运行在.NET上,这些程序也将可以运行在Linux上。” 为Mono编写的程序也可运行在视窗操作系统上。显然,这类跨平台开放性将给微软在操作系统和应用程序两方面的业务重重一击。
在此之前,de Icaza主要开发的是Linux桌面环境GNOME,但是,de Icaza称,他不仅仅将其视为一个用户界面。他说:“我们将其视为一个平台,花了大量时间把它作为基础平台进行开发。这样,开放资源程序员们就能为GNOME编写专门的程序。”
但是,当他在数月前分析微软的.NET框架时,de Icaza称:“他意识到这是一个非常棒的开发平台。我们看到,这与我们正在开发中的GNOME有异曲同工之妙。”
开放源码阵营的正反意见
观点1:对开放源码运动有害,开放源码阵营对这项消息各有正反面解读 。Mono计划一旦实施后,使用者就可以用C#(或者Mono中任何与CLS兼容的开发语言)撰写应用程序、在Linux(或者任何其它有GNOME类别库的操作系统)上进行测试、然后用于Linux或者微软平台上。而这正是开放源码支持者所担心的。由于微软投资了数十亿美元来提升.NET操作系统下的.NET架构,许多开放源码人士认为Mono宛如另一个快捷方式,方便GPL开发人员将其程序转用在微软平台上,Java与Linux反而被排挤到一边。他们同时还担心微软会建立强制连结至HailStorm(现在叫做Microsoft.NET My Services)服务(例如Passport),强迫那些开发Mono的公司必须将应用程序移至窗口环境下才能正常运作。大多数持有这种看法的人士皆认为只要有利于微软者必然对开放源码有害。
观点2:对开放源码运动有益,但另外有许多开放源码的拥护者则认为这是个绝大的开展机会。首先,他们认为若.NET架构能以GPL为基础,并遵循ECMA标准的话,微软在考虑扩展标准,或实施像HailStorm(现在叫做Microsoft.NET My Services)这样的服务时便能采取一种与操作系统无关的公正姿态。他们同时也认为这正可搭上C#及.NET类别库培训和支持的庞大市场潮流。如果Mono计划严格地遵循ECMA标准,那么培训课程、书籍以及各类支持在Windows上执行C#和.NET类别库的相关补充教材都将有助于开放源码人员在Mono上开发各种系统。
而支持Mono的人士则认为Linux以及其它技术(如GNOME)正可趁机进军目前使用微软的企业市场。理论上,原本使用Windows作为开发平台的企业可选择Linux上作业,避开微软服务器授权费。这些人认为,越多程序设计师支持Mono计划,.NET运用在Linux上将比微软开发于Windows来得强。果真如此,微软届时便不得不承认开放源码的力量的确有助于系统技术的开发与最佳化。
如果此项行动获得成功,这将使微软.NET软件愈发重要、更加普及,但是同时也将削弱微软对于软件业的控制。不过,分析家指出,.NET是项初生技术,任何对它的克隆也极可能是更不成熟。
微软的主要竞争对手,顶级Linux软件商Red Hat拒绝对此项计划做出任何评论。但是其首席执行官Michael Tiemann曾表示愿意支持阻挠微软一统计算世界的一切企图。
详情请至:www.go-mono.com