首頁>科技>

華為在2020年的日子過得很艱難,不僅無晶片可用,還因為谷歌的臨時許可證將在8月底到期,面臨被徹底斷供Android。

無獨有偶,早在7月14日,工業和資訊化部技術發展司公佈了“2020年開源託管平臺專案”的招標結果,Gitee中標,構建“面向中國的獨立、開放原始碼託管平臺。”這意味著,中國碼農貢獻的開原始碼,無需漂洋過海寄存到美國。

上述看似風馬牛不相及的兩則資訊,都指向我們對開源軟體的一個最大誤解:開源軟體可以免費使用、自由修改,美國政府無權干涉。

最後的黑客

1992年,芬蘭赫爾辛基大學生林納斯.託瓦茲(Linus Torvalds)釋出Linux 0.12版本時,撤下了原來的版權宣告,選擇了通用公共(GPL)許可證。

GPL被稱為“公共版權”或“著作權”,是諸多開源許可證中比較著名的一種,由開源軟體運動鼻祖理查德.斯托曼(Richard Stallman)親自撰寫,並經律師稽核。

實際上,開源許可證作為一種法律檔案,基本都經過了律師的手和眼睛。

理查德.斯托曼被譽為傳奇性的“最後黑客”,他痛恨計算機公司在把軟體作為單獨的產品銷售後,居然不提供原始碼(彷彿看到比爾.蓋茨尷尬的表情)。1985年,斯托曼發表了著名的GNU宣言,其中有一句話相當有名:“軟體共享的歷史與計算機一樣長久,如同人類自烹飪始就交換食譜一樣。”

斯托曼的宣言強調了軟體共享,但有相當一部分人卻理解成無償公開原始碼,並以訛傳訛,逐漸和開源軟體劃上了等號。林納斯對此非常痛恨,稱這部分人是“頑固分子”,他認為開發者有權處置自己的發明,是否借開源軟體賺錢,完全看開發者怎麼想。

開源軟體的核心,其實可以歸結為一句話,即強調軟體的版權,以及使用者的自由分享,是否收費並不是重點。以GPL為例,其條款規定,只要有人願意買你的軟體,你開價一百萬美元甚至更多都沒有問題,但你必須給買家相應的原始碼,同時買家擁有你所有的權利。

商業軟體的核心則可以概括為三句話:像開源軟體那樣強調軟體的版權,向使用者收費,不開放原始碼並禁止自由分享。

集市和大教堂

和現在普遍的看法不同,開源軟體的歷史其實比商業軟體長遠得多。

計算機的早期歲月,還是純真年代,所有的軟體幾乎都是開源的,自由分享軟體就像空氣一樣自然,像流水一樣無處不在。

計算機公司這麼做有現實的考慮,當時的使用者都是大中型企業、大學以及科研機構等,具備專業的軟體開發者和計算機科研人員,因此將軟體的原始碼提供給使用者,軟體一旦出現問題,使用者可以通過修改原始碼自行解決,公司自然減輕了售後服務的壓力。

使用者也享受到修改原始碼的好處,既解決軟體BUG,又可以滿足個性化需求,因此對計算機公司當“甩手掌櫃”(開放原始碼)的做法舉雙手歡迎。

但是,隨著計算機進入千家萬戶,絕大部分使用者對程式設計一無所知,因此以微軟為代表的商業軟體公司迅速崛起,閉源的商業軟體取代開源軟體逐漸成為主流,開源、閉源之爭由此而來。

說到這裡,帶出一個重要話題,商業軟體和開源軟體並沒有道德上的高下之分,而是商業模式的不同選擇。這也是開源軟體常被人誤解的地方,它和公德心沒有半毛錢關係。

埃裡克.史蒂文.雷蒙德(Eric Steven Raymond)在其開源運動先驅著作《大教堂與集市》中,將商業軟體和開源軟體分別比作大教堂和集市,教堂是按照精心設計的圖紙修建的建築,聖人巨匠嘔心瀝血,歷數十年方始完成,集市則是人人可以參與建設,沒有固定模式,也不知道完成的結果如何。

這個世界需要恢弘的教堂,同樣離不開食人間煙火的集市,兩者誰也無法替代,正因為如此,在上世紀90年代,商業軟體引領潮流後,開源軟體又捲土重來,兩者猶如兩江之水交匯,結果是,現在的軟體既不是單純的閉源,也不是純粹的開源,而是混源。

谷歌在Android上玩的把戲

前文提到的Android,核心是Linux,這也是其被稱為開源作業系統的由來,卻並不是真正的原因。實際上,Linux Kernel的維護者早已將Android程式碼從其程式碼庫中剔除,使得Android靠Linux打上開源標籤已不可能。

而Android的開源名號,其實是谷歌為了對抗蘋果的iOS系統,主動將Android開源。換句話說,Android是否開源與Linux無關,而是谷歌選擇了開源這種商業模式。

得益於開源,Android迅速吸引了智慧手機、智慧電視等廠商入局,打敗了有十幾年根基的老牌手機作業系統諾基亞Symbian,超過蘋果iOS,成為全球第一大移動作業系統。

但在Android成為江湖霸主後,谷歌開始玩起了把戲,在2010年將Android上搞了兩個動作,一是將Android的基礎框架程式碼開源,所有廠商可以免費使用,再就是是谷歌移動服務(GMS,包含了谷歌三件套等一系列應用和API)閉源。

而且谷歌還不動聲色地將開原始碼中的應用和API一點點掏空,用GMS中的應用和API來取代,這就是為何Android新版本或新的SoC晶片釋出後,國內手機廠商需要和谷歌一起優化的原因,因為谷歌抓住了Android的命根。

