当前位置:首页 > 数码 > 了解各种许可证类型及其对软件开发的影响-掌握开源许可协议 (了解各种许可的意义)

了解各种许可证类型及其对软件开发的影响-掌握开源许可协议 (了解各种许可的意义)

admin6个月前 (05-15)数码19
开源许可协议:促进软件自由与协作 目录 开源许可协议简介 常见的开源许可协议 GNU通用公共许可证(GPL) GNU宽通用公共许可证(LGPL) Mozilla许可证 MIT许可证 选择开源许可协议的注意事项 开源许可协议简介 开源许可协议是一类允许软件源代码公开、免费获取、使用、修改和分发的许可协议。这些协议的目的是促进软件的自由共享和协作,让开发者能够共同改进和创造新的软件。 常见的开源许可协议 1. GNU通用公共许可证(GPL) GPL是一种Copyleft许可证,要求在使用、修改和分发软件时,必须保持软件的自由性。这意味着: 用户可以自由使用、修改和分发软件。 用户必须以GPL许可证发布对软件的任何修改。 用户必须在分发软件时提供源代码。 GPL的目的是保护软件的自由性,防止将其转变为专有软件。 2. GNU宽通用公共许可证(LGPL) LGPL是GPL的一种变体,允许将软件作为库使用,而不要求使用该库的应用程序必须遵守LGPL。 用户可以自由使用、修改和分发软件。 用户可以将软件作为库与闭源软件一起使用。 如果用户对软件进行修改并将其分发,则必须以LGPL许可证发布。 LGPL提供了一种灵活的许可证选择,适用于希望将开源软件作为库使用的开发者。 3. Mozilla许可证 Mozilla许可证广泛用于Mozilla基金会的软件项目中。它允许用户自由使用、修改和分发软件,但要求在分发时保留原始许可证和版权声明。 用户可以自由使用、修改和分发软件。 用户必须在分发软件时保留原始许可证和版权声明。 用户必须在修改源代码时公开发布修改后的代码。 Mozilla许可证鼓励用户参与软件的开发,同时保护原始作者的权益。 4. MIT许可证 MIT许可证是一种非常宽松的许可证,允许用户自由使用、修改和分发软件。 用户可以自由使用、修改和分发软件。 用户不需要在软件副本中包含原始许可证或版权声明。 作者或版权持有人不对软件的使用承担任何责任。 MIT许可证非常灵活,可用于各种软件项目。 选择开源许可协议的注意事项 在选择开源许可协议时,开发者需要考虑以下因素: 软件的目的和目标受众:开源许可协议的选择应与软件的预期用途和目标受众相匹配。 维护成本:一些开源许可协议可能需要更多的维护成本,例如,要求在修改时公开发布源代码。 商业化计划:开发者可能需要考虑开源许可协议对他们商业化计划的影响,例如,GPL限制使用GPL许可证软件的商业化。 与其他软件的兼容性:开发者应考虑开源许可协议是否与他们希望整合的任何其他软件的许可证兼容。 法律影响:开发者应咨询法律顾问,了解开源许可协议的法律影响,例如,GPL可能对专利权提出要求。 通过权衡这些因素,开发者可以为他们的开源项目选择最合适的开源许可协议。 了解各种许可的意义

开源协议的简介

除了大家比较熟悉的GPL协议之外,开源界还有很多许可证,如LGPL许可证、BSD许可证等,下面就来一一介绍。 LGPL许可证,也是自由软件联盟GNU开源软件许可证的一种,大部分的 GNU软件,包括一些函数库,是受到原来的 GPL许可证保护的。 而LGPL许可证,适用于特殊设计的函数库,且与原来的通用公共许可证有很大的不同,给予了被许可人较为宽松的权利,所以叫“较宽松公共许可证”。 在特定的函数库中使用它,以准许非自由的程序可以与这些函数库连结。 当一个程序与一个函数库连结,不论是静态连结或使用共享函数库,二者的结合可以合理地说是结合的作品,一个原来的函数库的衍生品。 因此,原来的通用公共许可证只有在整个结合品满足其自由的标准时,才允许连结。 较宽松通用公共许可则以更宽松的标准允许其它程序代码与本函数库连结。 例如,在少数情况下,可能会有特殊的需要而鼓励大家尽可能广泛地使用特定的函数库,因而使它成为实际上的标准。 为了达到此目标,必须允许非自由的程序使用此函数库。 一个较常发生的情况是,一个自由的函数库与一个被广泛使用的非自由函数库做相同的工作,在此情况下,限制只有自由软件可以使用此自由函数库不会有多少好处,故我们使用了LGPL许可证。 在其他情况下,允许非自由程序使用特定的函数库,可以让更多的人们使用自由软件的大部分。 例如,允许非自由程序使用GNU C函数库,可以让更多的人们使用整个GNU作业系统,以及它的变形,GNU/Linux操作系统。 尽管LGPL许可证对使用者的自由保护是较少的,但它却能确保与此函数库连结的程序的使用者拥有自由,而且具有使用修改过的函数库版本来执行该程序的必要方法。

