1.2 GNU Copyleft
GNU工程比Linux更早诞生,发起它的目标是定制一个免费的类Unix操作系统(GNU是GNU’s Not Unix的递归缩写,意为“GNU不是Unix”。一个完整的GNU操作系统基于Linux内核构建,但也包含一些其他组件,如库、编译器和实用程序(utility)。因此,基于Linux的计算机的更准确称呼应该是GNU/Linux系统。GNU/Linux系统的所有组成部分都建立在免费软件之上。
免费软件有许多种,其中的一种是公共领域(public domain)软件。公共领域发布的软件没有版权,对于它的使用也不会强加任何限制。你可以免费使用它,随意修改它,甚至限制别人发布你修改后的代码。发现了吗?所谓“没有限制”条款居然暗含了对下游施加限制的权力。
GNU工程的主要发起者——自由软件基金会——创造了GNU公共许可证(GPL),它也被称为“版权左派”(copyleft)[2],以防止有人中途将免费软件转化为商业软件。谁修改了copyleft的软件,就必须以copyleft的方式分享他的软件。GNU系统中Linux内核以及大部分组件(如GNU编译器GCC)都以GPL发布。因此,如果你修改了内核,你就必须在社区分享此修改。实际上,你必须以copyleft的形式将授予你的权利传递出去。
Linux内核基于GPL第2版。在内核社区,人们一直在争论是否应该采用GPL的最新版本GPLv3。目前的趋势似乎是反对采用GPLv3。
通过系统调用访问内核服务的Linux应用程序没有被看作衍生的工作,因此并不受限于GPL。而库则采用GNU轻量级通用公共许可证(LGPL),其限制要少于GPL。商业软件也允许与LGPL下的库动态链接。
时间: 2024-10-07 01:11:52