㈠ 开源协议的协议比较
BSD开源协议是一个给于使用者很大自由的协议。基本上使用者可以”为所欲为”,可以自由的使用,修改源代码,也可以将修改后的代码作为开源或者专有软件再发布。
但”为所欲为”的前提当你发布使用了BSD协议的代码,或则以BSD协议代码为基础做二次开发自己的产品时,需要满足三个条件:
◆如果再发布的产品中包含源代码,则在源代码中必须带有原来代码中的BSD协议。
◆如果再发布的只是二进制类库/软件,则需要在类库/软件的文档和版权声明中包含原来代码中的BSD协议。
◆不可以用开源代码的作者/机构名字和原来产品的名字做市场推广。
BSD 代码鼓励代码共享,但需要尊重代码作者的著作权。BSD由于允许使用者修改和重新发布代码,也允许使用或在BSD代码上开发商业软件发布和销售,因此是对 商业集成很友好的协议。而很多的公司企业在选用开源产品的时候都首选BSD协议,因为可以完全控制这些第三方的代码,在必要的时候可以修改或者二次开发。 Apache Licence是著名的非盈利开源组织Apache采用的协议。该协议和BSD类似,同样鼓励代码共享和尊重原作者的著作权,同样允许代码修改,再发布(作为开源或商业软件)。需要满足的条件也和BSD类似:
◆需要给代码的用户一份Apache Licence
◆如果你修改了代码,需要在被修改的文件中说明。
◆在延伸的代码中(修改和有源代码衍生的代码中)需要带有原来代码中的协议,商标,专利声明和其他原来作者规定需要包含的说明。
◆如果再发布的产品中包含一个Notice文件,则在Notice文件中需要带有Apache Licence。你可以在Notice中增加自己的许可,但不可以表现为对Apache Licence构成更改。
Apache Licence也是对商业应用友好的许可。使用者也可以在需要的时候修改代码来满足需要并作为开源或商业产品发布/销售。 我们很熟悉的Linux就是采用了GPL。GPL协议和BSD, Apache Licence等鼓励代码重用的许可很不一样。GPL的出发点是代码的开源/免费使用和引用/修改/衍生代码的开源/免费使用,但不允许修改后和衍生的代 码做为闭源的商业软件发布和销售。这也就是为什么我们能用免费的各种linux,包括商业公司的linux和linux上各种各样的由个人,组织,以及商 业软件公司开发的免费软件了。
GPL协议的主要内容是只要在一个软件中使用(”使用”指类库引用,修改后的代码或者衍生代码)GPL 协议的产品,则该软件产品必须也采用GPL协议,既必须也是开源和免费。这就是所谓的”传染性”。GPL协议的产品作为一个单独的产品使用没有任何问题, 还可以享受免费的优势。
由于GPL严格要求使用了GPL类库的软件产品必须使用GPL协议,对于使用GPL协议的开源代码,商业软件或者对代码有保密要求的部门就不适合集成/采用作为类库和二次开发的基础。
其它细节如再发布的时候需要伴随GPL协议等和BSD/Apache等类似。 LGPL 是GPL的一个为主要为类库使用设计的开源协议。和GPL要求任何使用/修改/衍生之GPL类库的的软件必须采用GPL协议不同。LGPL 允许商业软件通过类库引用(link)方式使用LGPL类库而不需要开源商业软件的代码。这使得采用LGPL协议的开源代码可以被商业软件作为类库引用并 发布和销售。
但是如果修改LGPL协议的代码或者衍生,则所有修改的代码,涉及修改部分的额外代码和衍生的代码都必须采用LGPL协议。因 此LGPL协议的开源 代码很适合作为第三方类库被商业软件引用,但不适合希望以LGPL协议代码为基础,通过修改和衍生的方式做二次开发的商业软件采用。
GPL/LGPL都保障原作者的知识产权,避免有人利用开源代码复制并开发类似的产品。 MIT是和BSD一样宽范的许可协议,作者只想保留版权,而无任何其它的限制。也就是说,你必须在你的发行版里包含原许可协议的声明,无论你是以二进制发布的还是以源代码发布的。MIT协议又称麻省理工学院许可证,最初由麻省理工学院开发。被授权人权利:1、被授权人有权利使用、复制、修改、合并、出版发行、散布、再授权及贩售软件及软件的副本。2、被授权人可根据程式的需要修改授权条款为适当的内容。被授权人义务:在软件和软件的所有副本中都必须包含版权声明和许可声明。

㈡ 开源许可证都有什么区别,一般开源项目用什么许可证
开源许可证是对商业应用友好的许可。使用者也可以在需要的时候修改代码来满足需要并作为开源或商业产品发布/销售。
㈢ 关于开源软件许可GPL(GNU通用公共许可证)的问题
“为了保护你的权利,我们需要作出规定:禁止任何人不承认你的权利,或者要求专你放弃这些权利。如属果你修改了自由软件或者发布了软件的副本,这些规定就转化为你的责任。
例如,如果你发布这样一个程序的副本,不管是收费的还是免费的,你必须将你具有的一切权利给予你的接受者;你必须保证他们能收到或得到源程序;并且将这些条款给他们看,使他们知道他们有这样的权利。”
来源:网络
㈣ 什么是开源,为什么linux是开源,windows不是
问题很搞笑。。。
使用Linux必须手动输入命令是一个偏见。本人长年累月地使用Linux,但是我并不熟悉Linux的命令。
Linux一般都部署在服务器上,为了让服务器更稳定,在服务器上安装Linux时常常不安装图形环境。这也是让人产生“做什么事情都需要手动输入命令”的错觉。
实际上,我对开源的概念也不是十分理解。简单地说,允许查看、修改源代码的软件就属于开源软件。而像Win和MacOsX这样的系统,源代码都是保密的,他们都是闭源软件。
按照开源许可协议,所有的Linux发行版都必须公开源代码。不过因为源代码很占用空间,源代码一般不会直接附在发行版的光盘中,需要您自己下载。
DOS系统是由汇编语言编写的,其余的能叫上名字的操作系统,比如Linux、DBS、Win之类的,一般都是由C语言编写的。
因为Win是闭源软件,因此您看不到它的源代码,修改起来也比较难。要想修改Win,首先您要熟悉软件的反汇编技术,其次您要做好保密工作,不要让人发现,被发现了是要坐牢的。
顺便说一句:WinCE是开源的。
修改Linux的源代码就比较自由了。
不知到您的编程水平如何,我稍微提醒您一下,自2.6.27开始,Linux内核的代码就超过1000万行了,虽然大部分的代码都是些驱动程序。
在阅读源代码前,最好先找本介绍Linux内核原理的书。
㈤ 开源协议GPL和LGPL最大的区别是什么
简单的说,GPL协议的话,你写的代码必须全部开源,
LGPL则不需要
㈥ 怎样将自己开发的软件发布成支持GPL协议的开源软件
2进制文件可以不用,但源码是一定要。另外如果你的代码用了别人的源代码,而这份开源代码使用的协议与gpl冲突的话,就不能用GPL发布了
㈦ 开源许可证GPL,BSD,MIT,Mozilla,Apache和LGPL的区别
因CooCox用户数及影响力越来越大,CooCox团队也逐渐提高了对软件及代码协议的重视。在收集整理的过程中,一些归纳好的信息和大家分享一下。
首先借用有心人士的一张相当直观清晰的图来划分各种协议:开源许可证GPL、BSD、MIT、Mozilla、Apache和LGPL的区别
license.jpeg
以下是上述协议的简单介绍:
BSD开源协议
BSD开源协议是一个给于使用者很大自由的协议。基本上使用者可以”为所欲为”,可以自由的使用,修改源代码,也可以将修改后的代码作为开源或者专有软件再发布。
但”为所欲为”的前提当你发布使用了BSD协议的代码,或则以BSD协议代码为基础做二次开发自己的产品时,需要满足三个条件:
如果再发布的产品中包含源代码,则在源代码中必须带有原来代码中的BSD协议。
如果再发布的只是二进制类库/软件,则需要在类库/软件的文档和版权声明中包含原来代码中的BSD协议。
不可以用开源代码的作者/机构名字和原来产品的名字做市场推广。
BSD 代码鼓励代码共享,但需要尊重代码作者的著作权。BSD由于允许使用者修改和重新发布代码,也允许使用或在BSD代码上开发商业软件发布和销售,因此是对商业集成很友好的协议。而很多的公司企业在选用开源产品的时候都首选BSD协议,因为可以完全控制这些第三方的代码,在必要的时候可以修改或者二次开发。
Apache Licence 2.0
Apache Licence是著名的非盈利开源组织Apache采用的协议。该协议和BSD类似,同样鼓励代码共享和尊重原作者的著作权,同样允许代码修改,再发布(作为开源或商业软件)。需要满足的条件也和BSD类似:
需要给代码的用户一份Apache Licence
如果你修改了代码,需要再被修改的文件中说明。
在延伸的代码中(修改和有源代码衍生的代码中)需要带有原来代码中的协议,商标,专利声明和其他原来作者规定需要包含的说明。
如果再发布的产品中包含一个Notice文件,则在Notice文件中需要带有Apache Licence。你可以在Notice中增加自己的许可,但不可以表现为对Apache Licence构成更改。
Apache Licence也是对商业应用友好的许可。使用者也可以在需要的时候修改代码来满足需要并作为开源或商业产品发布/销售。
GPL
我们很熟悉的Linux就是采用了GPL。GPL协议和BSD, Apache Licence等鼓励代码重用的许可很不一样。GPL的出发点是代码的开源/免费使用和引用/修改/衍生代码的开源/免费使用,但不允许修改后和衍生的代码做为闭源的商业软件发布和销售。这也就是为什么我们能用免费的各种linux,包括商业公司的linux和linux上各种各样的由个人,组织,以及商业软件公司开发的免费软件了。
GPL协议的主要内容是只要在一个软件中使用(”使用”指类库引用,修改后的代码或者衍生代码)GPL 协议的产品,则该软件产品必须也采用GPL协议,既必须也是开源和免费。这就是所谓的”传染性”。GPL协议的产品作为一个单独的产品使用没有任何问题,还可以享受免费的优势。
由于GPL严格要求使用了GPL类库的软件产品必须使用GPL协议,对于使用GPL协议的开源代码,商业软件或者对代码有保密要求的部门就不适合集成/采用作为类库和二次开发的基础。
其它细节如再发布的时候需要伴随GPL协议等和BSD/Apache等类似。
LGPL
LGPL是GPL的一个为主要为类库使用设计的开源协议。和GPL要求任何使用/修改/衍生之GPL类库的的软件必须采用GPL协议不同。LGPL 允许商业软件通过类库引用(link)方式使用LGPL类库而不需要开源商业软件的代码。这使得采用LGPL协议的开源代码可以被商业软件作为类库引用并发布和销售。
但是如果修改LGPL协议的代码或者衍生,则所有修改的代码,涉及修改部分的额外代码和衍生的代码都必须采用LGPL协议。因此LGPL协议的开源代码很适合作为第三方类库被商业软件引用,但不适合希望以LGPL协议代码为基础,通过修改和衍生的方式做二次开发的商业软件采用。
GPL/LGPL都保障原作者的知识产权,避免有人利用开源代码复制并开发类似的产品
MIT
MIT是和BSD一样宽范的许可协议,作者只想保留版权,而无任何其他了限制.也就是说,你必须在你的发行版里包含原许可协议的声明,无论你是以二进制发布的还是以源代码发布的.
MPL
MPL是The Mozilla Public License的简写,是1998年初Netscape的 Mozilla小组为其开源软件项目设计的软件许可证。MPL许可证出现的最重要原因就是,Netscape公司认为GPL许可证没有很好地平衡开发者对源代码的需求和他们利用源代码获得的利益。同著名的GPL许可证和BSD许可证相比,MPL在许多权利与义务的约定方面与它们相同(因为都是符合OSIA 认定的开源软件许可证)。但是,相比而言MPL还有以下几个显著的不同之处:
◆ MPL虽然要求对于经MPL许可证发布的源代码的修改也要以MPL许可证的方式再许可出来,以保证其他人可以在MPL的条款下共享源代码。但是,在MPL 许可证中对“发布”的定义是“以源代码方式发布的文件”,这就意味着MPL允许一个企业在自己已有的源代码库上加一个接口,除了接口程序的源代码以MPL 许可证的形式对外许可外,源代码库中的源代码就可以不用MPL许可证的方式强制对外许可。这些,就为借鉴别人的源代码用做自己商业软件开发的行为留了一个豁口。
◆ MPL许可证第三条第7款中允许被许可人将经过MPL许可证获得的源代码同自己其他类型的代码混合得到自己的软件程序。
◆ 对软件专利的态度,MPL许可证不像GPL许可证那样明确表示反对软件专利,但是却明确要求源代码的提供者不能提供已经受专利保护的源代码(除非他本人是专利权人,并书面向公众免费许可这些源代码),也不能在将这些源代码以开放源代码许可证形式许可后再去申请与这些源代码有关的专利。
◆ 对源代码的定义
而在MPL(1.1版本)许可证中,对源代码的定义是:“源代码指的是对作品进行修改最优先择取的形式,它包括:所有模块的所有源程序,加上有关的接口的定义,加上控制可执行作品的安装和编译的‘原本’(原文为‘Script’),或者不是与初始源代码显著不同的源代码就是被源代码贡献者选择的从公共领域可以得到的程序代码。”
◆ MPL许可证第3条有专门的一款是关于对源代码修改进行描述的规定,就是要求所有再发布者都得有一个专门的文件就对源代码程序修改的时间和修改的方式有描述。
㈧ 开源软件、GNU计划、GPL协议各是什么三者之间的关系是怎么样的
大多数软件许可证决意剥夺你的共享和修改软件的自由。对比之专下,GNU通用公共许可证力图保证属你的共享和修改自由软件的自由。——保证自由软件对所有用户是自由的。GPL适用于大多数自由软件基金会的软件,以及由使用这些软件而承担义务的作者所开发的软件。当然了,大多开源软件都是基于开源系统上来实现的。著名的开源系统linux,开源软件apache。
㈨ 开源的许可证
开放源代码定义给出了开放源代码软件的基本性质。不幸的是,术语开放源代码遭到了滥用,并且由于它的描述性,它不能作为一个商标(这是我们的首选)被保护。由于社团需要一种可靠的方式以确定一份软件是否真正是开放源代码软件。OSI为此目的而注册了一个认证标志,OSI Certified。如果在一份软件上看到了该标志,那么该软件就是必定是按照遵从开放源代码定义的许可证发布的,否则,该发行人就是在滥用该标志而且违反了法律。
许可证将特定的权利赋予用户,但同时也会规定用户必须遵守的约束。开源软件通常使用开源许可证。所有的开源许可证由开放源代码促进会标准组织(Opensource Initiative,OSI)认证。
获得批准的许可证
以下许可证满足开放源代码的定义,并且已经被批准用于OSI Certified的开放源代码软件。没有给出批准日期的许可证是在1999年1月1日以前批准的。
* The GNU General Public License(GPL)
* The GNU Library(Lesser)General Public License(LGPL)
* The X Consortium License
* The Artistic License
* The Mozilla Public License(MPL)
* TheQPL
* OpenLDAPPublic License
其它符合定义的许可证包括:libpng许可证、zlib许可证、IJG JPEG许可证和BSD许可证。 按照使用条件的不同,开源软件许可证可以分为三类(严苛程度递减)
1. 使用该开源软件的代码再散布(redistribute)时,源码也必须以相同许可证公开。
代表许可类型:GPL,AGPL
例:GPL
GNU 通用公共许可协议(英语:GNU General Public License,简称GNU GPL或GPL),是一个广泛被使用的自由软件许可证条款,最初由理查德·斯托曼为GNU计划而撰写。GPL是自由软件基金会的主打许可证,常用的是1991年的第2版和2007年的第3版。
GPL授予程序接受人以下权利: 以任何目的运行此程序的自由; 再发行复制件的自由; 改进此程序,并公开发布改进的自由(前提是能得到源代码)。 GPL许可协议具有强Copyleft,有“病毒效应”,意味着用户如果要对GPL许可的软件或基于GPL许可的软件的作品做再发行即Redistribution(例如作为用户的产品的一部分发行),那么必须以不强于GPL许可证限制的条款发行,即必须也是开源和免费,这就是所谓的“传染性”。GPL许可协议是目前最流行的开源许可证,被诸多有名的开源软件使用,例如Linux内核、MySQL数据库等。
2. 使用该开源软件的代码并且对开源代码有所修改后再散布时,源码必须以相同许可证公开。
代表许可类型:LGPL, CPL,CDDL, CPL,MPL等
例:LGPL
GNU 宽通用公共许可协议(英语:GNULibrary General Public License,简称LGPL),又名GNU库通用公共许可证,同样出自自由软件基金会,有1999年的2.1版和2007年的3.0版。LGPL是GPL的宽松版,它对产品所保留的权利比GPL 少,总的来说,LGPL 适合那些用于非GPL 或非开源产品的开源类库或框架。因为GPL 要求,使用了GPL 代码的产品必须也使用GPL 协议,开发者不允许将GPL 代码用于商业产品。LGPL 绕过了这一限制。LGPL具有弱Copyleft效力,较商业友好: 允许动态链接; 有条件地允许静态链接 对于LGPL许可的代码本身做了修改,那么再发行就必须使用LGPL或GPL许可证进行。 3. 使用该开源软件的代码(包括修改)再散布(redistribute)时,没有特殊限制,只需要明记许可。
代表许可类型:ASL, BSD,MIT等
例:MIT
MIT协议可能是几大开源协议中最宽松的一个,由麻省理工学院在1988年推出,又名X11许可证或者X许可证,有不少变种。核心条款是:该软件及其相关文档对所有人免费,可以任意处置,包括使用,复制,修改,合并,发表,分发,再授权,或者销售。唯一的限制是,软件中必须包含上述版权和许可提示。这意味着:你可以自由使用,复制,修改,可以用于自己的项目。可以免费分发或用来盈利。唯一的限制是必须包含许可声明。MIT 协议是所有开源许可中最宽松的一个,除了必须包含许可声明外,再无任何限制。
例:BSD
BSD许可证源自加州大学伯克利分校,所有者是加州大学的董事会。跟其他许可证相比,从GNU通用公共许可证(GPL)到限制重重的著作权(Copyright),BSD许可证比较宽松,甚至跟公有领域更为接近。事实上,BSD许可证被认为是center(中间版权),界乎标准的right与GPL的left之间。Take it down to the center and make as many copies as you want。 可以说,GPL强迫后续版本必须一样是自由软件,BSD的后续版本可以选择要继续是BSD或其他自由软件条款或封闭软件等等。
该协议有多种版本,不同项目发行的BSD许可证不同,比如Apple的BSD许可证与4.4BSD Lite衍生操作系统的BSD许可证最主要的版本有两个,新BSD 协议与简单BSD 协议,这两种协议经过修正,都和GPL 兼容,并为开源组织所认可。新BSD 协议(3条款协议)在软件分发方面,除需要包含一份版权提示和免责声明之外,没有任何限制。另外,该协议还禁止拿开发者的名义为衍生产品背书,但简单BSD 协议删除了这一条款。 1.通过电子邮件把许可证发送给license-approval@ opensource .org。在电子邮件中说明你是否愿意以你的签名或者匿名地把许可证发送到许可证讨论列表中。(我们愿意考虑那些根本不希望被发送的许可证,但由于社团的评审是批准的一个重要组成部分,我们将不得不把该许可证私下地发送给评审者:因此,对没有被发送到许可证讨论列表中的许可证的批准,要花费更长的时间,并且通常要更多地与你交流。)
2.如果我们发现你的许可证不符合开放源代码的定义,我们将与你一同解决这个问题。
3. 同时,我们将关注许可证论坛列表,并且与你一同工作以解决大家提出的任何未包含的问题。
4.作为该过程的一部分,我们还将就许可证问题向外界寻求法律上的建议。
5. 一旦许可证符合了开放源代码定义,并且在许可证论坛上经过了充分的讨论或者其它的评审者没有提出重要的问题,我们将通知你,许可证已经被批准了,同时它被复制到我们的网站上,并且被加入以下的许可证列表。

