linux发展历程简述

 linux发展历程简述

概述

      本文写的linux 的发展历史,阅读本文你可以知道:

          1.   linux的发音

          2.   UNIX的出现和GUN运动以及linux的发展历史

          3.   linux的现状和未来


 linux的发音

Linux 英语发音:/ˈlɪnəks/ LIN-əks)是一种自由和开放源代码的类UNIX操作系统。该操作系统的内核由林纳斯·托瓦兹在1991105日首次发布。[5][6],在加上用户空间的应用程序之后,成为Linux操作系统。Linux也是自由软件和开放源代码软件发展中最著名的例子。只要遵循GNU通用公共许可证,任何个人和机构都可以自由地使用Linux的所有底层源代码,也可以自由地修改和再发布。大多数Linux系统还包括像提供GUIX Window之类的程序。除了一部分专家之外,大多数人都是直接使用Linux发行版,而不是自己选择每一样组件或自行设置。


发音

      根据linux 创始人的说法,Linux的发音和“Minix”是押韵的。

   “Li”中“i”的发音类似于“Minix”中“i”的发音,而“nux”中“u”的发音类似于英文单词“profess”中“o”的发音。依照国际音标应该是['linэks][ˈlɪnəks]。

     此外有一份Linus Torvalds本人说话的录音,录音内容为“Hello, this is Linus Torvalds, and I pronounce Linux as Linux”,也表明了作者对单词的读法linux发展历程简述Linus_pronounces_linux_(english).mp3


发展历史:

1.UNIX的出现和发展

1964年由贝尔实验室、麻省理工学院及美国通用电气公司所共同参与研发,想开发出安装在大型主机上的一套操作系统,目的是连接1000部终端机,支持300的用户同时上线,最终的项目是名称是Multics1969年,因MULTICS项目的工作进度过于缓慢,最后终究遭裁撤的命运,贝尔实验室退出此项目,一群贝尔实验室的研究人员Ken TompsonDennis RitchicDoug McllroyJoy Ossanna1969年开始在DEC-PDP7机器上用机器语言写了一个比MULTICS更简单的系统,新系统的很多思想来源于MULTICS,只不过封装在更小的程序包里,1970年,Brian Kemighan给系统命名为“UNIX”,它与“MULTICS”意思相反,与MULTICS复杂相比,UNIX系统更加简单 multi的英语前缀是复杂的意思,而un,相反的意思)

因为贝尔实验室宽松的条件,UNIX提供给了许多高校以供他们研究,最著名的是伯克利大学用UNIX开发出来的BSD系统(Berkeley Software Distribution),BSD系统主要还是用来教学,在之后的发展历程中,由于AT&T公司要收回UNIX的版权,对加利福利亚大学提起了诉讼,这次官司持续了很久,而且影响很大,随后由于unix的版权问题和专利的问题,AT&T四处打官司,严重影响了UNIX的发展,而且最后发展到大家由于怕专利的问题而不敢使用随意使用UNIXUNIX的授权费用也是很高,尤其对于学校,这严重影响了科技的进步,在这次事件影响中,有一位专门教授UNIX的教授,由于没有源码,就没有办法教学生知识,这位名叫Andrew Tanenbaum就自己动手编写了运行在x86上的类UNIX系统“Minix”,为了避免版权纠纷,教授声称自己在编写过程中没有看UNIX的代码,但是自己的系统和UNIX的系统兼容。值得一提的是minix并不是免费的,人们不能在网络上下载这套源码,需要购买光盘或者磁盘磁带才行而且对源代码的修改与再发布进行了限制,另外,MINIX16位的设计与当时日渐便宜及受欢迎的、个人电脑的Intel 80386架构兼容得不好。


2.Stallman和GUN计划

   于此同时,地球上的某一个地方,一个人工智能实验室悄悄的崩溃了,一个名叫Richard Stallman的年轻人走了出来,当时的社会风气对于软件的看法和现在不太一样,大家认为软件是个人的思想结晶,是个人的私有财产,应当得到保护,而且不光是版权问题,就算使用其软件业不可修改和再发行,对于使用途径也是相当严格。 "If you share with your neighbor, you are a pirate. If you want any changes, beg us to make them."这句话很好的阐释了当时人们对于软件私有的看法。但是Stallman并不是这样认为,他认为版权不是一个自然权利,而是一个人为的,政府强加的垄断,限制了用户复制的自然权利,计算机用户应该可以自由地修改方案来满足他们的需求,并自由地共享软件,因为帮助别人是社会的基础。

        If I am not for myself, who will be for me?

        If I am only for myself, what am I?

        If not now, when?

