精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

干貨:一些關(guān)于常見開源協(xié)議的問題解答

如意 ? 來源:C語言中文網(wǎng) ? 作者:strongerHuang ? 2020-10-26 15:20 ? 次閱讀

有不少人認(rèn)為開源就是免費(fèi),其實(shí)這個(gè)觀點(diǎn)是錯(cuò)誤的,今天就來談?wù)勱P(guān)于開源的內(nèi)容。

一、關(guān)于開源

開源軟件在追求“自由”的同時(shí),不能犧牲程序員的利益,否則將會(huì)影響程序員的創(chuàng)造激情,因此世界上現(xiàn)在有 60 多種被開源促進(jìn)組織(Open Source Initiative)認(rèn)可的開源許可協(xié)議來保證開源工作者的權(quán)益。

開源協(xié)議規(guī)定了你在使用開源軟件時(shí)的權(quán)利和責(zé)任,也就是規(guī)定了你可以做什么,不可以做什么。

開源協(xié)議雖然不一定具備法律效力,但是當(dāng)涉及軟件版權(quán)糾紛時(shí),開源協(xié)議也是非常重要的證據(jù)之一。

對(duì)于準(zhǔn)備編寫一款開源軟件的開發(fā)人員,也非常建議先了解一下當(dāng)前最熱門的開源許可協(xié)議,選擇一個(gè)合適的開源許可協(xié)議來最大限度保護(hù)自己的軟件權(quán)益。

二、常見開源協(xié)議

1. GNU GPL(GNU General Public License,GNU通用公共許可證)

只要軟件中包含了遵循 GPL 協(xié)議的產(chǎn)品或代碼,該軟件就必須也遵循 GPL 許可協(xié)議,也就是必須開源免費(fèi),不能閉源收費(fèi),因此這個(gè)協(xié)議并不適合商用軟件。

遵循 GPL 協(xié)議的開源軟件數(shù)量極其龐大,包括 Linux 系統(tǒng)在內(nèi)的大多數(shù)的開源軟件都是基于這個(gè)協(xié)議的。

GPL 開源協(xié)議的主要特點(diǎn):

復(fù)制自由:允許把軟件復(fù)制到任何人的電腦中,并且不限制復(fù)制的數(shù)量。

傳播自由:允許軟件以各種形式進(jìn)行傳播。

收費(fèi)傳播:允許在各種媒介上出售該軟件,但必須提前讓買家知道這個(gè)軟件是可以免費(fèi)獲得的;因此,一般來講,開源軟件都是通過為用戶提供有償服務(wù)的形式來盈利的。

修改自由:允許開發(fā)人員增加或刪除軟件的功能,但軟件修改后必須依然基于GPL許可協(xié)議授權(quán)。

2. BSD(Berkeley Software Distribution,伯克利軟件發(fā)布版)協(xié)議

BSD 協(xié)議基本上允許用戶“為所欲為”,用戶可以使用、修改和重新發(fā)布遵循該許可的軟件,并且可以將軟件作為商業(yè)軟件發(fā)布和銷售,前提是需要滿足下面三個(gè)條件:

如果再發(fā)布的軟件中包含源代碼,則源代碼必須繼續(xù)遵循 BSD 許可協(xié)議。

如果再發(fā)布的軟件中只有二進(jìn)制程序,則需要在相關(guān)文檔或版權(quán)文件中聲明原始代碼遵循了 BSD 協(xié)議。

不允許用原始軟件的名字、作者名字或機(jī)構(gòu)名稱進(jìn)行市場推廣。

BSD 對(duì)商業(yè)比較友好,很多公司在選用開源產(chǎn)品的時(shí)候都首選 BSD 協(xié)議,因?yàn)榭梢酝耆刂七@些第三方的代碼,甚至在必要的時(shí)候可以修改或者二次開發(fā)。

3. Apache 許可證版本(Apache License Version)協(xié)議

Apache 和 BSD 類似,都適用于商業(yè)軟件。Apache 協(xié)議在為開發(fā)人員提供版權(quán)及專利許可的同時(shí),允許用戶擁有修改代碼及再發(fā)布的自由。

現(xiàn)在熱門的 Hadoop、Apache HTTP Server、MongoDB 等項(xiàng)目都是基于該許可協(xié)議研發(fā)的,程序開發(fā)人員在開發(fā)遵循該協(xié)議的軟件時(shí),要嚴(yán)格遵守下面的四個(gè)條件:

該軟件及其衍生品必須繼續(xù)使用 Apache 許可協(xié)議。

