簡述開源協議

簡述開源協議

現在一說到智能手機,相信很容易就會想到蘋果和安卓。安卓搭載的Android是一種基于Linux的自由及開源的操作系統,蘋果手機搭載OS X是蘋果公司為Mac系列產品開發的專屬操作系統。    
安卓手機憑借其開源的特性達到與蘋果系統分庭伉禮的地位,又憑借其開源的價格優勢,牢牢把控手機設備的中低端市場,其市場占有率遠遠高于蘋果手機。  
那么什么是開源,開源以為著什么?

什么是開源  

開源即Open Source 1997年,開放源碼促進會(Open Source Initiative,www.opensource.org)正式成立,它給予了開放源碼一個官方的、正式的定義。它指出,開放源碼并不只是意味著對源碼的存取訪問,而且還要遵守許多原則,總結為以下幾條:    
1. 允許自由再分發——排除了為了短期的銷售額而放棄長期收益的誘惑。
2. 允許對源碼和已編譯的程序一同進行分發——要使程序改進變得容易,首先使修改變得容易。
3. 允許修改和衍生該作品——只具有閱讀源碼的權力,不足以支持獨立的同行評價和快速的進化選擇。
1. 作者源碼的完整性——用戶有權知道正在使用的軟件由誰來負責;作者和維護者也有權利支持和維護聲譽。
1. 無歧視對待對個人和群體——為了從整個過程中得到最大的收益,禁止把某些人排除在外。
1. 不能限制任何人在某一特定領域使用程序——讓商業人士加入社區,而不是被排除在外。
1. 程序上的權利必須適用于任何再分發的程序——禁止以間接的方式封閉軟件。
1. 許可證不能特殊對待一個產品——預先防止了其他類型的許可證的陷阱。
1. 許可證不能限制其他軟件——分發者有對自己的軟件進行選擇的權利。
1. 許可證必須保持技術中立——任何條款都不能根據任何個人技術或者接口的樣式來推斷。  

開源的優勢  

開放源代碼不等于免費。相反,很多商業軟件開放源代碼,但是價格昂貴。開源代碼也遵循著一定的協議,違反協議需賠償數額巨大的賠償金。  
開源也能將項目影響擴大,Google公司的Android和Chromium項影響是世界性的,制定了手機和瀏覽器標準,完全占據了市場核心地位。

幾種典型開源協議  

GPL  

 大多數軟件許可證決意剝奪你共享和修改軟件的自由。相比之下,GNU通用公共許可證試圖保證你共享和修改自由軟件的自由。——保證自由軟件對所有用戶是自由的。GPL適用于大多數自由軟件基金會的軟件,以及由使用這些軟件而承擔義務的作者所開發的軟件。(自由軟件基金會的其他一些軟件受GNU庫通用許可證的保護)。你也可以將它用到你的程序中。當我們談到自由軟件(free
software)時,我們指的是自由而不是價格。
為了保護你的權利,我們需要作出規定:禁止任何人不承認你的權利,或者要求你放棄這些權利。如果你修改了自由軟件或者發布了軟件的副本,這些規定就轉化為你的責任。
例如,如果你發布這樣一個程序的副本,不管是收費的還是免費的,你必須將你具有的一切權利給予你的接受者;你必須保證他們能收到或得到源程序;并且將這些條款給他們看,使他們知道他們有這樣的權利。
我們采取兩項措施來保護你的權利。  
 (1)給軟件以版權保護。  
 (2)給你提供許可證。它給你復制,發布和修改這些軟件的法律許可。  
同樣,為了保護每個作者和我們自己,我們需要清楚地讓每個人明白,自由軟件沒有擔保(no warranty)。如果由于其他某個人修改了軟件,并繼續加以傳播。我們需要它的接受者明白:他們所得到的并不是原來的自由軟件。由其他人引入的任何問題,不應損害原作者的聲譽。
最后,任何自由軟件不斷受到軟件專利的威脅。我們希望避免這樣的風險,自由軟件的再發布者以個人名義獲得專利許可證。事實上,將軟件變為私有。為防止這一點,我們必須明確:任何專利必須以允許每個人自由使用為前提,否則就不準許有專利。
下面是有關復制,發布和修改的確切的條款和條件。

LGPL  

LGPL許可證是LESSER GENERAL PUBLIC LICENSE的簡寫,也叫LIBRARY GENERAL PUBLIC LICENSE,中文譯為“較寬松公共許可證”或者“函數庫公共許可證”。該許可證適用于一些由自由軟件基金會與其它決定使用此許可證的軟件作者所特殊設計的軟件軟件包─比如函數庫(即Library)。

BSD  

