Linux和Unix的那些事儿 UNIX和Linux( 四 )




1984 年,史托曼开始 GNU 计划,这个计划的目的是想要:建立一个自由的开放的 Unix 操作系统 。但是建立一个操作系统谈何容易啊!而且在当时的 GNU 是仅有史托曼他自己一个人啊 。这实在太麻烦,但又不能不做这个计划,于是史托曼反其道而行 。『既然操作系统太复杂, 我就先写可以在 Unix 上面运行的小程序,这总可以了吧?』在这个想法上, 史托曼便开始了他的搬砖之路 。在此期间,为了不让自己吃上官司,他绝对不看专利软件的源码 。为了这个计划,他开始使用原本 Unix 上面跑的软件, 并自行编写功能与 Unix 原有专利软件相仿的软件 。


但不论是什么软件,都得要进行编译成为二进制文件后才能够执行, 因此他便开始编写C 语言编译器,那就是现在大名鼎鼎的 GNU C (gcc)了 。这个点相当的重要,因为 C语言编译器版本众多,但都是专利软件, 如果他写的 C 编译器够棒,效能够佳,那么将会大大的让 GNU 计划出现在众人眼前 。


但开始时并不顺利,为此,他先转而将 Emacs 编辑器写成可以在 Unix 上跑得软件, 并开源出来,因为 Emacs 太优秀了,因此,很多人便直接向他购买 。此时 Internet 尚未流行, 所以,史托曼便借着 Emacs 以磁带出售,赚了一点钱 ,进而开始全力开发其它软件 。并且成立自由软件基金会 (FSF, Free Software Foundation),请更多工程师一起搬砖 。终于还是完成了 GCC,这比 Emacs 还更有帮助 。此外,他还写了C 函式库(GNUC library), 以及BASH shell。这些都在 1990 年左右完成的 。


到了 1985 年,为了避免 GNU 所开发的自由软件被其它人所利用,进而成为专利软件, 所以他与律师草拟了有名的通用公共许可证 (General Public License, GPL), 并且给他起了个名字:copyleft (相对于专利软件的 copyright) 。在这里,必须要说明的是, 由于有 GNU 所开发的几个重要软件,如:


  • Emacs
  • GNU C (GCC)
  • GNU C Library (glibc)
  • Bash shell


后来很多程序员可以借由这些基础的工具来进行程序开发,进一步壮大了自由软件团体 。这很重要的 。不过,对于 GNU 的最初构想 『建立一个自由的 Unix 操作系统』来说,有这些优秀的程序是仍无法满足, 因为当下并没有『自由的Unix 的内核』 。所以这些软件仍只能在那些有专利的 Unix 平台上工作,直到 Linux 的出现 。




八.1988 年:图形接口 XFree86 计划


由于GUI ( Graphical User Interface) 的需求日益加剧,1984 年由 MIT及其他厂商首次发表了 X Window System ,并在 1988 年成立了非营利组织:XFree86。所谓的 XFree86 其实是 X Window System + Free + x86 的整合名称 。




九.1991 年:芬兰大学生 Linus Torvalds 的一则简讯


到了 1991 年,芬兰的赫尔辛基大学的 Linus Torvalds 在 BBS 上面贴了一则消息, 宣称他用bash, gcc 等工具写了一个小小的核心程序,这个核心程序可以在 Intel 的 386 机器上面运行,他的出现让众人很感兴趣 。从此开启了 Linux 的非凡之路 。


众所周知,Linux 是由 Torvalds 这个芬兰人发明的 。那么为何托瓦兹可以发明 Linux呢?凭空想象而来的?还是有什么渊源?


Linus Torvalds (托瓦兹, 1969 年人)的外祖父是赫尔辛基大学的统计学家, 他的外祖父为了让自己的小孙子能够学点东西, 所以从小就将托瓦兹带到身边来管理一些微计算机 。在这个时期,托瓦兹接触了汇编语言 (Assembly Language),那是一种直接与芯片打交道的语言,也就是所谓的低级语言 。必须要很了解硬件的架构,否则很难用汇编写程序的 。


以上关于本文的内容,仅作参考!温馨提示:如遇健康、疾病相关的问题,请您及时就医或请专业人士给予相关指导!

「四川龙网」www.sichuanlong.com小编还为您精选了以下内容,希望对您有所帮助: