|
关于GNU项目
GNU项目计划最早是与1984年,由著名的美国黑客理查德·斯托曼(Richard Matthew Stallman)发起的,GNU获得了自由软件基金会(FSF)的资金支持一直是GNU的主要资金来源,该项目主要是为了建立免费的开源的UNIX类系统,其基本原则是程序源代码开放和软件思想共享。
GNU/Linux是一种常见的并且广泛用于商业环境的免费开源操作系统。由于GNU将要实现UNIX类各系统的接口标准,因此GNU计划并不局限于Linux系统也可以开发其他不同的操作系统。GNU计划大量采用了当时已经可自由使用的软件,例如OpenOffice排版系统和X Window图形界面系统等。不过随着GNU计划的发展和壮大也开发了大批其他的自由软件,这些软件中的经典也被移植到其他操作系统平台上,例如NC工具就被移植到Microsoft Windows、BSD家族、Solaris及MacOS。 为了确保GNU系列软件可以真正的自由地“使用、复制、修改和发布”,所有GNU软件都包含有一份在禁止其他人添加任何限制的情况下,授权所有权利给任何人的协议框架,GNU通用公共许可证协议(GNU General Public License,GPL)。这个就是被大家称为‘公共版权’的含义。GNU也针对不同场合,提供GNU宽通用公共许可证与GNU自由文档许可证这两种协议条款以便适用不同的使用场合。
GNU的特点
GNU/Linux将可以兼容并能够执行Unix标准的的程序,但是不会和Unix系统完全一模一样,最大的不同是GNU计划拥有支持长文件名、版本号、一个健壮稳定文件系统,在某些情况下还有自动文件名补全、与使用终端无关的显示支持、可能最后还要有一个基于x windows的视窗系统,以使好几个系统程序和普通的Unix应用程序能共享同一屏幕。C语言将成为系统的程序语言。并且会想办法支持UUCP,MIT Chaosnet,及 Internet 的通讯交流协议。 GNU最初的目标是在有虚拟内存的68000/16000等系列机器上开发,因为这样的环境是最容易开发程序来实现GNU的运行。剩下来让 GNU 能在其它较小的机器上运行的工作,将会留给那些希望能在这些机器上使用的人。 GNU不是公共的,毫无约束的软件(public domain)。GNU计划允许每一个人修改及传播 GNU,但是绝不允许传播者对他传播的程序再加进其他的限制。也就是说,不允许将修改后的程序据为己有。GNU计划希望能确保 GNU 所有的版本都能保持自由。所以GNU的核心精神是自由与分享,这和真正的hacker精神有异曲同工之妙,虽不能说GNU精神就是hacker精神,不过很难把两者清楚的分开,实际上很多hacker都为GNU做出了巨大的贡献。对知识的渴求是支持他们探索的唯一动力。当然这里的Hacker黑客不是那些破坏计算机系统谋取私利而臭名昭著的骇客。
发展历程
1985年,著名美国黑客理查德·斯托曼创立了GUN项目计划。 1985年,同年查德·斯托曼创立了自由软件基金会(Free Software Foundation)来为GNU计划提供技术、法律以及资金支持。尽管GNU计划大部分时候是由大家自愿无偿贡献的,但FSF还是会聘请程序员帮助编写。当GNU计划开始逐渐获得成功时,一些商业公司开始介入开发和技术支持。当中最著名的就是之后被Red Hat红帽兼并的Cygnus Solutions。
1990年,成熟的GNU计划已经开发出的软件包括了一个功能强大的文字编辑器Emacs、C语言编译器GCC以及大部分UNIX系统的程序库和工具。唯一依然没有完成的重要组件,就是操作系统的内核。
1991年,Linux之父林纳斯·托瓦兹编写出了与UNIX兼容的Linux操作系统内核并在GPL条款下发布。Linux之后在网上广泛流传,许多程序员参与了开发与修改。
1992年,林纳斯的Linux与其他GNU软件开始结合,完全自由的操作系统正式诞生。该操作系统往往被称为“GNU/Linux”或简称Linux。许多UNIX系统上也安装了GNU软件,因为GNU软件的质量比之前UNIX的软件还要好。GNU工具还被广泛地移植到Windows和苹果Mac OS上。
现在,GNU项目计划十几年以来已经成为一个对软件开发主要的影响力量,创造了无数的重要的工具,例如:编译器,文本编辑器,甚至一个全功能的操作系统。这个工程是从1984年麻省理工学院的程序员理查德·斯托曼的想法得来的,他想要创建一个自由的、和UNIX类似的操作环境。从那时开始,许多程序员聚集起来开始开发一个自由的、高质量、易理解的软件。