GNU源代码开放精神

最近在看侯捷的《STL源码剖析》,对书中讲到的GNU源代码开放精神有点兴趣,所以就做了一点整理。

GNU起源于美国人Richard Stallman,他在1984年离开麻省理工学院后,创建了自由软件基金会(Free Software Foundation, FSF)以致力于弘扬开放源代码精神,并写下了著名的GNU宣言。后来,Richard Stallman又于1989年发表GNU通用公共许可协议,给予了终端用户运行、学习、共享和修改软件的自由。

​ GNU(GNU is Not Unix)的名称带有一定的幽默成分,Unix原本是作为一个学术上的练习产品被AT&T Bell实验室的Ken Thompson和Dennis Ritchie开发出来,并被免费分享给研究人员,但随着Unix操作系统的日趋强大,AT&T意识到了它的商业价值,便不再将Unix源码授权给学术机构,并对之前的Unix及其变种声明了著作权权利,这在Richard Stallman看来便是“达成商业目的技术方法”,而GNU则是“达成社会目的技术方法”。

​ 虽然GNU软件给予了终端用户对源代码的运行、学习、共享和修改自由,但是它为了保护(或控制)其成员也采取了一定措施,即GPL(General Public License, 广泛开放授权)。GPL规定如果使用者要传播借助GPL软件而完成的软件,他们也必须同意GPL规范。GPL是第一个普遍使用的Copyleft许可证,copyleft体现了它对于版权(copyright)观念的挑战。

​ 由于GPL带给使用者强大的道德束缚力,因此它也遭到了很多的反对,原因包括可能造成经济竞争力薄弱等。于是,其后又衍生出各种束缚力度不一的授权,包括BSD License,Apache License……因为这些分支意见分歧甚至相互对立,所以自由软件社群于1998年采用了一个新名词open source来整合各方,只要软件满足open souce规定的9个特点就可以称自己为open source软件。

​ GNU计划中,最著名的软件就是早期的Emacs、GCC和后来的Linux,Emacs是Stallman开发的一个非常灵活的文本编辑器。GCC是一个C/C++编译器,对所有的GNU软件提供了平台一致性与可移植性。Linux为一个类Unix操作系统,这也是当初GNU计划的目标之一。

​ 由于GNU颇具知名度,有兴趣的商家开始促进发展或出售GNU软件和技术支持。其中最突出的和成功的,是Cygnus Solutions,现在红帽公司的一部分。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值