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
下一篇 2016-10-14

相关推荐

  • grep,sed,与正则等

    grep:文本过滤(模式:pattern)工具; grep, egrep, fgrep(不支持正则表达式搜索 sed:stream editor,文本编辑工具; awk:Linux上的实现gawk,文本报告生成器;a grep [OPTIONS] PATTERN [FILE…] grep…

    Linux干货 2016-08-12
  • socket阻塞与非阻塞,同步与异步、I/O模型

    1. 概念理解      在进行网络编程时,我们常常见到同步(Sync)/异步(Async),阻塞(Block)/非阻塞(Unblock)四种调用方式:同步:      所谓同步,就是在发出一个功能调用时,在没有得到结果之前,该调用就不返回。也就是必须一件一件事做,等前…

    Linux干货 2015-04-10
  • N25第五周作业

    1、显示/boot/grub/grub.conf中以至少一个空白字符开头的行; ]# grep -E '^[[:space:]]+.*' /boot/grub/grub.conf 2、显示/etc/rc.d/rc.sysinit文件中以#开头,后面跟至少一个空白字符,而后又有至少一个非空白字符的行;…

    Linux干货 2017-01-08
  • Linux终端类型

        终端(Terminal)也称终端设备,是计算机网络中处于网络最外围的设备,主要用于用户信息的输入以及处理结果的输出等。在早期计算机系统中,由于计算机主机昂贵,因此一个主机(IBM大型计算机)一般会配置多个终端,这些终端本身不具备计算能力,仅仅承担信息输入输出的工作,运算和处理均由主机来完成。在个人计算机时代,个人计算机可以运行称为…

    Linux干货 2016-10-13
  • OpenSSL 的使用

    OpenSSL 是一个开源项目,其组成主要包括一下三个组件:     openssl:多用途的命令行工具     libcrypto:加密算法库     libssl:加密模块应用库,实现了ssl及tls openssl可以实现:秘钥证书管…

    Linux干货 2017-06-07
  • 文本处理工具练习题(包含正则)

    正则练习题(包含文本处理练习题) 问题 找出ifconfig命令结果中本机的所有IPv4地址  查出分区空间使用率的最大百分比值 查出用户UID最大值的用户名、UID及shell类型 查出/tmp的权限,以数字方式显示 统计当前连接本机的每个远程主机IP的连接数,并按从大 到小排序 答; ifconfig | grep -o '[0-9]\…

    Linux干货 2016-08-08