开源文化的著名开源许可类型

(1)BSD许可--它要求版权和著者身份申明;(2)GPL--通用公共许可(CopyLeft)禁止派生或发行产品的限制;(3)LGPL--库/次级GPL,它不同于GPL许可证,在这个许可证下,库(函数库)可以自由地联接到专有软件;(4)Artistic许可--使作者保持对进一步开发的控制。 (5)Netscape公共许可(NPL)--基于GPL精神的新的许可证,但是保持了对源码更多的控制和所有权;(6)公共域(Public Domain)--通常用于决定性的算法以鼓励广泛使用,通常由美国政府使用。 BSD是Berkely Software Distribution的缩写,意思是伯克利软件发行版。 BSD是一整套软件发行版的统称。 从软件发行版到操作系统的演变是有历史过程的,这一点对FreeBSD很重要。 BSD于1983年8月正式发布,在18个月内就签发了1000多份站点许可证,是非常具有知名度的版本。 到了1986年6月,4.3BSD发布,而到了1988年,CSRG发布了4.3BSD-Tahoe,这是第一个把BSD内核分解为依赖于机器和独立于机器的两部分的版本,这是非常有价值的,它使BSD得以移植到众多不同的体系结构中。 由于BSD使用了AT&T Unix的部分源代码,当AT&T源代码许可证费用不断增加的时候,一些希望能够使用BSD代码为PC生产基于TCP/IP联网产品的厂商要求Berkely将AT&T代码从BSD发行版中分离出来,并给他们签发单独的许可证条款,而不需要AT&T的源代码许可证。 因此,到了1989年6月,一个完全没有AT&T Unix代码的BSD版本诞生了,称之为Networking Release 1。 这是第一套由Berkely发布的自由可再发行(freely-redistributable)的代码,,它允许被授权的用户以源代码或者二进制的形式发布修改过的或为修改过的代码,并且可以不向Berkely申报版税,唯一要求是在源代码文件中原封不动的保留Berkely的版权声明,并且在含有以上代码的其他产品文档中声明其产品包括来自于加州大学和其他贡献者的代码。 这就是著名的BSD许可证的起源。 GPL-是自由软件的应用最广泛的软件许可证,人们可以修改程式的一个或几个副本或程式的任何部分,以此形成基於这些程式的衍生作品。 必须在修改过的档案中附有明显的说明:您修改了此一档案及任何修改的日期。 您必须让您发布或出版的作品,包括本程式的全部或一部分,或内含本程式的全部或部分所衍生的作品,允许第三方在此许可证条款下使用,并且不得因为此项授权行为而收费。 最普遍的是开放源代码后,满足GPL许可,然后通过发行、咨询、增加用户定制功能来收费。 另一种是将开放源代码和有版权的软件捆绑发行,这样,赚取版权费用。 一种是通过开放全部或部分源代码,收集补丁程序,并满足用户知情权的要求。 作为商业软件的补充。 通过发行多许可证的方式,从其他许可证赚钱。 通过开放源代码和免费使用赚取垄断标准的地位。 NPL是1998年网景公司把Netscape开源之后,由Netscape公司以公众可以对他进行测试版本测试的形势提出的,它试图在商业企业推广自由软件开发和保护自由软件开发之间达成一种妥协,受NPL约束的代码在授权给第三方时的条款与NPL的不同使NPL无法让开源社区接受。

免责声明:本文转载或采集自网络,版权归原作者所有。本网站刊发此文旨在传递更多信息,并不代表本网赞同其观点和对其真实性负责。如涉及版权、内容等问题,请联系本网,我们将在第一时间删除。同时,本网站不对所刊发内容的准确性、真实性、完整性、及时性、原创性等进行保证,请读者仅作参考,并请自行核实相关内容。对于因使用或依赖本文内容所产生的任何直接或间接损失,本网站不承担任何责任。

标签: 开源

“了解各种许可证类型及其对软件开发的影响-掌握开源许可协议 (了解各种许可的意义)” 的相关文章

一起探索技术新天地!-7个不可错过的开源项目 (一起探索技术的成语)

一起探索技术新天地!-7个不可错过的开源项目 (一起探索技术的成语)

视频翻译:pyvideotrans pyvideotrans 是一款视频翻译工具,可以将一种语言的视频翻译为另一种语言并进行配音。它基于 Whisper 离线模型(...