最近出现了一件不起眼的资讯,微软把mono的抢先名目交给了Wine团队来治理。
或者很多小同伴曾经不知道mono是什么物品了,然而在它的面前,是多家公司的强烈争斗,是多个大佬的爱恨情仇。
故事很长,咱们缓缓从Java说起。
上世纪90年代,微软一手遮天,不只统治了操作系统,还把一众运行软件厂商打得惨不忍睹,成为行业公敌。
这时刻出现了三个新事物:Linux、Java、Netscape,它们将成为微软帝国的掘墓人。
Java刚出现的时刻,高呼“一次性编写,四处运转”的口号,如同操作系统变得不那么关键了。
但Java写的桌面运行真实差劲,界面奇丑,性能低下,被人讥笑。
Sun公司一看这不行啊,不能在桌面端和微软争了,往主机端走!
主机端的程序没有界面,、内存和CPU管够,缺的就是Java这种十分适宜写商业业务逻辑的言语!
Sun提出了J2EE(Servlet、EJB、JPA、JMS....)规范,联结了一众大佬,构成了反微软联盟,在互联网时代牢牢地卡住了位置。
我要是Bill Gates,心里预计就要滴血了:老子用了二十年,好不容易把“桌面”收拾洁净,如今又来了一个互联网!
Bill Gates先是搞了一个小诡计,挖来了编程言语和编译器的巨匠级人物Anders,开发了VJ++,岂但可以绕过Java API间接访问操作系统的配置,还可以把Java代码编译成Windows的exe来口头!
Sun一看VJ++就炸锅了:你这是破坏Java一次性编写,四处运转的特点,立刻就把微软告了。
微软的小举措没搞成,只能下定信心,重起炉灶,和Java反抗,这就是.Net战略。
.Net 刚开局就是和Java打擂台的,Java有字节码,.Net就有两边言语(Common Intermediate Language,简称IL);
Java有JRE,.Net就有CLR(Common Language Runtime)。
.Net的一大亮点是支持多言语开发,用C#、F#、VB .NET、C++都可以,反正最终都要编译成两边言语IL。
微软为了吸引更多的同盟军,这一次性难得地和自己的铁哥们Intel一同,制订了公共言语基础结构(CLI)规范,并且提交给ISO和ECMA做了规范化。
用面向对象来做个类比,CLI相当于接口,微软的.Net Framework,是CLI的一个商业成功。
任何人都可以成功CLI,通常上都是和.Net Framework都是相提并论的。
然而成功CLI,上班量过于宏大,CLI又是微软主导的,真的有人会这么干吗?
Miguel de Icaza(米格尔·德·伊卡萨)是个墨西哥裔程序员,大学专业原本是数学,然而他游手好闲,迷上了Linux和编程,给Linux内核做了很多奉献。
没期间学习,他罗唆停学了。
没有学位,拿不到美国的H-1B签证,这让他丢失了进入微软的时机。
不过幸而他没进微软,否则以微软过后敌视开源软件的态度,他基本无法能搞进去GNOME。
没错,GNOME就是米格尔牵头发动的,很就和KDE一样成为Linux桌面的双子星。
在微软面试时,米格尔遇到了在微软实习的Nat Friedman,成为好友。
1999年,两人一同成立了一个叫做Ximian的公司,专门支持GNOME的开展。
这是刚刚盛行起来的一种商业形式,软件是开源不要钱的,然而技术支持服务是可以不要钱的。
公司取得了取得了几百万美元的融资,但让人苦笑不得的是,只管米格尔曾经在IT界有了十分高的名望,但依然无法取得美国的H-1B签证。
最后米格尔经过O1签证到来了美利坚,O1签证原本是颁发给顶级音乐家,静止员,以及诺贝尔获奖者的。过后O1签证很费事,米格尔每隔6个月就须要会墨西哥的美国领事馆续签一次性。
微软发布.Net战略后,米格尔看法到.Net这种支持多言语的战略对GNOME有很大的协助,假设在Linux上成功.Net,那程序员就可以用自己喜欢的编程言语来开发Linux桌面运行程序了。
于是,米格尔选择推出开源名目Mono,在Linux上成功.Net,把.Net的另外一条腿接上。
这是米格尔第二次和微软出现咨询,这个选择引发了很多开源界大佬的批判,GNU的开创人,自在软件的斗士Richard Stallman猛批他是为“自在软件的叛徒”,居然把凶恶的微软持有专利的物品在Linux上成功!
Mono只管比不上微软的亲儿子.Net Framework,但确实处置了一个大疑问,取得了很多人的喜欢。
比如驰名的游戏引擎Unity最早就选用了Mono作为底层的.Net运转时,可以跨平台地口头C#代码。
随后,一系列大鱼吃小鱼事情开局演出。
2003年,米格尔的Ximian公司被Novell收买。米格尔出任副总裁。
2011年,Novell又被Attachmate收买,Attachmate解雇了一切在美国从事Mono上班的员工,包含米格尔。
Mono出路未卜,米格尔和Nat Friedman又成立了新公司Xamarin公司,继续开发Mono。
此时移动互联网曾经兴起,Xamarin公司顺势推出了Xamarin.iOS 和 Xamarin.Android,让.Net程序可以运转在手机之上。
不得不说,米格尔目光独到,这是至关关键的一个选择。
由于仅仅3年后,微软就推出了开源、跨平台的.Net Core,一下子让Mono处于很难堪的位置,毕竟再怎样着,也很难和官网的产品竞争啊。
2016年,微软以4亿美元收买了Xamarin,让Xamarin成为微软.Net框架的一局部。
这一次性,米格尔正式添加了微软。
从.Net 5开局,.NET Framework、.NET Core、Mono又被整合到了一同,可以支持桌面、Web、云、移动设备、游戏、IoT、AI等各种开发。
2024 年 8 月 27 日,微软将 Mono 抢先名目标一切权转让给Windows 兼容层Wine的开发团队 WineHQ 。
Wine的文章参见:《国产操作系统最致命的短板,被这个开源软件补上了?》
发动了GNOME、Mono两个驰名名目,两次守业,所有成功,米格尔不愧为人生赢家。
作为开源界的出名人物,他和很多热爱Linux的大牛不一样,他是个适用主义者。
为了让GNOME支持多言语的运行,他把微软领有专利的.Net引入了Linux环球和手机的环球,被批为“叛徒”。
他地下销持微软的放开技术,在ODF(Open Document Format) 和OOXML(Office Open XML )的大战中,他旗号显明地支持微软的OOXML,齐全不顾开源社区的宽泛批判。
只管他是Linux桌面GNOME的发动者,然而他毫不粉饰对macOS的喜欢,他批判 Linux 桌面以开发者为核心的文明、不足向后兼容性以及各种 Linux 发行版之间的决裂,这都造成“Linux桌面被毁掉”。