开源协议简析

当Adobe, Microsoft, Google, Oracle等软件巨头对开源软件越来越青睐,标志着“开源”的时代已经到来。  从开源运动兴起以来,开源协议的版本越来越多,被OSI承认的就有50多!面多这么多选择,我们都手足无措了,因为协议的内容实在是冗长难懂。而对于一般开源爱好者来说,真正关心的是在开源的环境下协议能不能保护作者的权利。

开源协议一般由以下几个重要部分组成:

  • 署名:开发者一般都希望自己的工作得到承认,所以都在软件上署名。
  • 衍生作品版权:指当其他人使用或者修改软件之后,新的软件版权的归属。
  • 衍生作品协议:指当其他人使用或者修改软件之后再发布时,应该使用什么样的协议。

而衍生作品又分为使用衍生和修改衍生两种,前者指在自己的软件中使用原软件,而后者对原软件的源码修改后再发布。

根据以上分析,对常见的开源协议比较如下:

开源协议 使用衍生的协议 修改衍生的协议 衍生作品版权 署名
Mozilla Public License MPL MPL 发起者 原软件及其许可
GPL GPL GPL 作者 原软件及其许可
LGPL * LGPL 作者 原软件及其许可
BSD/MIT/Apache * * 作者 原软件及其许可

从表中不难看出,GPL具有很强的传染性,所有衍生作品必须是GPL的,这能够保护开源软件的开放性。MPL更加鼓励开源精神,不过不给开发者任何权利。而BSD/MIT/Apache则属于商业友好的开源协议,因为没有要求衍生作品也开源,这就得到很多商业公司的青睐。LGPL则介于商业友好和不友好之间,可以在商业软件中使用,但不能修改。

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.