开源软件及其许可证(备用)

开源软件及其许可证

转载自:http://leojane.ycool.com/post.2278401.html

Leojane Zhu
(leojane@gmail.com)

摘要

本文介绍了自由软件、开源软件、以及 GNU 和 FSF 相关 。研究了自由软件、开源软件的历史和意义。分析并对比了自由软件、开源软件以及其他软件。介绍了各种常见的开源软件许可证。分析比较了常见的开源软件许可证。


关键字:自由软件,开源软件,GNU ,FSF ,许可证,GPL,LGPL,BSD,NPL,MPL

Abstract

This paper introduces Free Software , Open Source , and something on GNU and FSF . It studies the history and meanings of Free Software and Open Source . It analyzes and compares Free Software , Open Source and some other software . It describes kinds of usual Open Source Licenses , and compares them .


Keyword:Free Software, Open Source , License , GPL ,LGPL , BSD , NPL , MPL

目录

1  引言
2  自由软件
    2.1  历史——自由软件的诞生
    2.2  GNU 及 FSF
    2.3  Copyleft
3  开源软件
    3.1  开源软件的提出
    3.2  开源软件与自由软件
    3.3  开源软件与其它的对比
4  常见的开源软件许可证
    4.1  GPL
    4.2  LGPL
    4.3  BSD 许可证
    4.4  NPL 和 MPL
5  选择许可证
6  展望
7  致谢

1  引言

21世纪是计算机软件业蓬勃发展的世纪。“正版”、“版权保护”、“Copyright”、“专利”等等名词充斥着人们的生活,它们对于人们来说已经不再是晦涩而陌生。人们关于知识产权的意识日益强化加深。
然而,这些词汇却往往是与私有商业软件密切联系紧紧绑定的。共享此类软件或根据需要对这些软件进行修改,都是不被允许的。因为这违反了它们的版权。
于是,为了反抗这种软件业的“私有制”,本着“自由”的精神,“自由软件”诞生了。我们经常可以听到“自由软件”或“开源软件”的说法,不过它们还是有些差别的。这将在本文中进行阐述。
对于开源软件,人们有着许多的误解与疑惑。有人认为“开源软件”就是“免费、不要钱的”;有人弄不明白“开源软件”的运作模式;有人认为,“开源软件”其实就是软件界的乌托邦,不可能长久……
虽然有很多来自各方面(主要是私有商业软件界)的误解、质疑和攻击,但事实却是——开源软件一直走在计算机软件业的最前沿,并且一直在蓬勃茁壮地发展着。
为了澄清关于开源软件的事实,分析开源软件得以成功得以蓬勃发展的原因,我们决定研究开源软件及其许可证。为此,我们学习研究了一些著名的开源软件项目,诸如 Linux [1], Apache [2], Mozilla [3] 等 ;阅读了一些关于开源文化的文献,譬如著名的 《The Cathedral and Bazaar》 [4],《Rebel Code》 [5],《Open Sources》[5] 等;学习了几种著名的开源软件的许可证并对它们进行了分析和比较。
本文的组织安排如下:第一部分,引言;第二部分,讨论自由软件,介绍它的历史、含义和 Copyleft 的概念;第三部分,介绍开源软件,介绍开源软件的提出,开源软件的含义,开源软件与自由软件及其他软件的区别;第四部分,介绍常见的开源软件许可证;第五 部分,介绍开源软件许可证的选择。

2  自由软件

2.1  历史——自由软件的诞生