如果修改了程序源代碼,需要在文檔中進(jìn)行聲明。

若軟件是基于他人的源代碼編寫而成的,則需要保留原始代碼的協(xié)議、商標(biāo)、專利聲明及其他原作者聲明的內(nèi)容信息

如果再發(fā)布的軟件中有聲明文件,則需在此文件中標(biāo)注 Apache 許可協(xié)議及其他許可協(xié)議。

4. MIT(Massachusetts Institute of Technology)協(xié)議

目前限制最少的開源許可協(xié)議之一(比 BSD 和 Apache 的限制都少),只要程序的開發(fā)者在修改后的源代碼中保留原作者的許可信息即可,因此普遍被商業(yè)軟件所使用。

使用 MIT 協(xié)議的軟件有 PuTTY、X Window System、Ruby on Rails、Lua 5.0 onwards、Mono 等。

5. GUN LGPL(GNU Lesser General Public License,GNU 寬通用公共許可證)

LGPL 是 GPL 的一個(gè)衍生版本,也被稱為 GPL V2,該協(xié)議主要是為類庫設(shè)計(jì)的開源協(xié)議。

LGPL 允許商業(yè)軟件通過類庫引用(link)的方式使用 LGPL 類庫,而不需要開源商業(yè)軟件的代碼。這使得采用 LGPL 協(xié)議的開源代碼可以被商業(yè)軟件作為類庫引用并發(fā)布和銷售。

但是如果修改 LGPL 協(xié)議的代碼或者衍生品,則所有修改的代碼,涉及修改部分的額外代碼和衍生的代碼都必須采用 LGPL 協(xié)議。因此LGPL協(xié)議的開源代碼很適合作為第三方類庫被商業(yè)軟件引用,但不適合希望以 LGPL 協(xié)議代碼為基礎(chǔ),通過修改和衍生的方式做二次開發(fā)的商業(yè)軟件采用。

三、如何選擇開源協(xié)議

世界上的開源協(xié)議有上百種(有興趣的讀者請(qǐng)猛擊這里了解),很少有人能徹底搞清它們之間的區(qū)別,即使在最流行的六種開源協(xié)議——GPL、BSD、MIT、Mozilla、Apache 和 LGPL——之中做選擇,也很復(fù)雜。

烏克蘭程序員 Paul Bagwell 畫了一張分析圖,說明應(yīng)該怎么選擇開源協(xié)議,大家看了一目了然,真是清爽。

四、開源等于免費(fèi)嗎?

首先,開源軟件和免費(fèi)軟件是兩個(gè)概念:

開源軟件是指公開源代碼的軟件。開源軟件在發(fā)行的時(shí)候會(huì)附上軟件的源代碼,并授權(quán)允許用戶更改、傳播或者二次開發(fā)。

免費(fèi)軟件就是免費(fèi)提供給用戶使用的軟件。但是在免費(fèi)的同時(shí),通常也會(huì)有一些限制,比如源代碼不公開,用戶不能隨意修改、不能二次發(fā)布等。

免費(fèi)軟件的例子比比皆是,QQ、微信、迅雷、酷狗、360 等都是免費(fèi)軟件,你可以隨意使用,盡情蹂躪;但是,如果你嫌棄它們復(fù)雜,自己刪除了一些無用的功能,然后在網(wǎng)上發(fā)布了一個(gè)精簡版本供大家下載,那么你就離法院的傳票不遠(yuǎn)了。

開源軟件是不抵觸商業(yè)的,開源的目的也不是做慈善事業(yè),而是通過更多人的參與,減少軟件的缺陷,豐富軟件的功能,同時(shí)也避免了少數(shù)人在軟件里留一些不正當(dāng)?shù)暮箝T。開源軟件最終還會(huì)反哺商業(yè),讓商業(yè)公司為用戶提供更好的產(chǎn)品。

Android 就是大眾最熟知的一款開源操作系統(tǒng),它除了用在手機(jī)上,還用在汽車、平板電腦、電視、智能手表等其它硬件平臺(tái),小米、華為、OPPO、三星等都是 Android 的受益者,他們都賺得盆滿缽滿。

