目前,经OSIA认证的开源软件的软件许可证已增加到约 60余种 ( http://www.opensource.org/licenses/alphabetical )。我们在常见的开源协议如BSD, GPL,LGPL,MIT等都是OSI批准的协议。如果要开源自己的代码,最好也是选择这些被批准的开源协议。
根据开放源代码首创行动组织的开放源代码的定义(The Open Source Definition),该组织对开源软件及许可证的认定标准有如下几个方面:
● 发布的自由
● 关于对源代码的要求
● 关于演绎作品
● 关于源代码的完整性
● 不得歧视任何个人或团体
● 不得歧视任何应用领域
● 关于许可证的发布
● 关于程序的部分
● 许可证不能影响其它软件
BSD许可证
相对于其他开源软件许可证,特别是GPL许可证,BSD(Berkly Software Distribution)许可证可能对被许可人来说是最"宽容"的,虽然BSD许可证具备开源软件许可证普遍的要求,但BSD许可证只要求被许可者附上该许可证的原文以及所有开发者的版权资料。通俗地说,BSD许可证看重的是"名",在"利"方面,BSD许可证给予被许可者充分使用(包含商业使用)源代码的权利。
BSD许可证完全不会产生像GPL许可证那样的"病毒效应",为开源软件,特别是作为学校、公共科研机构科研成果的开源软件转化为产品等充分利用敞开了大门。
GPL许可证
GPL许可证是自由软件联盟GNU的开放源码软件许可证的一种,是开放源码软件领域最富盛名的一种许可证,同时,GPL也是开放源码软件领域对被许可人权利限制最严的许可证,它集中体现了纯粹的Copyleft精神。
GPL首先是承认软件的版权软件有原始的版权所有者,然后纳入自由软件的版权许可约束。在承认版权的前提下,通过软件的版权许可来实现自由权利的要求。GPL许可证最重要的特点在于它要求根据GPL许可证发布的软件(如:最有影响力的Linux)修改、翻译的演绎作品,甚至只要其任何一部分代码是以GPL发布的,那么全部程序也必须受GPL许可证的约束,即继续遵守GPL许可证的规定,有些人将其称之为GPL的"病毒效应"。
LGPL许可证
LGPL是GPL的一个为主要为 类库 使用设计的开源协议。和GPL要求任何使用/修改/衍生之GPL类库的的软件必须采用GPL协议不同。LGPL允许商业软件通过类库引用(link)方式使用LGPL类库而不需要开源商业软件的代码。这使得采用LGPL协议的开源代码可以被商业软件作为类库引用并发布和销售。
但是如果修改LGPL协议的代码或者衍生,则所有修改的代码,涉及修改部分的额外代码和衍生的代码都必须采用LGPL协议。因此LGPL协议的开源代码很适合作为第三方类库被商业软件引用,但不适合希望以LGPL协议代码为基础,通过修改和衍生的方式做二次开发的商业软件采用。GPL/LGPL都保障原作者的知识产权,避免有人利用开源代码复制并开发类似的产品。
MIT许可证
MIT是和BSD一样宽范的许可协议,作者只想保留版权,而无任何其他了限制.也就是说,你必须在你的发行版里包含原许可协议的声明,无论你是以二进制发布的还是以源代码发布的。
软件商业化
商业软件的成功:版权保护、营销策略、捆绑许可、专利保护、商标保护
开源软件的成功:部分版权保留、自由开放授权、商标保护、服务收费、硬件捆绑
开源软件商主要是通过服务为王、合理收费、软件免费、硬件收费等方式来盈利,开源软件的盈利模式正在探讨中。