BSD許可證原先是用在加州大學柏克利分校發表的各個4.4BSD/4.4BSD-Lite版本上面(BSD是Berkly Software Distribution的簡寫)的,后來也就逐漸沿用下來。1979年加州大學伯克利分校發布了BSD Unix,被稱為開放源代碼的先驅,BSD許可證就是隨著BSD Unix發展起來的。BSD許可證被Apache和BSD操作系統等開源軟件所采納。
相較于GPL許可證和MPL許可證的嚴格性,BSD許可證就寬松許多了,一樣是只需要附上許可證的原文,不過比較有趣的是,它還要求所有進一步開發者將自己的版權資料放上去,所以拿到以BSD許可證發行的軟件可能會遇到一個小狀況,就是這些版權資料許可證占的空間比程序還大。

Apache Licence  

Apache Licence是著名的非盈利開源組織Apache采用的協議。該協議和BSD類似,同樣鼓勵代碼共享和尊重原作者的著作權,同樣允許代碼修改,再發布(作為開源或商業軟件)。需要滿足的條件也和BSD類似:
需要給代碼的用戶一份Apache Licence如果你修改了代碼,需要在被修改的文件中說明。在延伸的代碼中(修改和有源代碼衍生的代碼中)需要帶有原來代碼中的協議,商標,專利聲明和其他原來作者規定需要包含的說明。如果再發布的產品中包含一個Notice文件,則在Notice文件中需要帶有Apache Licence。你可以在Notice中增加自己的許可,但不可以表現為對Apache Licence構成更改。Apache Licence也是對商業應用友好的許可。使用者也可以在需要的時候修改代碼來滿足需要并作為開源或商業產品發布/銷售。

MIT  

 MIT許可證之名源自麻省理工學院(Massachusetts Institute of Technology, MIT),又稱「X條款」(X License)或「X11條款」(X11 License)
MIT內容與三條款BSD許可證(3-clause BSD license)內容頗為近似,但是賦予軟件被授權人更大的權利與更少的限制。[1]
被授權人有權利使用、復制、修改、合并、出版發行、散布、再授權及販售軟件及軟件的副本。
被授權人可根據程式的需要修改授權條款為適當的內容。
在軟件和軟件的所有副本中都必須包含版權聲明和許可聲明。
此授權條款并非屬copyleft的自由軟件授權條款,允許在自由/開放源碼軟件或非自由軟件(proprietary software)所使用。
此亦為MIT與BSD(The BSD license, 3-clause BSD license)本質上不同處。
MIT條款可與其他授權條款并存。另外,MIT條款也是自由軟件基金會(FSF)所認可的自由軟件授權條款,與GPL相容。  

如何選擇開源協議  

輸入圖片說明

原創文章,作者:easyTang,如若轉載,請注明出處:http://www.www58058.com/71904

(0)
easyTangeasyTang
上一篇 2017-03-26
下一篇 2017-03-27

相關推薦

  • Centos7上安裝Ansible和基礎應用

    Ansible 簡介 ansible是個什么東西呢?官方的title是“Ansible is Simple IT Automation”——簡單的自動化IT工具。這個工具的目標有這么幾項:自動化部署APP;自動化管理配置項;自動化的持續交互;自動化的(AWS)云服務管理。所有的這幾個目標從本質上來說都是在一個臺或者幾臺服務器上,執行一系列的命令而已。通俗的說…

    Linux干貨 2016-04-15
  • LINUX用戶建立秘鑰認證實現SHELL腳本管理,分發,部署

    環境介紹 SSH Server [root@vm1 ~]# ifconfig |awk '/broadcast/{print $2}' 192.168.99.241 SSH Client [root@vm2 ~]# ifconfig |awk '…

    Linux干貨 2017-01-05
  • N23-第五周博客作業

    1、顯示當前系統上root、fedora或user1用戶的默認shell。 [root@localhost ~]# cat /etc/passwd | egrep "^root\>" | cut -d: -f1,7 2、找出/etc/rc.d/init.d/functions文件中某單詞后面跟一組小括號的行,形如:hell…

    Linux干貨 2016-12-05
  • 馬哥教育第一天

    來到馬哥教育第一天,初步接觸IT,第一次寫博客,不知道寫點啥,記幾個地址吧。

    2018-03-26
  • ansible 入門與進階

    ansible 入門與進階 Configuration、Command and Control 是什么 ? SSH-based configuration management, deployment, and task execution system 運維工具的分類: agent:基于專用的agent程序完成管理功能,puppet, func, zabb…

    2016-11-09
  • linux基于密鑰的認證

    生成密鑰對兒: [root@Ams ~]# ssh-keygen -t rsa Generating public/private rsa key pair. Enter file in which to save the key (/root/.ssh/id_rsa):  Enter passphrase (empty for no passph…

    Linux干貨 2016-08-02
欧美性久久久久