正因為如此,Linux才譏諷Android是偽開源。谷歌在Android上煞費苦心玩的把戲,出發點是商業利益的考量:用免費的Android框架程式碼這根“骨頭”,吸引手機廠商為谷歌奔跑,而Android的未來和商業收益則由谷歌獨吃獨佔。

Android的事例表明,世界上沒有免費的午餐,如果有,一定會讓你在其它地方付費。

由於軟體是否開源,完全取決於開發者的商業利益考量,而不是公德心,所以開源軟體向閉源轉換也不是不可能的事。

2010年,甲骨文(Oracle)公司收購Sun Microsystems後,獲得了全球開發者使用最多的資料庫MySQL的釋出控制權,不久就顯露出將MySQL從開源向閉源轉換的跡象,不僅沒有提供補丁的相關測試資料,還清除了修訂歷史。

中國科技公司的風險

既然開源軟體的版權受控,不是無條件使用,所以它具備一定的風險並非空穴來風,除上文提到的開源轉閉源的商業風險外,還存在政治因素風險。

2019年5月,在華為被列入美國實體清單後,中國開放指令生態(RISC-V)聯盟對全球12個知名開源基金會、6個常用開源許可證和3個程式碼託管平臺進行了調研,分析它們在出口管制、司法管轄權和開源許可證下受到的約束以及潛在風險,得出的結論是,雖然開源基金會和開源許可證可以允許不涉及加密功能的開源專案規避出口管制,但因為程式碼託管平臺會受到出口管制,因此存在這些程式碼託管平臺的開源專案仍然會受到出口管制的影響。

這方面已有現實的案例。

根據ZDNet的報道,2019年7月,一個面向開源及私有軟體專案的託管平臺GitHub,由於美國貿易管制政策,限制了克里米亞開發者的賬戶,導致其託管的開原始碼無法訪問。同樣受限的還有伊朗的開發者。

至於開源軟體受限,最明顯的例子就是谷歌對華為的斷供,既切斷了華為使用GMS服務,也停止向華為提供Android技術支援。

在上世紀90年代,當開源軟體的風剛吹入中國大地時,中國的IT公司還猶如稚嫩的小草。可以說,中國的網際網路產業能從微末發展到參天巨樹,並攀上全球數一數二的階梯,開源軟體居功至偉。

不過,隨著中國網際網路產業的發展,中國已從開源軟體的受惠者,變成反哺者,開原始碼的貢獻率上,中國已經位居全球第二。反映到開原始碼託管上,那就是中國的高科技公司成為美國開原始碼託管平臺的重要客戶,其中GitHub最受青睞。

根據媒體 InfoQ 統計,截至2019年3月,阿里巴巴在GitHub 的公司帳號旗下有專案有1243個,百度有746個,騰訊有131個,華為有247個,小米有113個,美團有131個。

這就帶來一個不可忽視的巨大風險,一旦美國針對中國公司的貿易管制政策蔓延到開源專案,中國公司託管在海外的開原始碼資產將面臨凍結風險,公司經營也將受到衝擊。有鑑於此,工業和資訊化部才推出了“開源託管平臺專案”招標,一場未雨綢繆的行動就此拉開了序幕。

在國際貿易衝突的背景下,開源的世界正變得四分五裂,“最後的黑客”、開源軟體運動鼻祖理查德.斯托曼(Richard Stallman)憧憬的人人分享的烏托邦世界已漸行漸遠。

最新評論
  • 1 #

    谷歌在Android上煞費苦心玩的把戲,確實是精:用免費的Android框架程式碼這根“骨頭”,吸引手機廠商為谷歌奔跑,而Android的未來和商業收益則由谷歌獨吃獨佔。

  • 2 #

    其條款規定,只要有人願意買你的軟體,你開價一百萬美元甚至更多都沒有問題,但你必須給買家相應的原始碼,同時買家擁有你所有的權利。如果這樣,軟體一定奇貴無比,原始碼都給你了,人家還賺啥錢,你只要弄到資本,就可以買下來壟斷

  • 3 #

    安卓是半開源,你看華為手機的開機,還要有個powered by Android ,說明需要授權的。

  • 4 #

    這孩子好傻。既然是開源的,當然就沒有斷供一說。被禁止使用的是商業部分。

  • 5 #

    能登月,作業系統做不了

  • 6 #

    因為開源所以大家執行的是同一套標準,如果封閉即使程式碼再先進,大家都各自為政,無法形成生態系統。

  • 7 #

    開源沒問題!部分閉源會有問題。

  • 8 #

    開源不等於沒版權,不等於免費,不等於沒規則,更不等於不守規則,或按自己利益選擇性執行。

  • 9 #

    沒有那些開源的程式碼,中中國產作業系統是哪來的?

  • 10 #

    有啥辦法!吹了幾年的鴻蒙到現在沒音

  • 11 #

    開源會形成事實標準,其壟斷力遠超閉源軟體

  • 12 #

    根據國際上通行的開源協議,開源軟體已公開發布的版本是無法被禁止的

  • 13 #

    廣場舞跳得挺歡,人家過來把音響拎走、路燈一關,就只能大眼瞪小眼兒了……

  • 14 #

    最主要是生態,沒有生態,一切白扯,最底層的,cpu架構,基於因特爾的86,64,脫離了你怎麼搞,搞了自己玩?說到底還得買人家指令集使用權,沒辦法,

  • 15 #

    開源只是程式碼公開,誰說開源就能隨便用的

  • 16 #

    讓那些沙子看看,還說開源軟體不會被美國斷供?

  • 17 #

    確實可以繼續使用android的東西,只是不能自稱android,

  • 18 #

    我們不缺程式碼倉庫,我們缺的是生態!

  • 整治雙十一購物亂象,國家再次出手!該跟這些套路說再見了
  • 你已經足夠小心,惡意軟體是怎樣出現在你手機裡?