简述Linux那些年–发展史

Linux发展史

作者:任飞鹏          日期:2016-10-13

Linux简介:

Linux同Windows一样,都是一套OS(操作系统)。Linux是一套开源的类Unix操作系统,可以免费使用和自由传播。是一个基于POSIX和UNIX的多用户、多任务、支持多线程和多CPU的操作系统。Linux继承了Unix以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。

Linux诞生于1991年10月5日(第一次正式对外公布)。严格意义上来说,Linux这个词本身只表示Linux内核,但实际上人们已经习惯了用Linux来形容整个基于Linux内核,并且使用GNU 工程各种工具和数据库的操作系统。发展至今,Linux已经发行了许多不同的版本,但是他们都是用了Linux内核。

鉴于Linux的稳定性能好,Linux被大量用于各种计算机硬件设备中,手机、平板电脑、路由器、视频游戏控制台、台式计算机、大型机和超级计算机,甚至可以说所有的电子产品都与Linux有着千丝万缕的关系。

Unix起源:

说到Linux就不得不提一提Unix。既然我们说到,Linux是一套类Unix的操作系统,所以不难看出二者之间的关系,可以说Linux起源于Unix。而谈到Unix就有趣多了。

在计算机发展的初期,计算机都是大型机Mainframe,计算能力很强,但操作系统几近于无,是所谓的批处理系统,单道批处理,用户独占。所以当时急需一套多任务、多用户的操作系统。为此1964年由贝尔实验室、麻省理工学院及美国通用电气公司共同发起成立了Multics项目。由三所机构共同参与研发一套安装在大型主机上的多人多任务的操作系统。很不幸,由于Multics目标太过于庞大,大家做了几年后都不知道什么了,GE、Bell先后退出了该项目,项目也就以失败告终。

不过,当时为了Multics项目,Bell实验室招了一大批年轻人,其中一个叫Ken Thompson的年轻人在此期间研发了一款游戏Space Travel,当然游戏也是基于Multics的。但是项目失败后,实验室便不再给Ken提供用于开发Multics的PDP-11计算机。偶然间,ken在实验发现了一台闲置很久的PDP-7,既然没人用,Ken就拿来研究游戏了。可是游戏需要运行在Multics平台上,所以Ken就借鉴Multics的思想并将其简化,写出了一个文件系统FileSystem。然后把Space Travel移植到PDP-7上,并向同事兜售自己的游戏。可最后却发现别人对他写的游戏兴趣缺缺,反而对他的文件系统很感兴趣。而当时的Bell实验室是不能出售任何与电话、电报无关的东西的,既然这么多人需要,那就需要无偿的给他们,于是,Ken接下来的相当长的一段时间内开始给他人免费提供自己的系统。后来贝尔实验室来了一个当时打印机排版的项目, Ken立刻将项目拦了下来,这样便有了自己的PDP-11。

    不得不说Ken写的那个操作系统实在太好用了,所以在 Bell 研究室内部广为流传,并且多次经过改版。到了1973年,Bell研究室的Dennis Ritchie 等人为了让这个系统的执行效能更佳化,所以使用编译效能更好的 C 语言将原有的1969年的那个系统核心大幅度的改写,并且将操作系统命名为Unics,短小、精悍之类的意思,之后大家慢慢的将其读为unix。最后,不得不说,游戏成就了Ken Thompson。

http://pic.baike.soso.com/p/20131203/20131203163458-314702683.jpg

Ken Thompson和Dennis Ritchie

Linux的诞生:

后来由于某些原因又发生了BSD(Berkeley System Distrubustion)和Bell十年的版权之争。在此期间比尔盖茨成立Microsoft,购买Unix后将其包装改名为Xenix,大赚了一笔。后来又通过与IBM合作,在PC机上预装自己的DOS系统大量销售,大赚特赚了一笔。后来机缘巧合之下,比尔盖茨从乔布斯那里“偷来”图形界面,研发了Windows造作系统,至此Microsoft迅速发展至今。

终于,Novell收购Bell,十年官司和解。至此,如果要学习Unix,需要花费4万美元购买操作系统,学生学习Unix将变得很难。为此一个欧洲教授Andrew自己模仿Unix写了Minix操作系统,用于教学,但Minix还是不能移植到其他主机上,而世界各地的计算机爱好者对此很感兴趣,希望将自己的代码贡献给Minix,以方便Minx的移植,但是却被该教授固执的拒绝了。

