Linux发展史

适用对象:本文适合希望开始学习以及想了解Linux的朋友阅读。本文中所有内容仅供参考,不作为科学依据。

一、      Linux的起源

最初的计算机其实是具有单一功能的大型计算器,只能完成指定或者设定好的工作。多数情况下计算机资源是处于空闲状态的,为了不使资源浪费,就需要使计算机能够或者可以进行多种工作。或者能够让多个用户同时进行操作。因此就需要一种程序能够让多个用户操作同一台计算机或者在同一计算机上运行多个任务,这种程序就被称为分时多任务操作系统。20世纪60年代末由贝尔实验室、麻省理工学院、通用电气公司发起分时多任务操作系统的研究开发工作,该系统被称为Multics。由于历时3年未出现明显成果,该项目最终被解散。

1969年的时候,AT&T下属的贝尔实验室中研究员Ken Thompson为了能够在已被废弃的PDP-7机器上运行自己的小游戏,为PDP-7编写了一套平台,并被命名为UNICS。

早期的UNIX是由汇编语言编写,向其它的机器上移植很困难。1971年Dennis Ritchie开发出能在不同平台上使用的编程语言C语言。1973年Thmpson和Ritchie成功地用C语言重写了整个Unics,并命名为UNIX。

1974年UNIX被发布在《美国计算机通信杂志上》,得到全世界计算机爱好者的关注。

1975年,AT&T被反垄断组织调查,UNIX被免费提供给其他组织或机构进行研究学习,掀起了UNIX发展的高潮。

1975年-1976年期间Thmpson到伯克利大学任教,伯克利大学在此期间并启动了自己的UNIX项目即BSD项目,该项目由Thmpson的学生Bill Joy管理。同时,在其他机构中其他基于UNIX的衍生版本也层出不穷。

1983年AT&T在反垄断官司中败诉,其公司被分拆成,贝尔实验室借此摆脱不允许商业化经营Unix的限制,开始向此前研究使用Unix的机构收费,并与BSD陷入长达十年的版权之争。与此同时,微软公司的MS-DOS系统大肆发展,占据计算机操作系统的大部分市场。

1984年,Richard Stallman发表了GNU宣言(the GNU manifesto) [Stallman],目的是开放一个自由、开源的UNIX(Free UNIX),并发起了自由软件基金会(Free Software Foundation)。由于工程量十分浩大,Stallman决定先编写应用程序,如GCC,Emacs等出现。同时,大量的软件开发人员及组织纷纷加入GUN组织。例如:X-Window。

1987年,荷兰阿姆斯特丹大学的Tanenbaum教授为了使学生更好的学习操作系统原理,编写了Minux。到1991年的时候版本已经发展到1.5版本。

1991年芬兰赫尔辛基大学的学生Linus Torvalds在学习Minux的过程中逐渐觉得Minux系统有很多的限制。为了学习Intel 386 体系结构保护模式运行方式下的编程技术,他通过修改终端仿真程序和硬件驱动程序,开始编制起自己的操作系统。并于1991年10月将自己的Linux内核(Linux  v0.01)发布至论坛上。由此,Linux开始进入发展时期。

二、      Linux的发展

最初,Linux只能运行在Intel 386机器上,后经过全世界程序员的参与修改,其可移植性大大提高。1995年的时候,Linux已经可以在Intel、Digital 以及Sun SPARC处理器上运行。

1995年,Apache服务程序的出现了。Apache是开源程序,遵循GPL协议。Linux也遵循GPL协议,两者的结合,更是推动了Linux在服务器领域的发展速度。

1996年,Linux2.0内核发布,并支持多处理器。全球大约350万人在使用Linux,Linux进入实用期。

1997年,电影《泰坦尼克号》上映。在为其制作特效中使用的160台Alpha图形工作站中,有105台采用了Linux操作系统。

1998年,RedHat成立。IBM发布了适用于Linux的文件系统AFS 3.5以及Jikes Java 编辑器和Secure Mailer及DB2测试版。SUN也逐渐开放 了Java协议,并且在UltraSparc上支持Linux操作系统。

1999年,IBM与RedHat达成伙伴,以确保Redhat在IBM机器上正确运行。Oracle、Sun等大批公司投入力量支持Linux,并开发出自己的Linux系统。随着其他机构和个人的进入,基于Linux的各种衍生版层出不穷。

         经过十几年的发展,Linux得到了IBM、HP、Novell、Oracle等诸多厂商的支持,占据了服务器操作系统领域百分之八十以上的市场。

原创文章,作者:jacklei,如若转载,请注明出处:http://www.178linux.com/51035

(0)
jackleijacklei
上一篇 2016-10-14 11:40
下一篇 2016-10-14 11:41

相关推荐

  • corosync+pacemaker+drbd+mysql配置安装详解

    一,  基本环境介绍及基本环境配置 节点1: node1.hulala.com      192.168.1.35     centos6.5_64    添加8G新硬盘 节点2: node1.hulala.com      192.168.1.36…

    Linux干货 2016-05-08
  • CollabNetSubversionEdge服务搭建

    准备目录并设置权限 [root@localhost ~]# mkdir /var/svn [root@localhost ~]# chown bohui:bohui /var/svn/ [root@localhost ~]# chmod 700 /v…

    Linux干货 2015-10-18
  • 权限管理

    1、创建组sales,gid 3000,passwd:centos,sales admins:user2 将用户user1,user2,user3加入到sales辅助组 希望user1 创建新文件 默认的所属组为sales user2将用户user3从sales组移除 # groupadd -g 3000 sales  # gpasswd sale…

    Linux干货 2016-08-03
  • 从Linux小白到大牛——与狼共舞的日子12(下)

    马哥教育网络班21期+第12周课程练习 5、为第4题中的第2个虚拟主机提供https服务,使得用户可以通过https安全的访问此web站点; (1)要求使用证书认证,证书中要求使用的国家(CN)、州(HA)、城市(ZZ)和组织(MageEdu); (2)设置部门为Ops,主机名为www2.stuX.com,邮件为admin@stuX.com; 1.CA生成私…

    Linux干货 2016-12-26
  • 软件管理

    rpm:操作复杂、编译时间长、极易出现问题、依赖关系复杂、管理方便、 保存依赖关系,需要手工解决。
    yum:自动解决依赖关系、可以对rpm进行分组,基于组进行安装操作、引入仓库概念,支持多个仓库、配置简单

    2018-03-21
  • tcpdump输出详解

    在这里不得不再吐槽下国内整个IT粗糙浮躁,度娘下来的中文文档几尽抄袭~google下来的文档英文文档质量远高于国内中文文档.用ie或没有安装插件的浏览器访问,不然可能会有其它访问请求数据干扰分析 IP数据包结构 TCP数据包结构 // tcpdump需root权限 # tcpdump -x -i eth1 i…

    Linux干货 2015-04-15