中文字幕在线观看,亚洲а∨天堂久久精品9966,亚洲成a人片在线观看你懂的,亚洲av成人片无码网站,亚洲国产精品无码久久久五月天

開源漫談之GNU GPL的前世今生

2018-06-11    來源:

容器云強勢上線!快速搭建集群,上萬Linux鏡像隨意使用

由于參與開源運動的多為開發(fā)者與設(shè)計者,而開源許可協(xié)議的原文往往跟法律條文一樣難懂,導(dǎo) 致開源社區(qū)的很多參與者并沒有對開源許可協(xié)議產(chǎn)生足夠的認識。但事實上,了解開源許可協(xié)議不僅可以幫助我們更好的做出選擇,并且可以更加深入的參與開源社 區(qū)的文化。

要了解開源許可協(xié)議,當然要從GNU GPL開始說起。這個許可協(xié)議究竟是如何誕生,又是如何被社區(qū)接受并廣為使用的呢?請看下面的介紹。

GNU GPL條文概述

GNU General Public License,通常簡稱為GPL,是當下最為通用的開源許可協(xié)議。GPL的條文最早在1989年由 Richard Stallman(RMS)撰寫,用于GNU項目。這位自由軟件之父在當年提出了四大自由的訴求:

◆可以使用軟件做任何事的自由

◆可以根據(jù)自己需要任意修改軟件的自由

◆可以與別人分享軟件的自由

◆可以與別人分享自己對軟件所做改動的自由

copyleft 

為了有效地保護這些自由,RMS將GPL定義為第一個、同時也是最為嚴格的Copyleft許可協(xié)議——也就是說,如果你使用了按照GPL發(fā)布的項 目,那么你的項目也必須按照GPL許可協(xié)議發(fā)布,不得添加任何其他限制。(不過,Copyleft這個理念卻不是從GPL開始,而是從20世紀70年代起 就有人開始實行的。)使用GPL協(xié)議的代碼制作的程序并非不能拿來賣錢,事實上RMS開始自由運動的第一筆經(jīng)費就是通過售賣附在磁碟上的Emacs賺來 的。GPL的主要規(guī)定在于源代碼必須自由公開。之后為了增強此協(xié)議的Copyleft效力以及與專有軟件代碼以及其他協(xié)議代碼的兼容性,RMS又先后在 1991年和2007年敲定了GPLv2和GPLv3的條文。

使用GPL的知名開源項目

根據(jù)Black Duck Open Source Resource Center(直譯為黑鴨子開源資源中心,由Black Duck軟件公司發(fā)起建立并維護的數(shù)據(jù)庫)的調(diào)查,目前使用GNU GPLv2的開源項目是最多的。到今天為止(2010年5月)的統(tǒng)計中,GPLv2占據(jù)了全部開源項目當中48.54%的比例,而GPLv3的使用率也已 經(jīng)不低,達到了5.61%。這其中包括很多我們所熟悉的開源項目:

GNU GPL 

Linux:如日中天的操作系統(tǒng),和Unix以及整個自由軟件運動有著非常深的淵源。目前使用GPLv2(因此在理論上,所有的Linux發(fā)行版都 遵循GPL許可協(xié)議)。

GNU系列:GNU Emacs,GNU調(diào)試器,GNU C編譯器等等。當然,GNU項目已經(jīng)在使用GPLv3。

eMule電驢:眾所周知的P2P下載工具,目前使用GPLv2。有興趣的讀者可以看看他們翻譯的非官方GPL中文文本。

WordPress:流行的博客系統(tǒng),目前使用GPLv2。

Java:Java的HotSpot技術(shù)和Java語言編譯器javac從2006年開始采用GPLv2,不過條款中在GPLv2允許的范圍內(nèi)使用 了linking exception(直譯為連接例外),所以是一個修改過的GPLv2。另外,同屬于Sun的Glassfish和NetBeans IDE也都采用此種許可協(xié)議。