而此时出生于芬兰赫尔辛基市Linus Benedict Torvalds,在其二十岁生日的时候祖父给他买了一台80386,可是当时Unix商业化了,而Minix却是移植性问题,于是自己也写了一个操作系统,Linux为了跟Minix显示区别,Linux将操作系统放到网上,方便大家的应用,是开源的,也就是说,用户可以自己定制,想怎么该就怎么改,而此时0.01版本。1991年的10月5日(这是第一次正式向外公布的时间),之后凭借Internet,并经过全世界各地的计算机爱好者为其贡献自己的代码Linux开始日益丰满起来。Linus Benedict Torvalds后来也被称为Linux之父。

http://h.hiphotos.baidu.com/baike/c0%3Dbaike116%2C5%2C5%2C116%2C38/sign=13e38289349b033b3885f48874a75db6/5882b2b7d0a20cf4f664615276094b36adaf9943.jpg

Linus Benedict Torvalds

GUN是什么:

GNU划是“GNU is Not Unix”的缩写,又称革奴计划,是由Richard Stallman在1983年9月27日公开发起的。它的目标是创建一套完全自由的操作系统。但GNU的内核尚未完成,所以GNU使用Linux作为其内核。GNU软件是GNU计划开发的软件,该软件可以充分利用计算机的硬件能力,比Unix中的同样的软件功能更强,因此非常流行,这些软件在GNU通用公共许可的保护下允许任何人免费使用和传播(但必须同时提供源程序),因此被大量的用在其他的Unix中。GNU和Linux以这样的方式组合成为 GNU/Linux操作系统,所以我们现在所说的Linux操作系统实际上是Linux内核+GUN软件组成的。

https://upload.wikimedia.org/wikipedia/commons/thumb/7/7b/Richard_Stallman_-_F%C3%AAte_de_l%27Humanit%C3%A9_2014_-_010.jpg/220px-Richard_Stallman_-_F%C3%AAte_de_l%27Humanit%C3%A9_2014_-_010.jpg

 

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

(1)
HulkHulk
上一篇 2016-10-19
下一篇 2016-10-19

相关推荐

  • bash的重定向

    一、简介         bash的数据流重定向(redirect)是将程序的执结果重新定向到另一文件或者设备。或者把一文件重定向给一程序作为数据来源。默认情况下,命令的执行结果显示在屏幕上。文件系统中,分为:标准输入,标准输出,错误输出。 二、用法   &n…

    Linux干货 2015-08-11
  • 逻辑卷管理

    1.相关命令:lsblk、fdisk、gdisk、parted、mkfs、mke2fs、blkid、e2label、findfs、tune2fs、dumpe2fs、fsck、e2fsck、mount、swapon、swapoff、mkisofs、wodim、free、df、du、dd。 2.列出块设备:lsblk    &nbs…

    Linux干货 2016-09-01
  • Linux系统启动流程与内管管理(上)

    在讲linux系统启动流程之前,来讲讲linux的组成,这样能能帮助我们深入了解系统的启动流程,废话不多说直接上系统启动流程图 linux组成 linux:kernel+rootfs kenrel的作用:进程管理、内存管理、网络管理、驱动程序、文件系统、安全管理等   rootfs:程序和glibc 库:函数结合,function,调用接口(头文件…

    系统运维 2016-09-14
  • 创建私有CA

      什么是CA   CA(Certificate Authority)证书颁发机构主要负责证书的颁发、管理以及归档和吊销。证书内包含了拥有证书者的姓名、地址、电子邮件帐号、公钥、证书有效期、发放证书的CA、CA的数字签名等信息。证书主要有三大功能:加密、签名、身份验证。 搭建私有CA 一、搭建CA服务器 1、生成密钥 ( ):表示此命令在子进程中运…

    Linux干货 2017-02-07
  • 实验:配置静态路由1

    实验:配置静态路由1 IP地址规划如下: 注意,环境准备: 1、MAC地址不要有冲突,如果是复制的虚拟机,对于centos6需删除网卡定义文件rm -f /etc/udev/rules.d/70-persistent-net.rules 2、清空防火墙iptables -F(查看:iptables -vnL) 3、启用IP转发功能:echo 1 > /…

    2017-03-26
  • vsftpd

    vsftpd:     程序环境:         配置文件:/etc/vsftpd/vsftpd.conf         主程序:/usr/sbin/vsf…

    Linux干货 2016-12-05