GNU公共许可的涵义

来源:互联网 发布:ae cc 2018 mac 下载 编辑:程序博客网 时间:2024/04/29 03:20
企业信息管理平台项目(开源)将遵守GNU公共许可,下面是一些与之有关的内容,摘自《Linux管理员指南》一书。

G N U的意思是“G N U不是U N I X”(G N U是英文“G N U ’s Not UNIX”的单词字
头缩写)—这种取名的方法是计算机老手们的一种幽默。如果读者理解不到这有什么可笑
之处,也没什么关系,这只能证明读者还是属于大多数人那一类。

 什么是G N U公共许可证
从G N U计划中产生的最重要的事物就是G N U公共许可证(GNU Public License,G P L)。
这个许可证明确表示:按照这个许可证发行的软件是自由的,任何人都不能剥夺这种自由。
获得某个软件再把它转卖给其他人是合法的,就是加价获利也没什么不可以;但在转卖过程
中,卖方必须把完整的源代码及对它的任何增补都完整地转移给买方。因为这份经过转卖的
软件依然遵守着G P L许可证制度,所以它还可以自由发行,允许再次转卖给其他人获利。这
个许可证制度中最重要的部分就是其免责条款,即程序开发人员对他们编写的软件在事实使
用中引起的损失将不承担任何责任。

“自由”软件的优势
从商业化的角度出发,如果认为G P L并不是一个好主意的话,就请想一想最近某些优秀
自由软件所引发的热潮—它们证明了这种做法确实是行得通的。它们的成功主要基于两方
面的原因:第一,正如我们前面提到的,在编程同行的注视之下,代码本身中的错误将比较
容易被查出并迅速纠正;第二,在G P L制度下,程序开发人员发表代码的时候能够不再考虑
法律诉讼方面的问题。如果没有这项保护措施,大概就没有多少人敢于发表自己编写的程序
代码了。
这一机制要求我们回答这样一个问题:人们为什么会免费发布他们的工作成果?答案其
实很简单:大多数的软件成果在刚刚完成的时候并不是功能齐备、光彩照人的。它们有可能
是程序员为了解决某个恼人的特定问题而临时编写出来的。这类临时且又粗糙的代码当然没
有什么值得卖给别人的价值。但是当把它们分享给遇到同样问题、有同样需求的人们时,这些代码就将成为有用的工具。别的用户开始给这个程序添上他们所需要的功能,而这些增补
又完善了原始的程序。一个项目成为集体智慧的结晶,直到达成最好的效果。最终,这个完
善的程序可能包含了成百上千名程序员的贡献,每一个人都为它添了砖、加了瓦。事实上,
第一个程序员编写的代码可能都没留下什么痕迹。
对通用许可证制度下的软件来说,它们的成功还有以下方面的原因:任何一位负责软件
商业性开发的项目经理都知道这样一个事实,软件开发的真正成本并不体现在其开发阶段。
确实需要花大钱的地方是在软件的柜台销售、市场规划、技术支持、编写文档、包装运输等
方面。一个在周末晚上熬夜编出粗糙小程序解决某个问题的程序员恐怕既没有兴趣和时间,
也没有足够的资金支持来把那个粗糙的东西发展为一个真正赚钱的好产品。
原创粉丝点击