很多著名的開源項(xiàng)目背后都有商業(yè)公司支撐,它們的開發(fā)者也都有正式的工作,享受和我們一樣的社會(huì)福利;如果一個(gè)成功的開源項(xiàng)目背后沒有商業(yè)公司,這反而是不健康的,社會(huì)需要開源和商業(yè)之間的互補(bǔ)來促進(jìn)技術(shù)的革新。
責(zé)編AJX

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 開源軟件
    +關(guān)注

    關(guān)注

    0

    文章

    209

    瀏覽量

    15887
  • 協(xié)議
    +關(guān)注

    關(guān)注

    2

    文章

    598

    瀏覽量

    39180
  • Apache
    +關(guān)注

    關(guān)注

    0

    文章

    64

    瀏覽量

    12452
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    英飛凌IGBT應(yīng)用常見問題解答

    [tr][td]英飛凌IGBT應(yīng)用常見問題解答1.IGBT模塊適用于哪些產(chǎn)品?2.Easy系列模塊電壓/電流/功率范圍?3.Easy系列有哪幾種封裝?........總共23個(gè)問題,,已經(jīng)有此資料
    發(fā)表于 12-13 17:16

    常見以太網(wǎng)饋問題解答

    常見以太網(wǎng)饋問題解答
    發(fā)表于 10-24 13:12 ?14次下載
    <b class='flag-5'>常見</b>以太網(wǎng)饋<b class='flag-5'>問題解答</b>

    VxWorks常見問題解答

    VxWorks常見問題解答
    發(fā)表于 03-28 09:53 ?18次下載

    TOPSwitch-HX常見問題解答

    TOPSwitch-HX常見問題解答
    發(fā)表于 04-27 14:05 ?48次下載

    PC 音質(zhì)常見問題解答

    PC 音質(zhì)常見問題解答
    發(fā)表于 08-02 14:24 ?18次下載

    關(guān)于充電池充電器的常見問題解答

    關(guān)于充電池充電器的常見問題解答 我們這里應(yīng)廣大讀者的要求,回答一些常見關(guān)于充電器的問題。我們僅討論最常用的鎳氫電池和鎳鎘電池充電器,不
    發(fā)表于 11-06 10:46 ?789次閱讀

    新手-iPhone/touch常見問題解答

    新手-iPhone/touch常見問題解答 來源于蘋果官方最權(quán)威的基本常見問題解答,對(duì)于剛剛接觸iPhone/iPod touch的新手來說非常有幫助。
    發(fā)表于 02-02 17:29 ?510次閱讀

    AN-1291:數(shù)字電位計(jì):常見問題解答

    AN-1291:數(shù)字電位計(jì):常見問題解答
    發(fā)表于 03-19 04:51 ?8次下載
    AN-1291:數(shù)字電位計(jì):<b class='flag-5'>常見問題解答</b>

    PDIUSBD12常見問題解答資料下載

    PDIUSBD12常見問題解答資料下載
    發(fā)表于 05-14 10:10 ?11次下載

    CAN總線常見問題解答

    CAN總線常見問題解答,面試中常問。
    的頭像 發(fā)表于 12-27 13:47 ?1433次閱讀
    CAN總線<b class='flag-5'>常見問題解答</b>

    CLOCK常見問題解答

    電子發(fā)燒友網(wǎng)站提供《CLOCK常見問題解答.pdf》資料免費(fèi)下載
    發(fā)表于 11-23 10:23 ?0次下載
    CLOCK<b class='flag-5'>常見問題解答</b>

    關(guān)于UCC25640x LLC諧振控制器的常見問題解答

    電子發(fā)燒友網(wǎng)站提供《關(guān)于UCC25640x LLC諧振控制器的常見問題解答.pdf》資料免費(fèi)下載
    發(fā)表于 09-04 09:37 ?0次下載
    <b class='flag-5'>關(guān)于</b>UCC25640x LLC諧振控制器的<b class='flag-5'>常見問題解答</b>

    TFPxxx常見問題解答

    電子發(fā)燒友網(wǎng)站提供《TFPxxx常見問題解答.pdf》資料免費(fèi)下載
    發(fā)表于 09-29 09:56 ?0次下載
    TFPxxx<b class='flag-5'>常見問題解答</b>

    Keystone EDMA常見問題解答

    電子發(fā)燒友網(wǎng)站提供《Keystone EDMA常見問題解答.pdf》資料免費(fèi)下載
    發(fā)表于 10-11 10:43 ?0次下載
    Keystone EDMA<b class='flag-5'>常見問題解答</b>

    Keystone NDK常見問題解答

    電子發(fā)燒友網(wǎng)站提供《Keystone NDK常見問題解答.pdf》資料免費(fèi)下載
    發(fā)表于 10-11 10:41 ?0次下載
    Keystone NDK<b class='flag-5'>常見問題解答</b>