Linux发展史

前言

    Linux属于类Unix中的一个当下比较流行的操作系统,占领了服务器大部分江山。作为一个专业复杂的操作系统,了解其发展过程是很有必要的。如果要讲linux的历史,肯定是从三个团体开发Multics系统说起,贝尔实验室离开Multics项目后,Tompson和他的同事一起创造了unix,而在unix的各种分支中BSD则是迅速发展。因为后来长达10年的unix版权之争。以及386bsd发布时间的推迟,linus在Minix系统的基础下,创造了linux系统,并遵循GUN的gpl协定。

Multics

    1964年,由贝尔实验室,麻省理工学院及美国通用电气公司所共同参与研发,被设计在GE-645大型主机上。通过unix,几乎所有现在操作系统都深受Multics的影响。

    19669年,因Multics项目的工作过于缓慢,整个项目过于庞大,糅合了太多特性,最终澡裁撤。


UNIX

    Thompson在加入此计划不久,计划就终止了,但因为机器仍然保留在贝尔实验室,他继续在GE-645上开发软件,Thompson在GE-645上写出了一个仿真器,可以让一个文件系统与内存分页机制运作起来,他编写了一个Space Travel的游戏,但游戏在GECOS系统上面的表现还不如Multics系统,汤普森想要找到一个更好的解决方案,于是向贝尔实验室请求购买一台DEC-10大型机,以从事新系统的开发,大约需要12万美元。Thompson的请求被驳回,因为贝尔实验室刚刚放弃一个操作系统项目,不会再对花钱研制操作系统感兴趣。但是Thompson发现周围的部分有一台老旧且很少被使用的PDP-7小型机,同样可以达到目的。在丹尼斯 里奇的帮助下,汤普森用PDP-7的汇编语言重写了这个游戏,并使其在PDP-7上运行起来。这次经历加上Multics项目的经验,促使汤普森开始在PDP-7上研究如何开发系统。

    1969年,肯 汤普森提议在PDP-7上开发一个新的阶层式操作系统的计划,于是开发了一个壳层(shell)与一些驱动程序做出一个操作系统的雏形。在团队的合作下,Multics的许多功能都被采纳,重新实作,最终做出了一个分时多任务操作系统,成为第一个UNIX。因为Multics来自"MULTiplexed Information and Computing system"的缩写,在1970年,那部PDP-7却只能支持两个用户,彼得 纽曼戏称他的系统其实是“UNiplexed Information and Computer System”缩写为"UNICS",当第二版在PDP-11上运行的UNIX真正可以提供多人同时使用时,布莱恩 柯林汉提议讲它的名称改为UNIX。

    第一版是用PDP-7汇编语言编写的,一些应用是由B语言和汇编语言混合编写的,1971年汤普森和里奇共同发明了C语言,1973年,他们用C语言重写了UNIX,形成第三版UNIX。用C语言编写的UNIX代码简介紧凑,易读,易移植,易修改。为此后UNIX的发展奠定了坚实的基础。1974年,UNIX第一次出现在贝尔实验室以外。


BSD:Berkeley software Distribution


    1974年,第一个伯克利的UNIX系统被安装在PDP-11机器上,计算机科学系而后将其用作扩展研究。

    1977年,伯克利的研究生Bill Joy将程序整理到磁带上作为first Berkeley Software Distribution(1BSD)发行

    1978年,2BSD发布,比尔 乔伊写了两个新程序vi编辑器,以及C shell。

    1992年,AT&TZ的USL正式对BSD提起诉讼,这导致Net/2发布的中止。由于最后的判决悬而未决,这桩法律诉讼将BSD后裔的开发,特别是自由软件延迟了两年,这导致没有法律问题的linux内核获得极大的支持。


GUN


     在提linux之前,GUN是必须得提起的。

     GUN的创始人Richard stallman 1971年进入哈弗大学学习,同时受聘于麻省理工学院人工智能实验室,工作在一个只使用自由软件的小组中,成为一名职业黑客,stallman在AI是一名典型的黑客,是整个黑客文化的一份子。然后进入八十年代,黑客社群在软件工业商业化的强大压力下,日渐土崩瓦解,甚至连AI实验室也成立了symbolic公司,试图以专利软件来取代实验室中黑客文化的产物—可自由流通的软件。stallman对此感到气愤与无奈,对symbolic进行了一段时间的抗争。后于1983年9月27日发出最初的声明,1984年开始构建GUN工程

    1985年发表了著名的GUN宣言,正式宣布要开始进行一项宏伟的计划,创造一套完全自由的向下兼容unix的GUN操作系统

    1989年,他与一群律师起草了广为使用的GUN通用公共协议证书,创造了“copylift”的概念。同时,GUN计划中除了最关键的Hurd内核之外,其他绝大多数软件已经完成。