基于这种精神,也为了避免出现像UNIX这样因为版权问题而导致的各种不良问题,Stallman发起了GUN运动,口号是GUN’s Not Unix,同时成立了免税的自由基金软件会(Free Software Foundation),(注意这里的free指的是自由的意思比如自由言论,并不是免费。事实上自由和销售并不冲突,人们可以通过销售来募集更多的资金来维持社区和自由软件基金会的发展)。GNU计划的目标是创建一套完全自由的操作系统,重现当年软件界合作互助的团结精神,为保证GNU软件可以自由地使用、复制、修改和发布,所有GNU软件都包含一份在禁止其他人添加任何限制的情况下,授权所有权利给任何人的协议条款,称为GNU通用公共许可证(GNU General Public LicenseGPL)。

19849Stallman开始了GNU Emacs的编写工作,到了1985Stallman编写的这个文本编辑器受到了人们的广泛好评,Stallman于是开始采用磁带磁盘邮寄的方式进行销售这套小工具,1987年他完成了GCC库的编写和C语言编译器的编写,到1990GUN系统几乎完成,唯一缺失的就是内核,Stallman决定以Mach微内核进行开发,Mach一开始是卡内基梅隆大学开发的,到了1994年卡内基梅隆大学终止了Mach的开发,自由软件基金会随后在犹他大学继续开发,由于Mach并不是自由软件基金会的,所以他们希望卡内基梅隆大学能够承诺Mach作为自由软件发布,借此提供源代码,但是这一等就是很长时间,虽然最后Mach也继续开发而且还开发了HURD,这些都是类UNIX的微内核,但是时间都是等待了很长,而且设计异常复杂,开发非常缓慢。


3.linux诞生

在此期间,地球的另一端,有一个年轻人,名叫Linus Torvalds,在自己的母校在学习了UNIX系统之后开始萌发自己编写内核的想法,当时Linus Torvalds用的内核是Tanenbaum开发的MINIX,但是MINIX规定只能用于教育,不能用于商业,而且Tanenbaum教授本人对MINIX只是用它来教学,对于继续开发他不怎么上心,当时的情况是MINIX系统有许多人喜欢,而且希望能继续开发一些其他的功能,对MINIX的功能需求很是强烈,于是Linus Torvalds就想自己干脆在自己写一个类似于MINIX系统的内核,当时GUN的许多工具已经发布,Linus Torvalds就利用这些工具开始编写,项目的名称就是freax,(这个奇怪的名称是freex的组合,free是指免费,而x是大家经常用的后缀,比如UNIX,)开始的项目的只有10000多行,当时编写程序不像现在不需要考虑硬件的问题,程序反而是为了某一个硬件专门设计,当时Linus Torvalds用的386的机器,这种机器性价比好而且对于多任务处理有很大的提高,Linus Torvalds把自己断断续续写的内核传到自己学校的FTP服务器上保存,毕竟一个人开发还是有难度的,随后他在comp.os.minix新闻组上发帖,希望能得到大家的支持,并且把自己写的传了上去,大家一用,发现Linus Torvalds写的程序可以在386机器上跑,而且能够读取MINIX的文件系统,大家就纷纷用了起来,由于在传的时候负责服务器的同学把那个奇怪的freax改名成了linux,所以大家都叫这个新生的内核为linux。但是Linus Torvalds写的程序不能兼容unix,随后Linus Torvalds参考POSIX标准重新写了内核,放在网上供大家下载。由于重新写的内核是参考POSIX标准写的,所以理论上只有符合POSIX的软件就可以共享,UNIX就是根据POSIX写的,这样一来许多UNIX上软件可以互享在linux上了,在这些原因的影响下,linux很快流行起来,使用率大增,有许多志愿者也愿意在linux上开发,随后这些幕后的付出者们共同成立了内核维护的网站:www.kernel.org


4.linux发展和未来

Linus Torvalds把自己的系统在GPL协议下发布了。LinuxGNU的开发者一起把GNU的部件和Linux集成起来,使它成为一个可运行的自由操作系统,Torvalds说,Linux发布在GPL下是我所做过的最好的事"。今天在Linus Torvalds带领下,众多开发共同参与开发和维护Linux内核。Stallman领导的自由软件基金会,继续提供大量支持Linux内核的GNU组件。一些个人和企业开发的第三方的非GNU组件也提供对Linux内核的支持,这些第三方组件包括大量的作品,有内核模块和用户应用程序和库等内容。Linux社区或企业都推出一些重要的Linux发行版,包括Linux内核、GNU组件、非GNU组件,以及其他形式的的软件包管理系统软件。

Linux发行版一般是由一些组织、团体、公司或者个人制作并发行的,较为知名的有FedoraDebianUbuntu Opensuse ,CentOS,RedHat,等等,linux一般运用到个人电脑,超级计算机,服务器等,尤其作为服务器,由于稳定和免费,大部分企业使用的都是linux,移动领域Android就是基于linux为基础开发,在移动领域占据很大的一部分。Linux市场份额逐年提升,成为第三大个人操作系统。在未来的发展中linux的权重会越来越高,越来越流行。


附录:大事年表

