二、GNU计划和自由软件基金会诞生1983年,Richard Stallman在net.unix-wizards新闻组上公布公开发起GNU计划,宣布它的目标是创建一套完全自由的操作系统,并附带一份《GNU宣言》。在该宣言中,Stallman声称发起该计划的一个重要理由是要“重现当年软件界合作互助的团结精神”。GNU是“GNU's Not Unix”的递归缩写,Stallman宣布GNU应当发音为Guh-NOO以避免与new这个单词混淆(注Gnu在英文中原意为非洲牛羚,发音与new相同)。
他选择做一个与Unix兼容的操作系统,这样容易被移植,而且Unix用户可以方便地转移过来。 一开始,GNU计划只有他一个人。他发现自己原来在人工智能实验室的办公室还没有分给其他人用时,他就每天晚上溜进去工作。久而久之,白天他也跑去用实验室里的电脑。当时,人工智能实验室主任Patrick H. Winston并不干涉。因为他始终不把Stallman的辞职当真,只要Stallman能创造些好东西给大家用,实在没有必要打发这位老同事走。
大名鼎鼎的GCC1984年9月,Richard Stallman开始写GNU Emacs。到1985年初,GNU Emacs已经可以工作了,使用它可以用Unix系统进行编辑。此时,人们开始想使用Emacs,但如何传播它?当然,他将其放到了MIT的匿名服务器上。但那时互联网还未普及,人们很难通过FTP获得拷贝,而失业的Stallman也需要收入。于是,他宣布任何人都可以用150美元的价格获得程序。自由软件的分销商业模式就此诞生。目前已有几百种Emacs的副程序,可用在50多种电脑上,从微电脑到Cray的超级电脑都可用Emacs。 为防止不法厂商利用自由软件,使其专有化。Richard Stallman还别出心裁,与一群律师起草了广为使用的GNU通用公共协议证书(GNU General Public License, GNU GPL),创造了Copyleft的授权办法。所有的GNU程序遵循一种“Copyleft”原则,即可以拷贝、可以修改、可以出售,但有一条就是源代码所有的改进和修改必须向每个用户公开,所有用户都可以获得改动后的源码。它保证了自由软件传播的延续性。
由于Emacs的成功,Richard Stallman设立了自由软件基金会(Free Software Foundation Inc.,简称FSF)。FSF致力于消除对计算机程序在、复制、分发、理解和修改方面的限制。凡是捐助FSF和GNU计划的厂商,也可享有减税的优待。单单1989年,FSF就收到267782美元的捐助,基金会也因出售GNU程序手册和电脑磁带而赚了330377美元。此时,Stallman也不再天天溜回人工智能实验室“借”用电脑,因为许多厂家已为FSF提供一大堆的高性能工作站等硬件设备,包括HP、Thinking Machine、SONY、贝尔实验室等。也有一些厂商捐赠现金,并把技术人员送到FSF来向Stallman学习,而且支付FSF成员的薪水。 FSF就用这些钱来养起14位基金会成员:9位程序设计师,3位负责技术资料撰写。