让我们先从一个有趣的故事开始。20世纪70年代,激光打印机大得像吉普车一样,所以 Xerox(施乐)送了一台图像激光打印机给 MIT 人工智能实验室时,人们发现惟有人工智能实验室的九楼机房里,才找得到位置放置它。在大楼里的所有人,只要在各自的电脑上打些指令,便能叫打印机为你服 务。打印机的速度令人满意,只是,有时纸打印完了或者夹纸了,一大堆人的打印工作队列就全部停了下来。有时有些人要打印一大堆的东西,而有些人只需要打印 一两张的时候,便不得不爬上九楼,把打印机的控制改一下,让它先印一两张。于是,一天就这样爬上爬下,没人能受得了。幸好打印机送来时,Xerox 把驱动程序的源代码也随机附上,实验室的人就把控制打印机驱动程序的功能作了些修改,大家都省了不少麻烦。Richard Stallman,就是后来被人们称为“自由软件之父”的那个人,回忆当时的情形时说:“你的打印工作做完后,它还会通知你;如果夹了纸或你想问些什么打 印上的事情,它也会让你知道。”然而,到了1978年,一切都改变了。Xerox送了一台名为 Dover 的新打印机给人工智能实验室,但不愿再附上源代码。Richard Stallman 说:“因此我们无法修改驱动程序,于是整个大楼的打印效率又回到了从前,卡了纸或纸用光了,你在下面也无法知道。”他和人工智能实验室为给打印机添加功能 以便机器能更好地工作,希望获得打印机控制程序的源代码,结果被严正拒绝。“因此,我再也无法说服自己不公开协议是纯洁清白的。当他们拒绝与我们共享时, 我十分气愤。我更不能更弦改辙,对别人做同样的事。”Richard Stallman 如是说。[7]
此时,两种选择摆在了 Richard Stallman 的面前:第一种,非常简单,即是加入专有软件世界,签署不公开协议,并许诺不帮助同行的黑客同事们。这样做的结果很可能是,他也开发软件,而且软件也以不 公开的协议的形式发布,从而对其他不愿意背叛同伴的人进一步施加压力。他可能由此而发财,且也能从编写代码中获得乐趣。但正如他自己所说:“(如果我这样 做的话,)当我的职业生涯结束时,我回过头来看到的景象将是这些年来筑起高墙林立,并将人们分隔开来,我会觉得自己的一生努力的结果会把这个世界搞得更 糟。”[8] 第二种选择,很直接也很令人不快,那便是离开计算机领域。这样一个天才的技能便不会被滥用,但这个天才的才华便从此埋没。他自己不会成为分隔、限制计算机用户的帮凶,但这个世界上的分隔和限制依旧发生。
因此,Richard Stallman 希望寻求一种解决方案,使他自己能作为一名程序员能够做些好事,他问自己:“我能否写一个或一些程序,能使我珍视的群体重焕生机?”
答案是清楚的——最急需的首先是一个操作系统。这是使用计算机的关键,有了操作系统,可以做许多事情;没有操作系统,连计算机都使用不了。而一个自由的操 作系统,便可以再度组织拥有一个相互合作的黑客群体,并且进一步邀请其他前任何人参与进来。每个人都可以安心地使用计算机而无须变成剥夺自己朋友权益的同 谋。
作为一名操作系统开发人员,Richard Stallman 无疑是最胜任的。他决定将系统设计成与 UNIX 兼容以便移植,同时也便于 UNIX 用户移民到这一新的操作系统上来。按照黑客的传统,Richard Stamllman 选择了 GNU 这个名字, GNU 是“Gnu's Not Unix”的递归缩略词。
一个操作系统,不仅仅意味着一个只能运行其他程序的内核,还得包括命令解释器、汇编器、编译器、解释器、调试器、文本编辑器和电子软件包等。
思想比代码更闪光,但没有代码,思想便没有了躯体。随着 GNU 工程的启动,Richard Stallman 开始了自由软件的征途。

2.2  GNU 及 FSF

1984年1月,Richard Stallman 辞去了 MIT 的工作,他担心 MIT 会要求产品的所有权,会给产品强加入自己的销售条件,最终又成为私有软件。
1984年9月,Richard Stallman 开始 GNU Emacs 的开发。1985年初, GNU Emacs 便可以开始使用了。很快,大受欢迎。
随着人们对 Emacs 的兴趣日益增加,其他人也开始参与 GNU 工程。1985年,一个新的基金会——自由软件基金会(Free Software Foundation, FSF)成立了。这是一个完全致力于自由软件开发的免税的福利机构(捐助 FSF 的厂商也可享有减税待遇)。FSF 接受捐赠,但它的绝大多数收入来源于销售自由软件拷贝以及其他服务。

2.3  Copyleft

我 们已经谈论了很多自由软件相关的事情,但还没有给出自由软件的明确定义。Free Software 这种术语,由于英语 free 一词有二义,因此常常被误解——事实上它和价格毫无关系,这里 free 的含义是自由。这是由自由软件的定义所决定的。对于特定的用户来说,如果某个程序被称为自由软件,那么:
  • 你拥有运行该程序的自由,而且可以用于任何目的。
  • 你拥有修改程序以适应你个人需要的自由。(为了在实践中使这一自由成为可能,你必须能够获得源代码,因为没有源代码而试图修改程序是极端困难的。)
  • 你拥有再发行拷贝的自由,可以是无偿的,也可以是收费的。
  • 你拥有发行该程序修改后版本的自由,从而使社区可以从你所做的改进中获益。
