什么是GNU
GNU 代表一种自由的软件开发精神,从某种意义上说,GNU大多拥有本身具备较高的软件水平;GNU真正的蓬勃发展是在LINUX操作系统出现之后,大量的GNU代码在LINUX上移植运行。GNU的发展与LINUX的发展,可以说是相辅相成,所以,现在通常的说法叫“GNU/Linux systems”.
GNU工程开发了一套与Unix向上兼容的名为“GNU”(GNU's Not Unix)的完全自由的软件系统。(free software system)。由Richard Stallman完成的最初的GNU工程的文档被称为‘GNU宣言’,该宣言已经被翻译成多种其它语言。我们还有创作与1983年的GNU工程创始宣言。
上述单词“free”指的是自由(freedom),而不是价格。你可能需要或者不需要为获取GNU软件而支付费用。不论是否免费,一旦你得到了软件,你在使用中就拥有三种特定的自由。首先是复制程序并且把它送给你的朋友或者同事的自由;而后是通过获取完整的源代码,按照你的意愿修改程序的自由;最后是发布软件的改进版并且有助于创建自由软件社团的自由。(如果你重新发布 GNU软件,你可能对分发拷贝这项体力劳动收费,也可能不收费。)
在1983年构思GNU工程是为了提供一种找回在计算机界早期的盛行的合作精神的方式--为了使合作成为可能而排除有私有软件所有者给合作造成的障碍。
在1971年,当Richard Stallman开始他在MIT的职业生涯时,他工作于一个专门使用自由软件的工作组。即使计算机公司也经常发布自由软件。程序员可以自由地相互合作,就象他们通常所作的那样。
到了80年代,几乎所有的软件都是私有的,这意味着它有一个不允许并且预防用户合作的拥有者。这就使得GNU工程成为必要的了。
每个计算机的使用者都需要一个操作系统;如果没有自由的操作系统,那么如果你不求助于私有软件,你甚至不能开始使用一台计算机。所以自由软件议事日程的第一项就是自由的操作系统。
一个操作系统不仅仅是一个内核;它还包括编译器、编辑器、文本排版程序,电子邮件软件,和许多其他东西。因此,创作一个完整的操作系统是一乡十分庞大的工作。它将耗费太多的年头。
由于Unix的全局设计已经得到认证并且广泛流传,我们决定使操作系统与Unix兼容。同时这种兼容性使Unix的使用者可以容易地转移到GNU上来。
自由的,类似于Unix的内核的初始目标已经达到了。到90年代,我们已经发现或者完成了除了内核之外的所有主要成分。而Linux,一个自由的内核,由Linux Torvalds开发了。把Linux和几乎完成的GNU 系统结合起来,就构成了一个完整的操作系统:一个基于Linux的GNU系统。估计目前大约有十万人在使用基于Linux的GNU系统,包括Slackware、Debian、Red Hat以及其它。
然而,GNU工程并不限于操作系统。我们的目标是提供所有类型的软件,无论有多少用户需要它。这包括了应用软件。我们已经有了电子表格。我们希望在未来把GNU Emacs扩展为所见即所得的桌面出版系统。
我们还想为不是计算机专家的用户提供软件。为此我们正在创作‘拖放图标桌面’以帮助初学者使用 GNU系统。
我们还希望提供游戏和其它娱乐。已经由一些游戏可以使用了。
自由软件可以走多远?这没有限制,除非诸如版权法之类的法律完全地禁止自由软件。最终的目的是,让自由软件完成计算机用户希望完成的所有工作--从而导致自由软件的过时