Linux发展史

Linux 操作系统是UNIX操作系统的一种克隆系统。它诞生于1991年的10月5日(这是第一次正式向外公布的时间)。以后借助于Internet网络,并经过全世界各地计算机爱好者的共同努力下,现已成为今天世界上使用最多的一种UNIX类操作系统,并且使用人数还在迅猛增长。下文简要介绍了Linux发展史。

1969年,美国贝尔实验室的Ken.Thompson和Dennis Ritchie在DEC PDP-7小型计算机上开发出一个分时操作系统-UNIX操作系统。当时Ken Thompson 为了能在闲置不用的PDP-7 计算机上运行他非常喜欢的星际旅行(Space travel)游戏,在1969年他花了一个月时间开发出了unix 操作系统的原型。当时使用的是BCPL 语言(基本组合编程语言),后经Dennis Ritchie 于1972 年用移植性很强的C语言进行了改写,使得UNIX系统在大专院校得到了推广。最开始Unix的原名是Unics,后来改名为Unix。

1979年,AT&T宣布了Unix的商业化计划,使软件业成为一种版权专有式的产业,围绕程序开发的那种创新活动被局限在某些骨干企业的小圈子里,源码程序视为核心"商业机密"。这种做法,一方面产生了大批的商业软件,极大的推动了软件业的发展,诞生了一批软件巨人;另一方面,由于封闭式的开发模式,也阻碍了软件业的进一步深化和提高。由此,人们为商业软件付出了巨大的财力。

1984年,Richard Stallman面对程序开发的封闭模式,发起一项国际性的源代码开放的GNU计划,力图实现开源的梦想。他为保护源代码开放的程序库不会再度受到商业性的封闭式利用,制定GPL条款。

1985年,Richard Stallman成立了一个自有软件基金会(Free Software Foundation-FSF),目的是执行GNU计划,开发更多的自由软件,实现免费获取、随意使用、再修改和开发。

1987年,荷兰Amsterdam 的Vrije大学教授Andrew S. Tanenbaum(AST)开发出了MINIX 系统,主要用于学生学习操作系统原理。当时该操作系统在大学使用是免费的。后来MINIX 也开始有了版权,需要购买才能得到源代码。

1989年,他制定了《GNU通用公共协议证书》,即GPL条款正式面世。

1991年,由于替代Unix内核的HURD仍只能在实验室等小范围内适用,所以最终HURD自身的开发过于严谨,扩展性不强,没用获得市场认可。Andrew S.Tanenbaum的GNU计划已经开发出了许多工具软件。最受期盼的GNU C编译器已经出现,但还没有开发出免费的GNU操作系统。

1991年8月Linus Benedict Torvalds宣布Linux项目:FREAX系统发布,即后来的Linux操作系统。他成功移植GNU 的软件到该系统上(GNU gcc、bash、gdb 等),同时也是一款免费、实用性很强的系统。

1991 年的10 月5 日,Linus 在comp.os.minix 新闻组上发布消息,正式向外宣布Linux 内核系统的诞生(Free minix-like kernel sources for 386-AT)。这段消息可以称为Linux 的诞生宣言,并且一直广为流传。因此10月5日对Linux 社区来说是一个特殊的日子,许多后来Linux 的新版本发布时都选择了这个日子。所以RedHat 公司选择这个日子发布它的新系统也不是偶然的。

Richard Stallman博士后来要求Linus Benedict Torvalds将Linux系统改名为GNU/Linux,它的开源和免费使得世界更多的人和公司使用他们的操作系统。

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

(1)
galwaygalway
上一篇 2016-10-17 08:35
下一篇 2016-10-17 08:35

相关推荐

  • 马哥教育21期网络班—第六周课程+练习—-成长进行时

    请详细总结vim编辑器的使用并完成以下练习题 1、复制/etc/rc.d/rc.sysinit文件至/tmp目录,将/tmp/rc.sysinit文件中的以至少一个空白字符开头的行的行首加#; [root@localhost ~]# cp /etc/rc.d/rc.sysinit /tmp/rc.sysinit&nbs…

    Linux干货 2016-08-03
  • Linux进程管理和计划任务

    进程管理篇 进程概念 内核的功用:进程管理、文件系统、网络功能、内存管理、驱动程序、安全功能等 Process: 运行中的程序的一个副本,是被载入内存的一个指令集合     进程ID(Process ID,PID)号码被用来标记各个进程     UID、GID、和SELinux语…

    Linux干货 2016-09-17
  • rpm包管理、yum仓库、ftp、http服务、编译安装

    一、软件包管理 1.1 软件包管理 API:Application Programming Interface  应用程序开发接口;程序员面对的编程接口 POSIX:portable operating system:可移植操作系统接口 v   程序源代码 –> 预处理 …

    Linux干货 2016-11-27
  • vim编辑以及脚本编程练习

    vim编辑器的使用总结: vim在工作过程当中有三种模式:编辑模式、输入模式、末行模式。 1、编辑模式:即命令模式,键盘操作常被理解为编辑命令; 2、输入模式:在文本文件当中进行输入内容; 3、末行模式:vim内置的命令行接口,执行vim的内置命令。   vim的使用 打开文件 #vim[option]…[FILE] +#:打开文件后,直接让光标处…

    Linux干货 2017-10-29
  • linux软件包管理(开始上正菜了)

    linux程序包管理:     API:数据接口     ABI:应用程序二进制接口        库级别的虚拟化:             linux:wine    …

    Linux干货 2017-03-07