开源协议知多少-转贴
上一篇 / 下一篇 2006-12-01 10:46:49 / 个人分类:开源
来源:软件世界2006年第22期在线教育资讯:q'J7E3m9})J4I
作者:无
z%Ht/g^s8}0n0开源协议知多少
:W^ YLm2sFX0在线教育资讯&OA8w*?)SW `n3p)A&w
除了大家比较熟悉的GPL协议之外开源界还有很多许可证,如LGPI,许叫‘证 BSD许可证等,下面就来一一介绍。在线教育资讯'do)U1og
DFa}n0 LGPL许可证在线教育资讯\OnS4c,cF"N-c
LGPL许可证是LESSER GENERAL PUBLIC LICENSE的简写,也叫LI—— BRARY GENERAl。PUBLIC LICENSIe,中文译为“较宽松公共许可证”或者“函数库公共许可证”。该许可证适用于一·些由自由软件基金会与其它决定使用此许叫‘证的软件作者所特殊设计的软件软件包——比如函数库(即Library)。 LGPL许=---/证的特点
,O-tXm0i]0 LGPL许可证,也是自由软件联盟 GNU开源软件许可证的一‘种,大部分的 GNU软件,包括一些函数库,是受到原来的GPL许可证保护的。而LGPL许可证,适用于特殊设计的函数库,且与原来的通用公共许可证有很大的不同,给予—厂被许可人较为宽松的权利,所以叫“较宽松公共许可证”。在特定的函数库中使用它,以准许非自由的程序可以与这些函数库连结。在线教育资讯1N ?,eI|~
当一个程序与一个函数库连结,不论是静态连结或使用共享函数库,二者的结合可以合理地说是结合的作品,…个原来的函数库的衍生品。因此,原来的通用公共许可证只有在整个结合品满足其自由的标准时,才允许连结。较宽松通用公共许可则以更宽松的标准允许其它程序代码与本函数库连结。例如,在少数情况下,可能会有特殊的需要而鼓励大家尽可能广泛地使用特定的函数库,因而使它成为实际上的标准。为了达到此目标,必须允许非自由的程序使用此函数库。一个较常发生的情况是,一个自由的函数库与一个被广泛使用的非自由函数库做相同的工作,在此情况下,限制只有自由软件可以使用此自由函数库不会有多少好处,故我们使用了LGPL许可证。
*}'Sk5xw5k'IV$m%r0 在其他情况—下允许:非自由程序使用特定的函数库,可以让更多的人们使用自由软件的大部分。例如,允许非自由程序使用GNU C函数库,可以让更多的人们使用整个GNU作业系统,以及它的变形, GNU/Linux操作系统。在线教育资讯&d^-Ku0KSh
尽管LGPL许可证对使用者的自由保护是较少的,但它却能确保与此函数库连结的程序的使用者拥有自由,而且具有使用修改过的函数库版本来执行该程序的必要方法。
3z0q~Y$`v{3X6Z0
y_$|8t j0 MPL许可证在线教育资讯8c$?8V s;d
MPL是The Mozilla Public License的简写,是1 99 8年初Netscape的 Mozilla小组为其开源软件项目设计的软件许可证。MPL许可‘证出现的最重要原因就是,Netscape公司认为GPL许可证没有很好地平衡开发者对源代码的需求和他们利用源代码获得的利益。同著名的GPL许可证禾[1BSD许可证相比,MP[。在许多权利与义务的约定方面与它们相同(因为都是符合OSIA认定的开源软件许可证)。但是,相比而言MPL还有以下几个显著的不同之处:
AP:c^*qY_)h0 ◆MPL虽然要求对于经MPL许可证发布的源代码的修改也要以MPL许可证的方式再许可出来,以保证其他人可以在MPL的条款下;共享源代码。但是,在 MPL许可证中对“发布”的定义是“以源代码方式发布的文件”,这就意味着 MPL允许一个企业在自己已有的源代码库上加一个接口,除了接口程序的源代码以MPL许可证的形式对外许可外,源代码库中的源代码就可以不用MPL许可证的方式强制对外许可。这些,就为借鉴别人的源代码用做自己商业软件开发的行为留了一个豁口。在线教育资讯%BPMaxYR/x"g C
◆MPL许可证第三条第7款中允许被许可人将经过MPL许可证获得的源代码同自己其他类型的代码混合得到自己的软件程序。
q.da Z|5k']d0 ◆对软件专利的态度,MPL许可证不像GPL许可证那样明确表示反对软件专利,但是却明确要求源代码的提供者不能提供已经受专利保护的源代码(除非他本人是专利权人,并书面向公众免费许可这些源代码),也不能在将这些源代码以开放源代码许可证形式许可后再去申请与这些源代码有关的专利。在线教育资讯/s1q.|8j[ kC
◆对源代码的定义在线教育资讯-lTC \0q&J1J6P
而在MPL(1.1版本)许可证中,对源代码的定义是:“源代码指的是对作品进行修改最优先择取的形式,它包括:所有模块的所有源程序,加上有关的接口的定义,加上控制可执行作品的安装和编译的‘原本’(原文为‘scrīpt’),或者不是与初始源代码显著不同的源代码就是被源代码贡献者选择的从公共领域可以得到的程序代码。”在线教育资讯]r J H6p)hy
◆MPL许可证第3条有专门的——款是关于对源代码修改进行描述的规定,就是要求所有再发布者都得有一个专门的文件就对源代码程序修改的时间和修改的方式有描述。在线教育资讯C#od0w"^knZ1u U@
在线教育资讯#f-[9{,J+^8{Jwy [
BSD许可证在线教育资讯^l x2B-A
BSD许可证原先是用在加州大学柏克利分校发表的各个4.4BSD/4.4BSD-Lite版本上面(BSD是Berldy Software Dis— tributi。n的简写)的,后来也就逐渐沿用下来。1979年加州大学伯克利分校发布了 BSD Unix,被称为开放源代码的先驱, BSD许可证就是随着BSD Unix发展起来的。BSD许可证现在被Apache和BSD操作系统等开源软件所采纳。
5IG1B3ww2qWT y-d0 相较于GPL许可证和MPL许可证的严格性,BSD许可证就宽松许多了,一样是只需要附上许可证的原文,不过比较有趣的是,它还要求所有进一步开发者将自己的版权资料放上去,所以拿到以 BSD许可证发行的软件可能会遇到一个小状况,就是这些版权资料许可证占的空间比程序还大。
Q%Y S sym-@1g&|t0 在线教育资讯S}Y!v EN'b4dY
QPL许可证
-t(U X*M8o5s6z0 QPL是The Qt Public IAcense的简称,是挪威一家机构创设的。QPL许可证的基本要求是获得源代码、修改源代码,并可将修改从原始代码中分离出来;修改可以按照作者的意愿被组合到新版本中;二进制代码可以和原始代码同名,这一点对于动态连接库来说尤其重要;任何人都可以修正错误,这刘·于系统的发布者来说很关键;修改过的软件可以按照满足QPL许可证基本要求的任何开源软件许可证进行发布。在线教育资讯&B Dv4Wc
在线教育资讯3Q }^oHw;k7E_K
QNCL许可证在线教育资讯V3]+CSy1Rt
QNCL许可证是Qt Non Commercial lAcense的简称,是QPL许可证的“兄弟版”,就像GPL许可证与LGPL许可证的关系一样,QNCl,许可·证比QPL许可证更严格些。
$D"z)F;l)xl0 在修改和发布方面的规定,QNCL许可证与QPL许可证是——样的,差异就在于软什的范围方面,或者说在连接方面。 QNCL许可证规定“假如…—个应用程序给你提供了一个入口,使你有权使用QNCI。许司‘证下的软件的功能开发程序、重复使用程序的某一部分或其他软件的某一部分,那么对该应用程序的使用视为是使用 QNCL许可证—1;的软件的行为,该应用程序应受到QNCL许可证的约束”。QNCL许可证比QPL许可证更严格之处在于, QNCL许司·证像GPL许可证那样,完全禁止根据许可证得到的开放源码软件与其他非系统库函数连接的软件以其他许可方式一起发布。在线教育资讯@ F(y1Fi x
在线教育资讯W;_ TxL
Jabber许可证在线教育资讯{(^@4u h j
Jabber许可证的全称是Jabber Open Source License,由美国Jabber.Com, [nc.公司提供。Jabber许可证在源代码的复制、发行规定方面基本上和其他许刮‘证没有什么特别,但有一些细节规定值得借鉴:在线教育资讯)H9Km Vd [2E$G
◆可以将通过该许可证获得的源代码及修改过的源代码与其他类型的不受该许可证约束的代码结合,以新产品的形式发布,只要其中经该许可证获得的源代码及修改过的源代码能以与该许可证的要求类似的、符合OSI认证的其他丌源软件许可证的方式发布。在线教育资讯?^4T S9Zq
◆明确了将源代码置于公众可以得到的状态的时间至少应为12个月。在线教育资讯'Ln'?+xvp$b;n
◆第三方对法定权利的声明。假如使用者发现通过本许可证获得的源代码及应用程序接口巾有—方拥有的知识产权,应单独在源码的发布时冠以“LEGAL”为抬头的声明,写明知识产权权利要求的细节,提请源代码的接受者知道自己获得了哪些知识产权的授权,让源码的接受者知道如何与知识产权权利人联系。
'~b)srK}[0 ◆细化了该许可证终止的情形,包括不按该许司—证的要求发布和使用源代码、发生专利侵权诉讼。
Pe&K7s:c5fV0
/vyz{9C7s9?0 Common许可证在线教育资讯9w M\W+qaS;E"I@0Z
Common许可证的全称是Common Public License。在满足OSIA开源软件许可证认证标准的前提下,Common许可·证还有——些细节性的规定值得参考:
%ej k2mrI!fH9Oy5G0 ◆明确了专利授权。一般的开源软件都明确源代码的版权人将自己的修改权、复制权等版权权利向公众许可,但保留署名权,而Common许可证[在此基础上还明确假如源代码中含有专利权,源代码专利权人将复制、使川』的专有权利向公众许可。在线教育资讯 wn%r'r |}^
◆规定可以将源代码及修改过的源代码与其他类型的不受本许可证约束的代码结合,以新产品的形式发布,只要其中经该许可证获得的源代码及修改过的源代码能按该许可证的要求发布即可。
t@*j,nmYQN+g0 ◆细化了该许可证终止的情形,包括发生专利侵权坼讼。在线教育资讯J? v%l2b4k\
◆明确了一个独立承担责任的原则,就是假如按该许可证使用源代码的使用者将获得的源代码应用于商业使用,那么他就要对在商业应用中出现的由于使用该源代码程序而产生的侵权诉讼承担完全责任。这一条规定是比较特殊的,绝大多数开源软件许可证都不这么要求。 IBM许可证
[$Er u Ht0 IBM许可证的全称是IBM Public License。在满足OSIA开源软件许可证认证标准的前提下,IBM许司‘证还有如下一些细节性规定:在线教育资讯6w:Ym'G(yMf
◆明确厂专利授权。一般的开源软件都明确源代码的版权人将自己的修改权、复制权等版权权利向公众许可,但保留署名权,而IBM许可证在此基础上还明确假如源代码中含
有专利权,源代码专利权人将复制、使用的专有权利向公众许可。
:]1@ m!o+J6e0 ◆细化了该许可证终止的情形,包括不按该许可证的要求发布和使用源代码、发生专利侵权诉讼等。
D1]u!]sp Mob0 ◆像Common许可证一样,IBM许可证也明确了独立承担责任原则,即假如按该许可·证使用源代码的使用者将获得的源代码应用于商业使用,那么他就要对在商业应用中出现的、由于使用该源代码程序而产生的侵权诉讼承担完全责任。在线教育资讯5E`RD+Osuv
在线教育资讯q b ~sWgu]d
8`Mw9n#QBD gIM0
作者:无
z%Ht/g^s8}0n0开源协议知多少
:W^ YLm2sFX0在线教育资讯&OA8w*?)SW `n3p)A&w
除了大家比较熟悉的GPL协议之外开源界还有很多许可证,如LGPI,许叫‘证 BSD许可证等,下面就来一一介绍。在线教育资讯'do)U1og
DFa}n0 LGPL许可证在线教育资讯\OnS4c,cF"N-c
LGPL许可证是LESSER GENERAL PUBLIC LICENSE的简写,也叫LI—— BRARY GENERAl。PUBLIC LICENSIe,中文译为“较宽松公共许可证”或者“函数库公共许可证”。该许可证适用于一·些由自由软件基金会与其它决定使用此许叫‘证的软件作者所特殊设计的软件软件包——比如函数库(即Library)。 LGPL许=---/证的特点
,O-tXm0i]0 LGPL许可证,也是自由软件联盟 GNU开源软件许可证的一‘种,大部分的 GNU软件,包括一些函数库,是受到原来的GPL许可证保护的。而LGPL许可证,适用于特殊设计的函数库,且与原来的通用公共许可证有很大的不同,给予—厂被许可人较为宽松的权利,所以叫“较宽松公共许可证”。在特定的函数库中使用它,以准许非自由的程序可以与这些函数库连结。在线教育资讯1N ?,eI|~
当一个程序与一个函数库连结,不论是静态连结或使用共享函数库,二者的结合可以合理地说是结合的作品,…个原来的函数库的衍生品。因此,原来的通用公共许可证只有在整个结合品满足其自由的标准时,才允许连结。较宽松通用公共许可则以更宽松的标准允许其它程序代码与本函数库连结。例如,在少数情况下,可能会有特殊的需要而鼓励大家尽可能广泛地使用特定的函数库,因而使它成为实际上的标准。为了达到此目标,必须允许非自由的程序使用此函数库。一个较常发生的情况是,一个自由的函数库与一个被广泛使用的非自由函数库做相同的工作,在此情况下,限制只有自由软件可以使用此自由函数库不会有多少好处,故我们使用了LGPL许可证。
*}'Sk5xw5k'IV$m%r0 在其他情况—下允许:非自由程序使用特定的函数库,可以让更多的人们使用自由软件的大部分。例如,允许非自由程序使用GNU C函数库,可以让更多的人们使用整个GNU作业系统,以及它的变形, GNU/Linux操作系统。在线教育资讯&d^-Ku0KSh
尽管LGPL许可证对使用者的自由保护是较少的,但它却能确保与此函数库连结的程序的使用者拥有自由,而且具有使用修改过的函数库版本来执行该程序的必要方法。
3z0q~Y$`v{3X6Z0
y_$|8t j0 MPL许可证在线教育资讯8c$?8V s;d
MPL是The Mozilla Public License的简写,是1 99 8年初Netscape的 Mozilla小组为其开源软件项目设计的软件许可证。MPL许可‘证出现的最重要原因就是,Netscape公司认为GPL许可证没有很好地平衡开发者对源代码的需求和他们利用源代码获得的利益。同著名的GPL许可证禾[1BSD许可证相比,MP[。在许多权利与义务的约定方面与它们相同(因为都是符合OSIA认定的开源软件许可证)。但是,相比而言MPL还有以下几个显著的不同之处:
AP:c^*qY_)h0 ◆MPL虽然要求对于经MPL许可证发布的源代码的修改也要以MPL许可证的方式再许可出来,以保证其他人可以在MPL的条款下;共享源代码。但是,在 MPL许可证中对“发布”的定义是“以源代码方式发布的文件”,这就意味着 MPL允许一个企业在自己已有的源代码库上加一个接口,除了接口程序的源代码以MPL许可证的形式对外许可外,源代码库中的源代码就可以不用MPL许可证的方式强制对外许可。这些,就为借鉴别人的源代码用做自己商业软件开发的行为留了一个豁口。在线教育资讯%BPMaxYR/x"g C
◆MPL许可证第三条第7款中允许被许可人将经过MPL许可证获得的源代码同自己其他类型的代码混合得到自己的软件程序。
q.da Z|5k']d0 ◆对软件专利的态度,MPL许可证不像GPL许可证那样明确表示反对软件专利,但是却明确要求源代码的提供者不能提供已经受专利保护的源代码(除非他本人是专利权人,并书面向公众免费许可这些源代码),也不能在将这些源代码以开放源代码许可证形式许可后再去申请与这些源代码有关的专利。在线教育资讯/s1q.|8j[ kC
◆对源代码的定义在线教育资讯-lTC \0q&J1J6P
而在MPL(1.1版本)许可证中,对源代码的定义是:“源代码指的是对作品进行修改最优先择取的形式,它包括:所有模块的所有源程序,加上有关的接口的定义,加上控制可执行作品的安装和编译的‘原本’(原文为‘scrīpt’),或者不是与初始源代码显著不同的源代码就是被源代码贡献者选择的从公共领域可以得到的程序代码。”在线教育资讯]r J H6p)hy
◆MPL许可证第3条有专门的——款是关于对源代码修改进行描述的规定,就是要求所有再发布者都得有一个专门的文件就对源代码程序修改的时间和修改的方式有描述。在线教育资讯C#od0w"^knZ1u U@
在线教育资讯#f-[9{,J+^8{Jwy [
BSD许可证在线教育资讯^l x2B-A
BSD许可证原先是用在加州大学柏克利分校发表的各个4.4BSD/4.4BSD-Lite版本上面(BSD是Berldy Software Dis— tributi。n的简写)的,后来也就逐渐沿用下来。1979年加州大学伯克利分校发布了 BSD Unix,被称为开放源代码的先驱, BSD许可证就是随着BSD Unix发展起来的。BSD许可证现在被Apache和BSD操作系统等开源软件所采纳。
5IG1B3ww2qWT y-d0 相较于GPL许可证和MPL许可证的严格性,BSD许可证就宽松许多了,一样是只需要附上许可证的原文,不过比较有趣的是,它还要求所有进一步开发者将自己的版权资料放上去,所以拿到以 BSD许可证发行的软件可能会遇到一个小状况,就是这些版权资料许可证占的空间比程序还大。
Q%Y S sym-@1g&|t0 在线教育资讯S}Y!v EN'b4dY
QPL许可证
-t(U X*M8o5s6z0 QPL是The Qt Public IAcense的简称,是挪威一家机构创设的。QPL许可证的基本要求是获得源代码、修改源代码,并可将修改从原始代码中分离出来;修改可以按照作者的意愿被组合到新版本中;二进制代码可以和原始代码同名,这一点对于动态连接库来说尤其重要;任何人都可以修正错误,这刘·于系统的发布者来说很关键;修改过的软件可以按照满足QPL许可证基本要求的任何开源软件许可证进行发布。在线教育资讯&B Dv4Wc
在线教育资讯3Q }^oHw;k7E_K
QNCL许可证在线教育资讯V3]+CSy1Rt
QNCL许可证是Qt Non Commercial lAcense的简称,是QPL许可证的“兄弟版”,就像GPL许可证与LGPL许可证的关系一样,QNCl,许可·证比QPL许可证更严格些。
$D"z)F;l)xl0 在修改和发布方面的规定,QNCL许可证与QPL许可证是——样的,差异就在于软什的范围方面,或者说在连接方面。 QNCL许可证规定“假如…—个应用程序给你提供了一个入口,使你有权使用QNCI。许司‘证下的软件的功能开发程序、重复使用程序的某一部分或其他软件的某一部分,那么对该应用程序的使用视为是使用 QNCL许可证—1;的软件的行为,该应用程序应受到QNCL许可证的约束”。QNCL许可证比QPL许可证更严格之处在于, QNCL许司·证像GPL许可证那样,完全禁止根据许可证得到的开放源码软件与其他非系统库函数连接的软件以其他许可方式一起发布。在线教育资讯@ F(y1Fi x
在线教育资讯W;_ TxL
Jabber许可证在线教育资讯{(^@4u h j
Jabber许可证的全称是Jabber Open Source License,由美国Jabber.Com, [nc.公司提供。Jabber许可证在源代码的复制、发行规定方面基本上和其他许刮‘证没有什么特别,但有一些细节规定值得借鉴:在线教育资讯)H9Km Vd [2E$G
◆可以将通过该许可证获得的源代码及修改过的源代码与其他类型的不受该许可证约束的代码结合,以新产品的形式发布,只要其中经该许可证获得的源代码及修改过的源代码能以与该许可证的要求类似的、符合OSI认证的其他丌源软件许可证的方式发布。在线教育资讯?^4T S9Zq
◆明确了将源代码置于公众可以得到的状态的时间至少应为12个月。在线教育资讯'Ln'?+xvp$b;n
◆第三方对法定权利的声明。假如使用者发现通过本许可证获得的源代码及应用程序接口巾有—方拥有的知识产权,应单独在源码的发布时冠以“LEGAL”为抬头的声明,写明知识产权权利要求的细节,提请源代码的接受者知道自己获得了哪些知识产权的授权,让源码的接受者知道如何与知识产权权利人联系。
'~b)srK}[0 ◆细化了该许可证终止的情形,包括不按该许司—证的要求发布和使用源代码、发生专利侵权诉讼。
Pe&K7s:c5fV0
/vyz{9C7s9?0 Common许可证在线教育资讯9w M\W+qaS;E"I@0Z
Common许可证的全称是Common Public License。在满足OSIA开源软件许可证认证标准的前提下,Common许可·证还有——些细节性的规定值得参考:
%ej k2mrI!fH9Oy5G0 ◆明确了专利授权。一般的开源软件都明确源代码的版权人将自己的修改权、复制权等版权权利向公众许可,但保留署名权,而Common许可证[在此基础上还明确假如源代码中含有专利权,源代码专利权人将复制、使川』的专有权利向公众许可。在线教育资讯 wn%r'r |}^
◆规定可以将源代码及修改过的源代码与其他类型的不受本许可证约束的代码结合,以新产品的形式发布,只要其中经该许可证获得的源代码及修改过的源代码能按该许可证的要求发布即可。
t@*j,nmYQN+g0 ◆细化了该许可证终止的情形,包括发生专利侵权坼讼。在线教育资讯J? v%l2b4k\
◆明确了一个独立承担责任的原则,就是假如按该许可证使用源代码的使用者将获得的源代码应用于商业使用,那么他就要对在商业应用中出现的由于使用该源代码程序而产生的侵权诉讼承担完全责任。这一条规定是比较特殊的,绝大多数开源软件许可证都不这么要求。 IBM许可证
[$Er u Ht0 IBM许可证的全称是IBM Public License。在满足OSIA开源软件许可证认证标准的前提下,IBM许司‘证还有如下一些细节性规定:在线教育资讯6w:Ym'G(yMf
◆明确厂专利授权。一般的开源软件都明确源代码的版权人将自己的修改权、复制权等版权权利向公众许可,但保留署名权,而IBM许可证在此基础上还明确假如源代码中含
有专利权,源代码专利权人将复制、使用的专有权利向公众许可。:]1@ m!o+J6e0 ◆细化了该许可证终止的情形,包括不按该许可证的要求发布和使用源代码、发生专利侵权诉讼等。
D1]u!]sp Mob0 ◆像Common许可证一样,IBM许可证也明确了独立承担责任原则,即假如按该许可·证使用源代码的使用者将获得的源代码应用于商业使用,那么他就要对在商业应用中出现的、由于使用该源代码程序而产生的侵权诉讼承担完全责任。在线教育资讯5E`RD+Osuv
在线教育资讯q b ~sWgu]d8`Mw9n#QBD gIM0
TAG: 开源