Minix


    因为AT&T的政策改变,在Version 7 Unix推出之后,发布新的使用许可协议,将UNIX源代码私有化,在大学中不再能使用UNIX源代码。荷兰阿姆斯特丹自由大学计算机科学系的教授,塔能鲍姆为了能在课堂上教授学生操作系统运作的实务细节,决定在不使用任何AT&T的源代码前提下,自行开发与UNIX兼容的操作系统,以避免版权上的争议。他以小型UNIX(mini-UNIX)之意,将它称为MINIX。当时,MINIX不允许被用作任何商业使用。

Linux

    1991年,Linus Torvalds在赫尔辛基大学上学时,对操作系统很好奇。他对MINIX只允许在教育上使用很不满。于是他便开始在MINIX上开发Linux内核,为MINIX写的软件也可以在Linux内核上使用。后来使用GUN软件代替MINIX的软件,因为使用从GUN系统来的源代码可以自由使用,这对Linux的发展是有益的。为了让Linux可以在商业上使用,林纳斯·托瓦兹决定更改他原来的协议(这个协议会限制商业使用),以GNU GPL协议来代替。之后许多开发者致力融合GNU元素到Linux中,做出一个有完整功能的、自由的操作系统。


    

 

原创文章,作者:M21-陕西-李贤,如若转载,请注明出处:http://www.178linux.com/50943

(0)
M21-陕西-李贤M21-陕西-李贤
上一篇 2016-10-14
下一篇 2016-10-14

相关推荐

  • nginx安装配置

    nginx安装配置 Nginx介绍 Engine X是一个高性能、高并发的HTTP和反向代理服务器,也是一个IMAP/POP3/SMTP服务器。由Igor Sysoev为俄罗斯访问量第二的Rambler.ru站点开发的,因它的稳定性、丰富的功能集、示例配置文件和低系统资源的消耗而闻名。 Nginx优点 高并发:Nginx 是一个很强大的高性能Web和反向代理…

    Linux干货 2016-11-08
  • N21 第二周练习

    ####1、Linux上的文件管理类命令都有哪些,其常用的使用方法及其相关示例演示。复制:cp   移动:mv    删除:rm   cp:copy,复制文件或目录</br>  cp [OPTION]… SOURCE… DIRECTORY…

    Linux干货 2016-07-22
  • shell脚本编程之运算

    一、数学运算   1、expr命令     此命令可以在命令行执行数学运算操作。     由于此命令使用时过于麻烦,所以不推荐使用。   2、方括号和双圆括号      $[ EXPRESSION ]      $((&…

    Linux干货 2015-12-31
  • Linux基本文本管理命令

    一.Linux上的文件管理命令都有哪些,其使用的方法及其相关演示1.cp命令:copy (文件复制功能)源文件,目标文件单源复制:cp [OPTION]…[-T] SOURCE DEST多源复制:cp [OPTION]…SOURCE…DIRECTORYcp [OPTION]… -T DIRECTORY SOURCE… 单源复制:cp [OPTION]…[-T…

    2017-09-20
  • M20-1 8月3号作业

    1、三种权限rwx对文件和目录的不同意义 2、umask和acl mask 的区别和联系 3、三种特殊权限的应用场景和作用 4、设置user1,使之新建文件权限为rw——- 5、设置/testdir/f1的权限,使user1用户不可以读写执行,g1组可以读写 /testdir/dir的权限,使新建文件自动具有acl权限:user1:r…

    Linux干货 2016-08-05
  • 脚本小练习

    1、编写脚本/root/bin/systeminfo.sh,显示当前主机系统信息,包括主机名,IPv4地址,操作系统版本,内核版本,CPU型号,内存大小,硬盘大小。                            …

    Linux干货 2016-08-15