㈩ 采用GPL协议的程序,可以免费应用于商业用途吗
一群废物,说了一堆的屁话,不如让我来说:
GPL协议,它只是针对此办件的开发而拥有的协议,软件的使用是免费的,也就是说,它在你使用时,是免费的,你可不用向任何人付钱,但是如果你为了让这个软件更加的灵活,那么你就可以把软件的源码上载下来进行二次开发,那么二次开发的软件,如果你再使用,就必须要在发布这个修改了之后的程序时,同时在发布包里,加上这个程序的修改了之后的源码。
总之就是两个思路:
【适用于开发】: 适用于二次或N次开发,那么发布时要带上源码,让其传播,所以它最终的版权是大众的,而非某一个人的,因此不用交钱就可以使用。
【适用于应用】: 应用GPL协议的软件不用交钱。
【何时适用于收费】:当这个软件你自己不会修改,又需要找人修改时,你可以向软件的有修改能力的协助者交一部分的钱,那么这就是收费的部分。
GPL协议,它其实就是放下了源码的私藏,公之于众,并以上面的三条协议,使软件在开发,传播上,拥有生命力,从而取得大众共同开发的目的,所以,这个软件的版权是开源者的,但是使用权却是大众的,软件可以出卖它的版权,但是它确再也不可以约束大众免费使用的权益。
从而成为一个大众文化用品。
比如:甲骨文买走了MySQL的版权,但是这个软件,它的使用权,免费权,开发权确是在大众的手里,所以,甲骨文,它只有一个挂名权,与GPL协议的上三条维护权,其它的它没有任何权益。
所以,放开使用GPL协议下的任何软件吧,让那么垄断的软件商们去双腿颤抖吧。