Linux艰辛的发展史

         众所周知,当今世界上服务器有三大操作系统:Windows,Linux以及Unix。在这一篇,我们将介绍Linux系统发展的历史,可谓是艰辛而又漫长。

(As we all know, there have three major operating systems in the world today: Windows, Linux and Unix. In this article, we will introduce the history of the development of Linux  which is a long and arduous task.)
 
1.Multics计划
  上个世纪六十年代,那个计算机还没有很普及,只有少数人才能使用,而且当时的计算机系统都是批处理的,就是把一批任务一次性提交给计算机,然后就等待结果。并且中途不能和计算机交互。往往准备作业都需要花费很长时间,并且这个时候别人也不能用,导致了计算机资源的浪费。
  为了改变这种情况,在1965年前后,贝尔实验室(Bell)、麻省理工学院(MIT)以及通用电气(GE)联合起来准备研发一个分时多任务处理系统,就是来实现多人同时使用计算机的梦想,并把计算机取名为Multics(多路信息计算系统),但是由于项目太复杂,加上其他原因导致了项目进展缓慢,1969年贝尔实验室觉得这个项目不会成功,于是就退出不玩了!

2.Uinux的诞生

          在认为Multics计划不可能成功之后,贝尔研究室就退出该计划。不过,原本参与Multics计画的人员中,已经从该计画当中获得一些点子, Ken Thompson 就是其中一位 !Thompson因为自己的需要,希望开发一个小小的作业系统以提供自己的需求。 在开发时,有一部DEC(Digital Equipment Corporation)公司推出的PDP-7刚好没人使用, 于是他就准备针对这部主机进行作业系统核心程式的撰写。经过四个星期的奋斗,他终于以组合语言(Assembler)写出了一组核心程式,同时包括一些核心工具程式, 以及一个小小的档案系统。那个系统就是Unix的原型! 当时Thompson将Multics庞大的复杂系统简化了不少,于是同实验室的朋友都戏称这个系统为:Unics。(当时尚未有Unix的名称)。

  后来Unix这个小操作系统就在Bell实验室内部流行开,并经过不断地改良最终在1974年7月Unix发展到第5个版本,Bell实验室公开了Unix,结果引起了学术界的广泛兴趣并对其源码索取。所以,Unix第五个版本就以“仅用于教育目的”的协议,提供给各大学作为教学之用,成为当时操作系统课程的范例教材。各大学公司开始通过Unix源码对Unix进行了各种各样的改进和拓展。1978年学术界的老大伯克利大学,推出了一份以第六版为基础,加上一些改进和新功能而成的Unix。并命名为BSD(Berkeley Software Distribution伯克利分发版),开创了Unix的另一分支:BSD系列。
  于是乎Unix就有了两个分支,一个就是BSD系列的分支,一个就是Bell本身发放的分支,当时因为Bell属于AT&T,AT&T受到了美国《谢尔曼反托拉斯法》的影响,不能销售除了电话机电报机等之外的商品,后来AT&T分解,Bell可以卖Unix了,Unix走向了商业化,如果想继续使用就需要购买授权,一份授权4万美元。

3.LInux的诞生

       在1991年9月17日,Linus Torvalds(林纳斯.托瓦兹)在互联网上公布了自己写的Linux,于是Linus发布了一个帖子,大概就是说:我写了一个操作系统的内核,但是还不够完善,你们以任何姿势使用不收费,也可以帮助我一起修改。帖子发出后引起了强烈的反响。在大家的努力下,于1994年Linux的1.0版本正式发布。
  为什么会引起这么强烈的反应呢?这就要从了另一个人说起,那就是Richard Stallman(自由软件之父)。Stallman是一个非常“激进”的人,因为Unix商业化的影响,他认为软件是全人类的智慧结晶,不应该为某一家公司服务。在八十年代,他发起了自由软件运动,吹起了共产主义的号角(发起了GUN运动),并发布了软件界的共产主义宣言(GPL协议),并且这一运动得到了很多人的认同。
  所谓自由软件自由就是指:自由使用、自由学习和修改、自由分发、自由创建衍生版。

       1995年1月,Bob Young创办了RedHat(小红帽),以GNU/Linux为核心,集成了400多个源代码开放的程序模块,搞出了一种冠以品牌的Linux,即RedHat Linux,称为Linux"发行版",在市场上出售。这在经营模式上是一种创举。

       1996年6月,Linux 2.0内核发布,此内核有大约40万行代码,并可以支持多个处理器。此时的Linux 已经进入了实用阶段,全球大约有350万人使用。

       1998年2月,以Eric Raymond为首的一批年轻的"老牛羚骨干分子"终于认识到GNU/Linux体系的产业化道路的本质,并非是什么自由哲学,而是市场竞争的驱动,创办了"Open Source Intiative"(开放源代码促进会)"复兴"的大旗,在互联网世界里展开了一场历史性的Linux产业化运动。

       2001年1月,Linux 2.4发布,它进一步地提升了SMP系统的扩展性,同时它也集成了很多用于支持桌面系统的特性:USB,PC卡(PCMCIA)的支持,内置的即插即用,等等功能。

       2003年12月,Linux 2.6版内核发布,相对于2.4版内核2.6在对系统的支持都有很大的变化。

       2004年的第1月,SuSE嫁到了Novell,SCO继续顶着骂名四处强行“化缘”, Asianux, MandrakeSoft也在五年中首次宣布季度赢利。3月,SGI宣布成功实现了Linux操作系统支持256个Itanium 2处理器

4.Linux的开源协议

       世界上的开源许可证,大概有上百种

—GPLv2,GPLv3,LGPL(lesser):通用许可证 copyleft

—Apache:apache

—BSD:bsd

—Mozilla

—Apache

—MIT

                                                                        

5.Linux的哲学思想

         ● 一切皆文件。几乎把所有的资源系统抽象为文件形式:包括硬件设备,甚至通信接口等。作用:提高资源管理效率。例如:

  • 物理终端:/dev/console
  • 虚拟终端:/dev/tty#(#为1~6)
  • 串行终端:/dev/ttyS#
  • 伪终端:/dev/pts/#

        ●由众多功能单一的程序组成:一个程序只做一件事,并且做好;组合小程序完成复杂任务。作用:程序分工明确,运行后方便进程管理。程序代码也轻量化,高效,容易修复错误。小程序易于理解,维护,消耗系统资源较少,易于与其他工具结合实现更多的功能。

        ●尽量避免跟用户交互。使用命令行接口执行效率更高,易于以编程的方式实现自动化任务。

        ●使用文本文件保存配置信息。文本文件易于阅读和编辑。

        ●提供机制而非策略。

 

         

猜你喜欢

转载自www.cnblogs.com/liuwentaolaji/p/9301671.html