1983:Richard Stallman发起以创建一个自由的操作系统为目标的GNU计划。

1989:Richard Stallman撰写第一版的GNU GPL。

1991:Linux内核在8月25日由21岁的芬兰学生Linus Benedict Torvalds公开发布。

1992:在GNU GPL下Linux内核被重新授权使用,产生第一个“Linux发行版本”。

1993:超过100个开发者致力于Linux内核开发。在他们的努力下,内核逐渐适应GNU的环境,这个为Linux创造巨大的应用空间的广阔环境。Slackware首次发布。后来在同一年,Debian项目设立,现已成为最大的社区发布项目。

1994: 3月, Torvalds认为内核的所有组件已经完全成熟,他放出了Linux的1.0版本。XFree86项目组提供了一个图形化用户界面(GUI).同年Red Hat公司和SUSE发行他们各自的Linux 1.0分发版本。

1995: Linux被移植到DEC Alpha和Sun公司的SPARC平台上,而在接下来的几年里它又被广泛地移植到更多的平台上。

1996: Linux内核2.0版本发布。此时内核已经支持多处理器,因而成为各大公司的绝佳选择。

1998:很多大公司,诸如IBM、Compaq ,Oracle表示支持Linux系统。另外,一部分程序员开始图形化用户界面KDE的开发。

1999:一些程序员开始致力于开发图形化环境GNOME,它可以替代依靠Qt工具包才能工作的KDE。在这一年里IBM宣布一项支持Linux的浩大的工程。

2004: XFree86小组分裂,同现有的X Windows标准组织 共同成立X.Org基金会,促使了X Window ServerLinux版本极其快速而迅猛的发展


参考资料

1.维基百科

2.Open Sources : Voices from the Open Source Revolution

3.深入理解计算机系统

4.鸟哥私房菜基础学习篇(第二版)

5.浪潮之巅 吴军

原创文章,作者:M21-郝建勋,如若转载,请注明出处:http://www.178linux.com/51331

(1)
上一篇 2016-10-14 10:58
下一篇 2016-10-14 11:29

相关推荐

  • Python入门之迭代,列表解析,生成器及文件操作

    迭代器是访问集合元素的一种方式,迭代器包含了__iter__()(返回迭代器对象本身)next()(返回迭代器的下一个元素)迭代器只能往前不会退后 以下类型支持迭代 序列类型:list,str,tuple 非序列类型:dict,file 自定义类 通过内建的函数iter()或对象自带方法__iter__可以获取迭代器对象 l1=range(5) iter1=…

    Linux干货 2015-12-13
  • Linux第三周总结

    1、列出当前系统上所有已经登录的用户的用户名,注意:同一个用户登录多次,则只显示一次即可。 ~]# who | cut -d ” -f1 | uniq 2、取出最后登录到当前系统的用户的相关信息。 ~]# who|tail -1 3、取出当前系统上被用户当作其默认shell的最多的那个shell ~]# cut -d’:’…

    2017-07-16
  • N25-第三周博客作业

    1、列出当前系统上所有已经登录的用户的用户名,注意:同一个用户登录多次,则只显示一次即可。 [root@node1 ~]# who | cut -d" " -f1 | uniq (unknown) root 2、取出最后登录到当前系统的用户的相关信息…

    Linux干货 2016-12-17
  • 磁盘管理之文件系统及管理工具

    磁盘管理之文件系统及管理工具    我们在之前的文章中讲到了硬盘的MBR与GPT分区,我们这篇文章来讲一下怎么使用工具对硬盘进行分区,硬盘的分区有什么区别,以及分区的管理。 管理分区   首先我们来看一下分区。那么什么是分区呢?简单的比喻一下,硬盘就像一个大房子,那么在向房间里放东西(比如家具)之前,它需要有一定的结构…

    Linux干货 2016-08-30
  • linux文本处理工具

    linux文本处理工具 1.Linux 文件系统上的特殊权限: SUID     SGID   Sticky       进程的安全上下文:(1)任何一个可执行程序文件能不能启动为进程,取决发起者对程序文件是否拥有执行去权限       &…

    Linux干货 2017-02-25
  • Linux命令的别名与管道命令的详解

    Linux中命令的别名与管道命令的详解 命令别名 在使用和维护liunx时,将会使用大量的命令,而一些命令加上参数时输入比较繁琐,此时我们可以定义一个别名来代替繁琐的命令。 系统定义的别名 可以输入 alias 命令查看系统中已经定义好的命令的别名; [root@localhost ~]# alias alias cp=’cp -i’ alias egrep…

    Linux干货 2018-03-03

评论列表(2条)

  • 马哥教育
    马哥教育 2016-10-14 11:10

    总结得不错,如果加些图片说明可能效果会更好些,加油,加油~

  • evergreen1989
    evergreen1989 2016-10-14 11:36

    感觉总结倒是不出的,至于排版的话,就需要改善改善了