MySQL:著名的開源數(shù)據(jù)庫。MySQL采用的是雙重許可協(xié)議——帶有例外的GPLv2,以及專有類型的最終用戶許可協(xié)議。這種雙重許可的方式是 開源軟件發(fā)展多年的一個產(chǎn)物,這種方式允許廠商通過售賣開源軟件的許可證賺錢,為想要使用GPL開源項目而又不想公開自己代碼的用戶提供了另一種選擇。至 于這種方法是否有利于開源界,以及是否會被用來鉆空子,目前還無法得出明確的結(jié)論。不過可以肯定的一點是,因為MySQL在GPLv2下發(fā)布,所以無論之 后發(fā)生什么事,MySQL這個開源 技術(shù)都是不可能被扼殺的。

GPL牽涉的法律案件回顧

須知RMS所做的遠不止是開發(fā)了GNU項目以及確定了GNU GPL許可協(xié)議。為了自由軟件的推廣,RMS在1985年創(chuàng)建了自由軟件基金會(Free Software Foundation,F(xiàn)SF),并一直致力于解決自由軟件運動相關(guān)的法律和結(jié)構(gòu)問題。

可想而知,GPL在推出之后并開始流行的十多年間成為了很多專有軟件廠商的眼中釘。最早的一起直接針對GPL的法律訴訟發(fā)生在2003年8月,身為 原告方的SCO Group以Linux內(nèi)核中使用了IBM AIX代碼,而AIX代碼又使用了SCO Unix代碼為由,將IBM告上了法庭。這一舉動激發(fā)了Linux社區(qū)的公憤,IBM繼而聯(lián)手紅帽針對SCO提起反訴與上訴;之后SCO開始恐嚇不愿撤銷 SCO Unix使用權(quán)的Linux用戶,并更進一步展開了對Novell、AutoZone和DaimlerChrysler的訴訟。這一系列訴訟逐漸演變成了 一場曠日持久的戰(zhàn)爭。

SCO Unix 

這場戰(zhàn)爭的戰(zhàn)場之一就在于GPL:根據(jù)SCO的申訴,SCO Unix的源代碼是當時SCO的一些員工私自按照GPL發(fā)布的,因此不具備法律效力。SCO的發(fā)言人還進一步表示,“GPL違背美國憲法,還有版權(quán),反托 拉斯,及出口管制等法令。”但是,整個事情還要更加復(fù)雜:Unix原本是AT&T賣給Novell而Novell又賣給SCO的,因此自由軟件 和開源社區(qū)反過來質(zhì)疑SCO是否真正擁有Unix的所有權(quán);而FSF也站出來,依據(jù)GPL的條文捍衛(wèi)Linux用戶不受恐嚇的權(quán)利。

美國法院最終并沒有在GPL許可協(xié)議上進行定論,但數(shù)年間的法律判決基本都對SCO不利,2005年的判決中甚至對SCO沒有提供侵權(quán)代碼的證據(jù)表 示了直白的鄙夷。SCO最終在2007年申請了破產(chǎn)保護,并希望賣出自己的Unix產(chǎn)品線,但這似乎也不可能了:美國法院在那一年宣判Unix屬于 Novell,并在最近的2010年3月31日重復(fù)了這個判決。

雖然這場戰(zhàn)爭的主戰(zhàn)場與GPL關(guān)系不大,但Linux一方的勝利還是為GPL增添了一定力量。在2007年,一個FLOSS一方的叫做 SFLC(Software Freedom Law Center,軟件自由法律中心)的法律團體以違反GPL協(xié)議為由,代表BusyBox的兩位開發(fā)者將Monsoon Multimedia軟件廠商告上了法庭。在此之前,針對違反GPL協(xié)議的處理方法一直是由FSF等開源組織私下溝通解決的,因此此案成為了美國第一例因 GPL而立案的案件。不過,這宗訴訟最后以雙方庭外和解的方式結(jié)束,GPL也因此失去了一次驗證其法律有效性的機會。

為什么社區(qū)對GPL如此青睞?

GPL是一個代表了RMS的Copyleft理念的許可協(xié)議,在各種開源許可協(xié)議中屬于最為嚴格的一個,可以說是直接阻礙了開發(fā)者通過販賣版權(quán)和專 利軟件這種傳統(tǒng)的軟件賺錢營生。但是為什么在這么多的開源項目當中,使用GPL協(xié)議的項目占據(jù)了一半以上的高比例呢?由于開發(fā)者大多數(shù)專注于開發(fā)本身,而 對許可協(xié)議這個概念并不十分重視,所以有些項目的發(fā)起人在沒有進行深入了解的時候直接選取了流行的GPL協(xié)議,這是原因之一。不過有很多社區(qū)人士則明確的 表達過自己選擇GPL的理由——

“GPL代表了自由。”

“我使用GPL,因為微軟討厭它。我不用BSD,因為微軟喜歡它。”

“GPL意味著分享,而BSD/MIT協(xié)議意味著偷竊。當然,這取決于你如何定義分享與偷竊!”

眾多觀點之中,Linux之父Linus Torvalds的說明毫無疑問是值得了解的。在2008年的一次訪談中,Linus對許可協(xié)議的選擇是這樣評論的:

Linus Torvalds 

“我相信GPL(尤其是v2)是一個協(xié)同工作的絕佳模式——所有的人分享他們的代碼,同時確保沒有渾水摸魚者能夠利用他人的工作成果來為自己取得好 處——你使用自己貢獻的源代碼來為你所獲得的源代碼進行“支付”。我將其稱之為tit-for-tat模式,這種模式不僅適用于軟件界,也同樣在經(jīng)濟學(xué)與 博弈論中十分出名。

不過這種tit-for-tat模式并非是所有人的需求。比如說,如果你隸屬標準委員會,你只是希望能夠借由一段開源代碼的傳播來推廣一個標準,而 并不介意這段代碼是否會被用在專有軟件中盈利,那么Apache或BSD協(xié)議則比較合適。

即使單純是從理性的角度來看,不同許可協(xié)議的存在也都是合理的。同時我也要說,程序員們并非在任何時刻都是理性的。自負的心理,個人的特殊需求,都 是導(dǎo)致眾多有細微差別的許可協(xié)議誕生的原因。

不過我們要知道,有選擇是件好事!而且非常流行的許可協(xié)議并不是那么多,所以基本上沒有什么可困擾的。”

講到這里,相信大家對于GNU GPL開源許可協(xié)議的由來和使用情況已經(jīng)有了相當?shù)牧私。當然正如同上面介紹的,在開源運動的發(fā)展歷程中,GPL并非是最早誕生的許可協(xié)議,而且隨著時間 的推移與各種需求的影響,社區(qū)中出現(xiàn)了很多其他的開源許可協(xié)議,其中也有不少是由GPL修改而來的。這些其他的許可協(xié)議是如何誕生,它們和GPL有什么不 同,而社區(qū)又為什么會選擇這些許可協(xié)議呢?我們在下一篇文章中會繼續(xù)介紹。

標簽: linux Mysql 標準 代碼 開發(fā)者 美國 數(shù)據(jù)庫 推廣 問題 選擇 用戶

版權(quán)申明:本站文章部分自網(wǎng)絡(luò),如有侵權(quán),請聯(lián)系:west999com@outlook.com
特別注意:本站所有轉(zhuǎn)載文章言論不代表本站觀點!
本站所提供的圖片等素材,版權(quán)歸原作者所有,如需使用,請與原作者聯(lián)系。

上一篇:分析:虛擬化和云將可能改變數(shù)據(jù)存儲

下一篇:又到雷雨季 企業(yè)網(wǎng)絡(luò)設(shè)備防雷進行時