GNU 的目的是给用户以自由,而不仅仅是为了争取大量的用户.因此,必须使用某种发行条件,以避免将 GNU 软件变为专有软件。Richard Stallman 使用的方法称为“Copyleft”(非盈利版权)1
Copyleft 利用了版权法,但反其道而行之,以达到与通常相反的目的:将一种将软件私有化的手段转变成了保持软件自由的手段。
Copyleft 的中心思想是,给予任何人运行、拷贝、修改以及发行改变后程序的许可,但不准附加他们自己的限制。从而保证了每个人都有获得“自由软件”的软件拷贝的自由,它们成为了不可异化的权力。
一个相关问题涉及到将自由的程序与不自由的代码相组合。这样的组合将不可避免地失去自由性。因 此,Copyleft 的一个关键要求是封堵这一漏洞:任何添加或者组合到自由软件上的部分都不允许附加其他限制,从而保证其结果的整体是自由的,版权所无的 (Copylefted)。
GPL(GNU General Public License,GNU 通用公共许可证)是 Copyleft 的一种典型的实现形式。(关于 GPL ,本文第四部分将详细介绍论述。)

3  开源软件

3.1  开源软件的提出

开源软件首次作为政策性文件出现在 Debian GNU/Linux 发行版2上。 由于 Debian 在定义什么是自由上存在一些问题,后来其他的软件许可证再也没有将自由软件的政策定义得很明确。1997年7月,Bruce Pernes 作为 Debian 的项目主管,通过起草 《Debian Social Contract》和《Debian Free Software Guidelines》来解决存在的问题。Debian Social Contract 规定了 Debian 系统完全建立在自由软件的基础上; Debian Free Software Guidelines 则通过将指南与软件许可证进行比较,很容易地划分自由软件和非自由软件。[9]
1998年,受 Eric Raymond《The Catgedral and Bazaar》[4] 的影响,Netscape 打算开放源代码。Netscape 向他请教,在不对外公开的前提下,他们设计了一个自由软件许可证。Raymond 力争让 Netscape 的许可证按照 Debian 的指南来做,使软件成为一个严格的自由软件。
Raymond 认为,Debian Free Software Guidelines 是一个正确定义“开源软件”的文件,但它需要一个更通俗的名字,再除去些 Debian 的专业术语。
之后,Pernes 与 Raymond 组建了 Open Source Initiative(OSI),它是一个专门管理开源软件运动及其认证标志的组织。开源软件定义(Open Source Definition ,OSD)正是由他们管理着并发扬促进着。OSD 是作为判定一个软件是否可以被称做开源软件的指南。OSD 规定了开源软件的九条标准:
  1. 自由再发行。许可证不能限制任何团体销售和赠送软件,软件可以是几个不同来源的程序集成后的软件 发行版中的其中一个原件。许可证不能要求对这样的销售收取许可证费或其他费用。
  2. 程序源代码。程序必须包含源代码。必须允许发行版在包含编译形式的同时也包含程序源代码。当产品 以某种形式发行时没有包含源代码,必须非常醒目的告知用户,如何通过 Internet 免费的下载源代码。源代码必须是以当程序员修改程序时优先选用的形式提供。故意地扰乱源代码是不允许的。以预处理程序或翻译器这样的中间形式作为源代码也是不允许的。
  3. 派生程序。许可证必须允许更改或派生程序。必须允许这些程序按与初始软件相同的许可证发行。
  4. 作者源代码的完整性。只有当许可证允许在程序开发阶段,为了调整程序的目的将“修补文件”的发行版与源代码一起发行时,许可证才能限制源代码以更改后的形式发行。许可证必须明确地允许按更改后的源代码所建立的程序发行。许可证可以要求派生的程序使用与初始软件不同的名称 或版本号。
  5. 无个人或团体的歧视。许可证不能都有针对任何个人或团体的歧视。
  6. 无领域歧视。许可证不能限制在专门奋斗领域内的任何人使用该程序。例如不能限制程序应用于商业领 域,或者应用于遗传研究。
  7. 许可证发行。伴随程序所具有权力必须适用于所有的程序分销商,而不需要这些团体之间再附加许可证 签字盖章。
  8. 许可证不能特指某个产品。如果程序是某个特殊的软件发行版中的一部分,伴随该程序所具有的权力不能只以来于这一发行版。如果程序是从那一发行版中摘录出来的,使用或发行时用的都是那个程序的许可证,分销程序的所有团体都应拥有与初始软件版所允许的所有权力。
  9. 许可证不能排斥其他软件。许可证不能限制随该许可证软件一起发行的其他软件。例如,许可证不能要求所有与之一起发行的其他软件都是开源软件。

