1、 瞭解幾種常見的開源協議linux
GPL、BSD、MIT、Apache和LGPLide
(寬鬆程度:MIT > BSD > Apache > LGPL > GPL) spa
2、 名詞解釋操作系統
(1)GNU(革奴計劃)orm
GNU 是 GNU is Not Unix的縮寫,ci
是由Richard Stallman在1983年9月27日公開發起的,當時其目標是但願建立一套徹底自由的操做系統,來代替當時的閉源商業操做系統Unix。GNU表明了自由軟件運動。開發
(2) GPL (General Public License,GNU通用公共許可協議)get
A. GPL最初由理查德·斯托曼(Richard Matthrew Stallman)爲GNU計劃而撰寫,是一個普遍被使用的自由軟件許可協議條款。產品
B. 協議主要內容:it
只要在一個軟件中使用GPL 協議的產品,則該軟件產品必須也採用GPL協議,既必須也是開源和免費。
解釋:
GPL不容許修改後或衍生的代碼做爲閉源的商業軟件進行發佈銷售。
咱們熟悉的Linux就是使用的GPL協議,因此咱們能用到各類免費的linux發行版。
(3) LGPL (GNU寬通用公共許可證)
協議主要內容:
和GPL協議不一樣,LGPL容許商業軟件引用採用LGPL協議的代碼,而不須要開源商業軟件。
可是若是修改了LGPL協議的代碼,全部修改的代碼和衍生的代碼都必須採用LGPL協議。
解釋:
LGPL協議的開源代碼很適合做爲第三方類庫被商業軟件引用,
但不適合但願以LGPL協議代碼爲基礎,經過修改和衍生的方式作二次開發的商業軟件採用。
(4) MIT許可證
MIT是最寬鬆的軟件許可協議,做者只想保留版權,而無任何其餘限制。
(5) BSD開源協議
跟其餘協議相比,BSD也是相對寬鬆的軟件許可協議。基本上能夠「隨心所欲」,能夠自由的使用,修改源代碼,也能夠將修改後的代碼做爲開源或者專有軟件再發布。
(6)Apache協議
Apache與BSD相似,不過若是你修改了代碼,須要在被修改的文件中說明,
在延伸的代碼中須要帶有原來代碼中的協議,商標,專利聲明和其餘原來做者規定須要包含的說明。