• <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>
  • 谷歌對阿里云下手了:谷歌指責阿里云抄襲(2)

    發表于:2012-09-17來源:新浪作者:新浪點擊數: 標簽:谷歌阿里云抄襲
    GPL使軟件開發者獲得了極大的自由,可以免費閱讀、使用全世界最優秀的程序代碼。但它的強傳染性也削弱了它的商業前景。一些手機制造商如果針對自己

      GPL使軟件開發者獲得了極大的自由,可以免費閱讀、使用全世界最優秀的程序代碼。但它的強傳染性也削弱了它的商業前景。一些手機制造商如果針對自己的硬件開發一份Linux驅動,它必然要調用一些Linux基本函數、類庫,該驅動因此會被GPL傳染,要公開所有源代碼。但這可能暴露廠商的硬件細節,造成泄密。同樣,一些商業公司也會認為,將自己的獨有技術拿出來支持Linux,會因為GPL的免費開源特性,造成創新成果流失(微軟的鮑爾默就曾經說GPL讓Linux染上了癌癥)。

      為了規避這一問題,谷歌除了在操作系統核心使用了Linux代碼之外,在其他專門為安卓開發的相當一部分代碼中,使用了傳染性不那么強的開源協議:基于Apache的ASL或者基于BSD的BSD協議。這兩種協議的共同點在于對商業應用十分友好,遵循這兩種協議的開源代碼,商業公司可以拿過去用,而開發出的產品不一定需要也開源,可以視情況打包為閉源商業軟件。在安卓系統中,大部分硬件驅動程序,以及谷歌專門為移動設備開發的基本函數庫Bionic,都慷慨地采用了BSD或ASL開源協議,其中包括Dalvik虛擬機等安卓運行庫(runtime)。(整個安卓操作系統各部分所遵循的版權協議見圖)

    安卓操作系統各部分所遵循的版權協議

      安卓操作系統各部分所遵循的版權協議

      對比代碼是解答“是否抄襲”的核心

      這里要多說兩句,谷歌為什么要允許別人閉源使用自己的開源代碼呢,它有啥好處?必須要說明,開源協議的選擇體現了軟件的價值觀,也體現了開發者的商業考量。如果谷歌讓整個安卓系統采用GPL協議,看上去所有開發者的進一步開發都會被開源出來,系統創新的速度可能更快;但這樣有個更大的副作用,就是很多商業公司就不愿意介入安卓開發了——一介入就被“傳染”了要開放自己的源代碼了。

      為了團結其他商業公司,讓更多的手機廠商原意采用安卓、更多的軟件廠商原意為安卓開發豐富多彩的應用APP,谷歌選擇了在Linux核心之外,另行獨立開發出安卓的運行環境與函數庫,并將這部分以更為自由的BSD和ASL協議發布。這樣,開發者基于安卓開發的應用,愿意貢獻給社區,就開源;希望保守自己的商業秘密,就閉源。這個策略目前來看相當成功,安卓手機、應用APP這一硬一軟兩個方面,在這幾年突飛猛進地發展,選擇了合適的開源協議功不可沒(關于谷歌選擇開源協議的分析,阮一峰翻譯了一篇文章,可以用來作為背景學習)。

      通過安卓的體系設計,我們大概對幾種不同的開源協議有了初步認識?,F在就來分析阿里云OS。阿里云OS的體系結構如圖所示??梢钥吹?,阿里云OS同樣基于Linux核心。這就涉及第一個版權問題:這部分代碼按照GPL規定已經被“傳染”,必須開源。目前為止,在公開報道中,我們還沒有找到阿里云OS“部分開源”的消息。

    阿里云OS的體系結構

      阿里云OS的體系結構

      在這部分代碼開源之后,業內人就可以對阿里云和安卓做一個更透徹的比較,看看到底是前者直接使用了后者的代碼,還是真的如阿里自己所說,是獨立在Linux基礎上開發出來的新操作系統。因為谷歌安卓中的Linux核心,與一般的Linux核心還有不同。為了適應移動設備內存小、CPU頻率低、對耗電量高度敏感的特點,谷歌將這部分Linux核心做了修改,并依據GPL將修改開源。從這篇文章可以看到,谷歌對Linux核心做了至少兩處重大改動:進程間通訊(IPC)模塊Binder,和至關重要的電量管理模塊。阿里云OS既然也是移動操作系統,必然需要對本來為桌面系統開發的Linux做出相似的處理。這個處理方式,是沿用了谷歌的方式,還是真正的自主開發呢?代碼公布后,自然見分曉。

      雙方爭議的另一個核心,是阿里云OS如何實現了對安卓應用的兼容。安卓系統的開發語言是java,為了精簡java程序使之適用于移動設備,谷歌使用了Dalvik虛擬機。注意Dalvik不是java虛擬機,它是將java程序重新打包為一種更為精簡的形式運行。阿里云在第二份聲明中說自己用了“不同于Dalvik的java虛擬機”,那不但二者的代碼不同,連工作原理也會有不同了。

      包括Dalvik在內的安卓運行庫,采用的是ASL和BSD協議,也就意味著阿里云就算直接用了這部分代碼,也可以選擇不公開源代碼。但這不等于用了白用:ASL和BSD都規定,使用了遵循該協議的開源代碼,必須以顯要方式標明原開發者的版權歸屬;這種標明方式,通常形式有源代碼中保留原作者的權利聲明和其他原作者規定的說明。阿里云既然已經披露了自己使用安卓代碼的情況,這部分代碼中是否保留了谷歌的版權聲明,只需要查看相應程序的說明文件即可。

      總算把開源協議這部分介紹得差不多了?;ㄙM這么多筆墨的目的在于說明,這次谷歌與阿里云之爭,不應該像以前業界的一些爭論演變為口水戰,而應該像另外一些爭論一樣,可以讓更多人了解操作系統、開源協議等相關知識,消除許多誤區(這兩類爭論我就不具體點名舉例了),避免被人當技術小白糊弄。要達到這個目的很簡單,阿里云OS公開指定部分的源代碼,供業內行家與谷歌代碼進行比對即可。這不是強人所難,因為既然依照GPL、ASL、BSD等規范享用了一大批免費開源源代碼,那也應該遵循人家規定的義務。

      當然,在中國這個用盜版軟件都異常有理的國家,各類開源協議都是防君子不防小人的,程序源代碼都是純文本文件,你不遵循協議,它也不會鬧脾氣不運行,或者在屏幕上打出一行字來罵你。但無論是阿里,還是另外號稱要做自主操作系統的華為、百度、聯想,都是國際級大公司,應該不會耍這種初級流氓。

      安卓用戶與開發者成為贏家

      也有一些有技術背景的朋友可能會奇怪,谷歌的安卓系統已經提供了相當寬松的條件,核心全部開源消除了安全隱患,龐大的社區和資金支持保證了系統快速進化,在這種情況下,為什么這些公司還要一股勁地開發自己的操作系統呢?把精力用在做好跟公司業務有關的平臺、APP上不是更好嗎。這個問題很難回答,我也沒有確定的答案。有些微博網友說是因為如果打出自主操作系統的牌子,阿里云OS就可以獲得國家“核高基”( 核心電子器件、高端通用芯片及基礎軟件產品)資金資助。我查了一下,阿里云在某些展會上的確出現在核高基成果展區,也有微博上的實名用戶說,阿里云獲得了863計劃的8000萬元資金,他當時是評委。但這些資金項目與阿里云舍棄安卓走自主之路之間還暫時找不到官方表述和公開表達,所以建議網友們在找到新的證據之前,不要過于肯定地認定這一點。

    原文轉自:http://www.kjueaiud.com

    ...
    老湿亚洲永久精品ww47香蕉图片_日韩欧美中文字幕北美法律_国产AV永久无码天堂影院_久久婷婷综合色丁香五月

  • <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>