3.2  开源软件与自由软件

通过前面对自由软件和开源软件的介绍,我们已经可以看出它们间的区别来了。开源软件与自由软 件,可以说是同一社区的不同阵营。它们在商业性、许可证等原则性问题上不一致——自由软件对商业化极度不友好,对许可证的要求非常严厉,而开源软件则显得 宽容得多。例如,开源软件可以使用私有库,而这在自由软件里是不被允许的。开源项目 KDE 使用 Qt 的库直到2000年9月都是属于私有库。但在大多数实践过程中,二者却是高度一致的——例如:源代码可用、源代码可修改等。
以 Richard Stallman 为代表的一些人认为,开源软件的提法,忽视了 GNU 工程的原则精神,而是将词义着重于创造强大的、高质量软件的潜力,回避了自由、社会和原则这些概念。因此,GNU 工程将继续使用“自由软件”这一名词,以表示自由、而不仅仅是技术,才是重要的。
但另一方面,一些人认为——我们看到且不得不承认——开源软件的做法,更能吸引公司经理和商业用户们的眼球,使之更具有竞争力,在市场中也更具有发展潜力。
更多的时候,人们倾向于接受这种说法:开源是一种将自由软件变得更具魅力的市场策略,因为它通过它的许可证(参看第四部分和第五部分)许诺了更多自由[10]。这意味着只要源代码是可用的并且可以是被自由修改的,那么开源许可证就不阻止人们或公司从软件中获利。

3.3  开源软件与其它的对比

前面已经叙述了开源软件与自由软件的区别。不过为了能更好地看清开源软件与其它软件的关系,我 们还要拿其他软件来与之做一些对比(主要是在许可证和发行形式上)。简单地说,有两种主要类型的软件需要与之对比,一种是自由软件(自由软件与开源软件有 交叉,这是说的是属于开源软件的那部分),一种是私有软件。
对于自由软件,又有两种分法。一种是 non-copylefted ,一种是 copylefted 。这种 non-copylefted 自由软件来自于那些允许修改并重发布软件并且在法律上没有声明要保留版权的软件作者们。在这样的情况下,修改过的版本可以被附加更多的限制,这样一些拷贝 (修改过的版本)就也许根本不是自由的了。Public Domain(公共领域)就是 non-copylefted 的一个例子。公共领域的东西可以说成了你的私有财产,当你需要时就可以随意使用,而且你可以做任何你想做的事情。甚至可以不厚道地对它进行再发行,去掉它 原来的公共领域版本,或者删掉作者的名字,把它看作是你自己的作品。通过宣布版权,然后使用你自己的许可证,或只是简单地宣布“保留版权”就可以很容易地 将一个公共领域软件占为己有。自由软件的另一方面,copylefted free software ,却不允许有额外的限制附加到修改过或再发行的软件上。这样,所有的 copylefted 软件,即使是被修改过了,也必须是自由软件。典型的例子就是 GPL 。
私有软件是“关闭(closed)”的软件,因为源 代码对于公众来说是不可用的。私有软件对软件的使用有严格的限制,重发布或是修改等是被禁止的。不过在这类软件中有两种特殊的情况:共享软件 (shareware)和免费软件(freeware)。它们都允许人们去免费下载、使用以及重发布,但修改是几乎不可能的。因为它们通常只是发布了可执 行的(二进制)文件。共享软件与免费软件的一个差别是使用期限。如果想继续使用一个共享软件,必须付许可证费。有一点必须明确,不可将免费软件和开源软件 混淆。修改一个免费软件是不可能的,因为源代码不可用。
根据这些对比介绍,便可以得出如图3-1这样一幅关于软件分类的图,开源软件与其它的关系便一目了然。
Figure
图 3-1: 软件分类

4  常见的开源软件许可证

GNU GPL,LGPL,BSD,NPL 和 MPL 等,都是符合开源软件定义的常见许可证。接下来的篇幅里我们将介绍分析它们。

4.1  GPL

