微軟和Linux:真正的浪漫還是有毒的愛(ài)情?
時(shí)不時(shí)的我們會(huì)讀到一個(gè)能讓你喝咖啡嗆到或者把熱拿鐵噴到你顯示器上的新聞故事。微軟最近宣布的對(duì) Linux 的鐘愛(ài)就是這樣一個(gè)鮮明的例子。
從常識(shí)來(lái)講,微軟和自由開(kāi)源軟件(FOSS)運(yùn)動(dòng)就是恒久的敵人。在很多人眼里,微軟體現(xiàn)了過(guò)分的貪婪,而這正為自由開(kāi)源軟件運(yùn)動(dòng)(FOSS)所拒絕。另外,之前微軟就已經(jīng)給自由開(kāi)源軟件社區(qū)貼上了"一伙強(qiáng)盜"的標(biāo)簽。
我們能夠理解為什么微軟一直以來(lái)都害怕免費(fèi)的操作系統(tǒng)。免費(fèi)操作系統(tǒng)結(jié)合挑戰(zhàn)微軟核心產(chǎn)品線的開(kāi)源應(yīng)用時(shí),就威脅到了微軟在臺(tái)式機(jī)和筆記本電腦市場(chǎng)的控制地位。
盡管微軟有對(duì)在臺(tái)式機(jī)主導(dǎo)地位的擔(dān)憂(yōu),在網(wǎng)絡(luò)服務(wù)器市場(chǎng) Linux 卻有著最高的影響力。今天,大多數(shù)的服務(wù)器都是 Linux 系統(tǒng)。包括世界上最繁忙的站點(diǎn)服務(wù)器。對(duì)微軟來(lái)說(shuō),看到這么多無(wú)法裝到兜里的許可證的營(yíng)收一定是非常痛苦的。
掌上設(shè)備是微軟輸給自由軟件的另一個(gè)領(lǐng)域。曾幾何時(shí),微軟的 Windows CE 和 Pocket PC 操作系統(tǒng)走在移動(dòng)計(jì)算的前沿。Windows PDA 設(shè)備是最閃亮的和豪華的產(chǎn)品。但是這一切在蘋(píng)果公司發(fā)布了iPhone之后都結(jié)束了。從那時(shí)起,安卓就開(kāi)始進(jìn)入公眾視野,Windows 的移動(dòng)產(chǎn)品開(kāi)始被忽略被遺忘。而安卓平臺(tái)是建立在自由開(kāi)源的組件的基礎(chǔ)上的。
由于安卓平臺(tái)的開(kāi)放性,安卓的市場(chǎng)份額在迅速擴(kuò)大。不像 IOS,任何一個(gè)手機(jī)制造商都可以發(fā)布安卓手機(jī)。也不像Windows 手機(jī),安卓沒(méi)有許可費(fèi)用。這對(duì)消費(fèi)者來(lái)說(shuō)是件好事。這也導(dǎo)致了許多強(qiáng)大卻又價(jià)格低廉的手機(jī)制造商在世界各地涌現(xiàn)。這非常明確的證明了自由開(kāi)源軟件(FOSS)的價(jià)值。
在服務(wù)器和移動(dòng)計(jì)算的角逐中失利對(duì)微軟來(lái)說(shuō)是非常慘重的損失。考慮一下服務(wù)器和移動(dòng)計(jì)算這兩個(gè)加起來(lái)所占有的市場(chǎng)大小,臺(tái)式機(jī)市場(chǎng)似乎是死水一潭。沒(méi)有人喜歡失敗,尤其是涉及到金錢(qián)。并且,微軟確實(shí)有許多東西正在慢慢失去。你可能期望著微軟自嘗苦果。在過(guò)去,確實(shí)如此。
微軟使用了各種可以支配的手段來(lái)對(duì) Linux 和自由開(kāi)源軟件(FOSS)進(jìn)行反擊,從宣傳到專(zhuān)利威脅。盡管這種攻擊確實(shí)減慢了適配 Linux 的步伐,但卻從來(lái)沒(méi)有讓 Linux 的腳步停下。
所以,當(dāng)微軟在開(kāi)源大會(huì)和重大事件上拿出印有“Microsoft Loves Linux”的T恤和徽章時(shí),請(qǐng)?jiān)徫覀儽憩F(xiàn)出來(lái)的震驚。這是真的嗎?微軟真的愛(ài) Linux ?
當(dāng)然,公關(guān)的口號(hào)和免費(fèi)的T恤并不代表真理。行動(dòng)勝于雄辯。當(dāng)你思考一下微軟的行動(dòng)時(shí),微軟的立場(chǎng)就變得有點(diǎn)模棱兩可了。
一方面,微軟招募了幾百名 Linux 開(kāi)發(fā)者和系統(tǒng)管理員。將 .NET 核心框架作為一個(gè)開(kāi)源的項(xiàng)目進(jìn)行了發(fā)布,并提供了跨平臺(tái)的支持(這樣 .NET 就可以跑在 OS X 和 Linux 上了)。并且,微軟與 Linux 公司合作把最流行的發(fā)行版本放到了 Azure 平臺(tái)上。事實(shí)上,微軟已經(jīng)走的如此之遠(yuǎn)以至于要為 Azure 數(shù)據(jù)中心開(kāi)發(fā)自己的 Linux 發(fā)行版了。
另一方面,微軟繼續(xù)直接通過(guò)法律或者傀儡公司來(lái)對(duì)開(kāi)源項(xiàng)目進(jìn)行攻擊。很明顯,微軟在與自由軟件的所有權(quán)較量上并沒(méi)有發(fā)自?xún)?nèi)心的進(jìn)行大的道德轉(zhuǎn)變。那為什么要公開(kāi)申明對(duì) Linux 的鐘愛(ài)之情呢?
一個(gè)顯而易見(jiàn)的事實(shí):微軟是一個(gè)經(jīng)營(yíng)性實(shí)體。對(duì)股東來(lái)說(shuō)是一個(gè)投資工具,對(duì)雇員來(lái)說(shuō)是收入來(lái)源。微軟所做的只有一個(gè)終極目標(biāo):盈利。微軟并沒(méi)有表現(xiàn)出來(lái)愛(ài)或者恨(盡管這是一個(gè)最常見(jiàn)的指控)。
所以問(wèn)題不應(yīng)該是"微軟真的愛(ài) Linux 嗎?"相反,我們應(yīng)該問(wèn),微軟是怎么從這一切中獲利的。
讓我們以 .NET 核心框架的開(kāi)源發(fā)行為例。這一舉動(dòng)使得 .NET 的運(yùn)行時(shí)環(huán)境移植到任何平臺(tái)都很輕松。這使得微軟的 .NET 框架所涉及到的范圍遠(yuǎn)遠(yuǎn)大于 Windows 平臺(tái)。
開(kāi)放 .NET 的核心包,最終使得 .NET 開(kāi)發(fā)者開(kāi)發(fā)跨平臺(tái)的 APP 成為可能,比如 OS X、Linux 甚至安卓——都基于同一個(gè)核心代碼庫(kù)。
從開(kāi)發(fā)者角度來(lái)講,這使得 .NET 框架比之前更有吸引力了。能夠從單一的代碼庫(kù)觸及到多個(gè)平臺(tái),使得使用 .NET 框架開(kāi)發(fā)的任何 APP 戲劇性的擴(kuò)大了潛在的目標(biāo)市場(chǎng)。
另外,一個(gè)強(qiáng)大的開(kāi)源社區(qū)能夠提供給開(kāi)發(fā)者一些代碼來(lái)在他們自己的項(xiàng)目中進(jìn)行復(fù)用。所以,開(kāi)源項(xiàng)目的可利用性也將會(huì)成就 .NET 框架。
更進(jìn)一步講,開(kāi)放 .NET 的核心代碼能夠減少跨越不同平臺(tái)所產(chǎn)生的碎片,意味著對(duì)消費(fèi)者來(lái)說(shuō)有對(duì) APP 更廣的選擇。無(wú)論是開(kāi)源軟件還是專(zhuān)用的 APP,都有更多的選擇。
從微軟的角度來(lái)講,會(huì)得到一隊(duì)開(kāi)發(fā)者大軍。微軟可以通過(guò)銷(xiāo)售培訓(xùn)、證書(shū)、技術(shù)支持、開(kāi)發(fā)者工具(包括 Visual Studio)和應(yīng)用擴(kuò)展來(lái)獲利。
我們應(yīng)該自問(wèn)的是,這對(duì)自由軟件社區(qū)有利還是有弊?
.NET 框架的大范圍適用意味著許多參與競(jìng)爭(zhēng)的開(kāi)源項(xiàng)目的消亡,迫使我們會(huì)跟著微軟的節(jié)奏走下去。
先拋開(kāi) .NET 不談,微軟正在花費(fèi)大量的精力在 Azure 云計(jì)算平臺(tái)對(duì) Linux 的支持上。要記得,Azure 最初是 Windows 的 Azure。Windows 服務(wù)器是唯一能夠支持 Azure 的操作系統(tǒng)。今天,Azure 也提供了對(duì)多個(gè) Linux 發(fā)行版的支持。
關(guān)于此,有一個(gè)原因:付費(fèi)給需要或者想要 Linux 服務(wù)的顧客。如果微軟不提供 Linux 虛擬機(jī),那些顧客就會(huì)跟別人合作了。
看上去好像是微軟意識(shí)到“Linux 就在這里”的這樣一個(gè)現(xiàn)實(shí)。微軟不能真正的消滅它,所以必須接收它。
這又把我們帶回到那個(gè)問(wèn)題:關(guān)于微軟和 Linux 為什么有這么多的流言?我們?cè)谡務(wù)撨@個(gè)問(wèn)題,因?yàn)槲④浵M覀兯伎歼@個(gè)問(wèn)題。畢竟,所有這些談資都會(huì)追溯到微軟,不管是在新聞稿、博客還是會(huì)議上的公開(kāi)聲明。微軟在努力吸引大家對(duì)其在 Linux 專(zhuān)業(yè)知識(shí)方面的注意力。
首席架構(gòu)師 Kamala Subramaniam 的博文聲明 Azure Cloud Switch 背后的其他企圖會(huì)是什么?ACS 是一個(gè)定制的 Linux 發(fā)行版。微軟用它來(lái)對(duì) Azure 數(shù)據(jù)中心的交換機(jī)硬件進(jìn)行自動(dòng)配置。
ACS 不是公開(kāi)的。它是用于 Azure 內(nèi)部使用的。別人也不太可能找到這個(gè)發(fā)行版其他的用途。事實(shí)上,Subramaniam 在她的博文中也表述了同樣的觀點(diǎn)。
所以,微軟不會(huì)通過(guò)賣(mài) ACS 來(lái)獲利,也不會(huì)通過(guò)贈(zèng)送它而增加用戶(hù)基數(shù)。相反,微軟在 Linux 和 Azure 上花費(fèi)精力,以加強(qiáng)其在 Linux 云計(jì)算平臺(tái)方面的地位。
微軟最近迷上 Linux 對(duì)社區(qū)來(lái)說(shuō)是好消息嗎?
我們不應(yīng)該慢慢忘記微軟的“擁抱、擴(kuò)展、消滅Embrace,Extend and Exterminate”的詛咒。現(xiàn)在,微軟處在擁抱 Linux 的初期階段。微軟會(huì)通過(guò)定制擴(kuò)展和專(zhuān)有“標(biāo)準(zhǔn)”來(lái)分裂社區(qū)嗎?




















