linux编年史(9) linux爱好者必须知道的linux历史:GNU计划的推展
linux编年史(9) linux爱好者必须知道的linux历史:GNU计划的推展 --
1984年,史托曼开始GNU计划, 这个计划的目的是:建立一个自由、开放的Unix操作系统(Free Unix)。 但是建立一个操作系统谈何容易啊!而且在当时的GNU是仅有自己一个人单打独斗的史托曼~ 这实在太麻烦,但又不想放弃这个计划,那可怎么办啊?
聪明的史托曼干脆反其道而行~『既然操作系统太复杂,我就先写可以在Unix上面运行的小程序,这总可以了吧?』在这个想法上, 史托曼开始参考Unix上面现有的软件,并依据这些软件的作用开发出功能相同的软件,且开发期间史托曼绝不看其他软件的原始码, 以避免吃上官司。后来一堆人知道免费的GNU软件,并且实际使用后发现与原有的专利软件也差不了太多,于是便转而使用GNU软件, 于是GNU计划逐渐打开知名度。
虽然GNU计划渐渐打开知名度,但是能见度还是不够。这时史托曼又想:不论是什么软件, 都得要进行编译成为二进制文件(binary program)后才能够执行,如果能够写出一个不错的编译程序,那不就是大家都需要的软件了吗? 因此他便开始撰写C语言的编译程序,那就是现在相当有名的GNU C Compiler(gcc)! 这个点相当的重要!这是因为C语言编译程序版本众多,但都是专利软件, 如果他写的C编译程序够棒,效能够佳,那么将会大大的让GNU计划出现在众人眼前!如果忘记啥是编译程序, 请回到第零章去瞧瞧编译程序吧!
但开始撰写GCC时并不顺利,为此,他先转而将他原先就已经写过的Emacs编辑器写成可以在Unix上面跑的软件,并公布原始码。 Emacs是一种程序编辑器,他可以在用户撰写程序的过程中就进行程序语法的检验,此一功能可以减少程序设计师除错的时间! 因为Emacs太优秀了,因此,很多人便直接向他购买。
此时因特网尚未流行,所以,史托曼便借着Emacs以磁带(tape)出售,赚了一点钱 ,进而开始全力撰写其他软件。并且成立自由软件基金会(FSF, Free Software Foundation),请更多工程师与志工撰写软件。终于还是完成了GCC,这比Emacs还更有帮助! 此外,他还撰写了更多可以被呼叫的C函式库(GNU C library),以及可以被使用来操作操作系统的基本接口BASH shell! 这些都在1990年左右完成了!
Tips:
如果纯粹使用文本编辑器来编辑程序的话,那么程序语法如果写错时,只能利用编译时发生的错误讯息来修订了,这样实在很没有效率。 Emacs则是一个很棒的编辑器!注意!是编辑(editor)而非编译(compiler)! 他可以很快的立刻显示出你写入的语法可能有错误的地方,这对于程序设计师来说, 实在是一个好到不能再好的工具了!所以才会这么的受到欢迎啊!
GNU的通用公共许可证:
到了1985年,为了避免GNU所开发的自由软件被其他人所利用而成为专利软件, 所以他与律师草拟了有名的通用公共许可证(General Public License, GPL), 并且称呼他为copyleft(相对于专利软件的copyright!)。 关于GPL的相关内容我们在下一个小节继续谈论,在这里,必须要说明的是, 由于有GNU所开发的几个重要软件,如:
Emacs
GNU C (GCC)
GNU C Library (glibc)
Bash shell
造成后来很多的软件开发者可以藉由这些基础的工具来进行程序开发! 进一步壮大了自由软件团体!这是很重要的!不过,对于GNU的最初构想 『建立一个自由的Unix操作系统』来说,有这些优秀的程序是仍无法满足, 因为,当下并没有『自由的Unix核心』存在...所以这些软件仍只能在那些有专利的 Unix平台上工作~~一直到Linux的出现...更多的FSF开发的软件可以参考
查看评论 回复