GNU General Public License,简称 GPL 。GPL 既是一个软件许可证,又是一份政治宣言。由于 GPL 在一些法律教授的协助下完成,因而要比其他的同类许可证写得好得多。
GPL 的文本不是 GPL 之下的程序自身。它的许可证很简单:准许任何人复制和发行未经任何改动的许可证文本的拷贝。但对它进行改动是不允许的。开源软件许可证的文本通常不是开源 软件本身,这点很重要。显然,如果任何人都可以修改许可证,那么许可证也就不能提供任何保护了。
GPL 的条款符合开源软件的定义。 GPL 并不需要开源软件定义中的第四点“作者源代码的完整性”中的任何条款。
GPL 不允许私自对程序进行更改。更改后的程序必须在 GPL 之下发行。当然,一个 GPL 化的程序的作者愿意接受别人的改进,包括商业公司为满足自己的需要而进行的更改。
GPL 不允许将 GPL 化的程序合并尽到一个所有权程序中。 GPL 对所有权程序的定义是:许可证中所赋予的权力不如 GPL 多的任何一个程序。
GPL 也存在一些漏洞。它允许适用于不完全都是开源软件的程序中。软件库通常是与编译器或你正在使用的操作系统一起发行的。它可能与一个已经 GPL 化的软件相联系,结果成为一个部分自由的程序。版权所有者通常就是程序的作者,他将 GPL 用于程序上而有权违反他自己的许可证。这就是在 Troll Tech 使 Qt 使用开源软件许可证前,KDE 的作者发行含有 Qt 的程序时所用的手法。但是,这一权力不再扩展到发信程序的第三者,他们必须遵守许可证中的所有条款,包括版权所有者违反的那一条款。这样在分销包含 Qt 的 GPL 化的程序时就出现了问题。

4.2  LGPL

GNU Library General Public License,简称 LGPL ,是 GPL 的派生物。它是为软件库而设计的。与 GPL 不同,LGPL 化的程序可以合并到专有版权程序中。与 Linux 系统一起提供的 C 语言库就是 LGPL 的一个实例。它可被用于建立一个专有版权程序,否则的话 Linux 就只对自由软件作者有用。
LGPL 化的程序可以在任何时候转换成 GPL 化的程序。一旦作出这种转换,就不能再转换回 LGPL ,或由它派生的 LGPL 化的程序了。

4.3  BSD 许可证

BSD 许可证,是 X、Apache、BSD(Berkeley System Distribution)的操作系统项目(FreeBSD、OpenBSD、NetBSD)所采用的。它可以总结为“这里是代码,你想对它怎么做就怎么 做,我们并不在乎,只是你试图这门做并且销售它们时请给我们信用”。通常对信用的要求会在不同形式中出现——广告,或 README 文件,或印刷品文档,等等。它提供了一个从 GPL 中得不到的最重要的许诺——私自对许可证软件进行更改。
从商业角度,这是加入现有项目的最好的一类许可证,因为不用担心将来使用或重新发行时的许可证或限制问题。你可以用自己的专有代码混合并配合该软件,并且仅仅发布你认为有助于项目的那些部分,从而有助于提高你的回报。[11]

4.4  NPL 和 MPL

Netscape Public License,简称 NPL ,是当 Netscape 准备生产他们的 Netscape 浏览器开源软件时开发的。确切地说, Mozilla 才是它的开源版本。 Netscape 为他们自己的产品保留了“Navigator”商标。 NPL 的一个重要的特征是它给予 Netscape 专门的特权,而不包括其他的任何人。当你对他们的软件进行更改后,Netscape 有对这些更改重新发放许可证的特权。他们可将这些更改据为己有,然后再进行改进,却拒绝给你最终的结果。这一条款在当时是必要的,因为当 Netscape 准备加入开源软件时,它与别的公司已经有合同,承诺在非开源软件许可证下向他们提供 Navigator 。
Netscape 又开发了 Mozilla Public License,即 MPL 。MPL 与 NPL 很相似,但不包含循序 Netscape 对别人做的修改再发放许可证的内容。
NPL 和 MPL 都允许私自对软件进行修改。
NPL 是 Netscape 面临特殊的商业环境的时候设计的,对别的软件并不一定非常适合。一些公司采用了 MPL 的变体,这样做便是比较不幸的。然而,NPL 和 MPL 需要保留。因为 MPL 的意义在于,陈述了 GPL 或 BSD 没有提到的某些关键问题。MPL 授权对于“发行”的更改仍以同样 MPL 版权下进行发布,这样使得它可用于返还该项目。“发行”被定义为以源代码发布的文件。这很重要,因为它允许公司增加一个与专有代码库的接口,而不需授权其 他的代码库具有 MPL 版权——只授权该接口具有 MPL 。这样,这个软件可以或多或少地组合到商业软件环境中。

5  选择许可证

当你决定进行一个开源项目的时候,必须面临着选择许可证的问题。选择哪种许可证呢?下面列出的问题需要好好思考。
  1. 你希望别人能够私自对软件进行更改么?如果你要求别人将更改后的程序源代码反馈给你,你就选择像 GPL 或 LGPL 这样满足你要求的许可证。如果你不介意别人私自更改程序,就选择 BSD 这类的允许私自修改的许可证。
  2. 你是否允许一些人将你的软件合并到他们自己的所有权软件中?如果允许就选择 LGPL ,它明确表示允许这样做,但不允许对你的源代码私自进行更改。也可以选择 BSD ,这样就允许了私自修改源代码。
  3. 你希望别人能买到你的有商业许可证的、不是开源软件的版本么?如果希望这样,为你的程序发放两个许可证。建议选择 GPL 作为开源软件许可证。然后选择一种合适的商业许可证。
  4. 你希望所有使用你软件的人都为这一特权付费么?如果希望这样,就不要选择开源软件。如果你满足于有一部分人向你付费就行了,你就可以使你的软件成为开源软件。多数的开源软件作者注重于他们程序贡献给社会后的反映是否良好,而不在乎是否得到了回报。
表5-1结合了许可证实例进行了分析比较。
表 5-1: 许可证实例分析比较
许可证 可以与非自由 可以私自进行   任何人可以再  在别人对软件
  软件合并 更改,而且结 发放许可证 更改后最初的
    果不需反馈给   版权所有人有
    作者   专有的特权
GPL        
LGPL      
BSD    
NPL  
MPL    
公共领域  

6  展望

对于致力于开源软件项目开发的程序员们来说,开源软件是一种信仰,开源软件运动的领袖们为这些程序员描绘了一幅美好的前景;
对于将开源软件集成到企业运作中的那些公司来说,开源软件揭示了开放式开发如何能构建出更好的软件,并揭示了企业如何利用这些开源软件来取得商业竞争上的优势;
对于企业的管理层和投资方来说,开源软件的革命先驱们带来了一种全新的经济模式。
但对开源软件未来最可信的预测正是它的过去:我们已经经历了从开始一无所有,到如今成为软件业一个强壮的巨人,能解决各种不同的问题,达到百万计用户的过程。我们现在没有理由放慢前进的步伐。

7  致谢

在本文的写作过程中,得到了浙江大学飘渺水云间3论坛 OpenSource 版的各位网友的关注和支持,在此对你们表示感谢!特别要感谢 emfox 同学,在文献组织以及论文排版上进行了指导,thank you !

参考文献

[1]
"The Linux Home Page at Linux Online" , http://www.linux.org/ .
[2]
"The Apache Software Foundation" , http://www.apache.org/ .
[3]
"mozilla.org" , http://www.mozilla.org/.
[4]
Eric S. Raymond,《The Catgedral and Bazaar》,O'Reilly&Associates,1999
[5]
G.Moody,《Rebel Code:Linux and the Open Source Revolution》,The Penguin Press,2001
[6]
C.Dibona, M. Stone, S. Ockman,《Open Sources:Voices from the Open Source Revolution》,O'Reilly&Associates,1999
[7]
方兴东,《软件业自由之神——Richard Stallman》,《计算机世界》,1999
[8]
Richard M. Stallman,《The GNU Operating System and the Free Software Movement》,1999
[9]
Bruce Perens,《The Open Sourcde Definition》,O'Reilly&Associates,1999
[10]
Cristina Gacek,Tony Lawrie,and Budi Arief,《The many meanings of Open Source》,2004
[11]
Brian Behlendorf,《Open Source as a Business Strategy》,O'Reilly&Associates,1999

Footnotes:

1在1984 和1985年,Don Hopkins 给 Richard Stallman 寄了封信,信封上有写着“版权所无——所有权力都被逆转(Copyleft-all rights reversed)”。于是 Richard Stallman 就决定用 Copyleft 来命名当时正考虑的软件发行的概念。
2Debian 是 Linux 系统的早期版本,是 Linux 发行版中最为流行的版本之一。他完全建立在自由软件的基础上。
3飘渺水云间:freecity.cn 
posted @ 2011-02-15 13:48  逍客1  阅读(443)  评论(0编辑  收藏  举报