Unix与linux的发展历程以及linux的发行版

Unix的发展与诞生是有源头的,早期的时候,为了生产处多任务操作系统,Bell,MIT,GE这三个单位合作要制作一款多任务操作系统,也就是multitasks,这款操作系统后来是研制成功了,但是往后的目标越来越大也越来越模糊,最终这三家单位也就相继退出了这个项目。

bell实验室的Ken Thompson因为之前在multitasks运行过一款游戏,space travel,但是由于退出了这个项目,因此无法再继续使用了,于是他利用办公室的一台DEC生产的小型机,在这个小型机上写了一个操作系统,并运行了他的游戏,这款系统就是UNIX,而早期这款系统是用汇编写的,移植起来很不方便,于是在接下来的日子里他与公司的Dennis一起用C语言改写了这个UNIX,并且发布到美国的计算机论文上,为大家所熟知,各个高校组织纷纷索要UNIX作为研究之用,而此时的bell属于AT&T,AT&T只能销售电话电报业务,因此Unix被无偿发给了各高校,各高校也纷纷投入了研究,并经研究成果回馈给了Bell实验室,使得Unix有了一个较为稳定的版本,叫system V7.

与此同时加州伯克利分校的bill joy也在其所创立的组织中制作了BSD操作系统,并且后来也整合了美国国防部的TCP/IP协议。

后来AT&T解散了,Bell独立了,Bell实验室开始将UNIX转为商业,并开始与BSD等打官司。这种商业化的运作模式激怒了Richard stallman,他发起了GNU运动,并起草了GPL协定,创建了一个与商业软件公司对立的自由软件组织,这个组织蓬勃发展,制作了很多不错的软件,例如GCC,VI,但是它有个致命的弱点,就是它的软件是运行在UNIX之上的,呵呵。恰逢此时,芬兰大学的linus torvalds 意外地制造出了很小的linux kernel,并将之公布在网上,遵循GPL,于是全世界的程序员共同努力使这个linux越来越强大,加上GNU组织的努力,最终linux做大了。

这就是Unix,linux大概的发展历史,当然中间也穿插了微软的Windows,不再细究。

虽然linux发展的很快,但是它网上发布的通常是源码,计算机只能识别二进制,而且编译对很多人是头痛的事,因此,有些公司将这些源代码连同一些工具编译成二进制并打包向外出售,这些即使linux的发行版,出售的主要是服务,因此linux才逐渐为各个公司所接受,也使linux更加普及开来。

由于编译环境的不同,linux的发行版有书百种之多,但是主要分为以下几种:

debian

    二次发行:Ubuntu

        三次发行:mint

    二次发行:knopix

slackware

    二次发行:S.u.S.E

        三次发行:SLES

        三次发行:openSUSE

RedHat:

    二次发行版:redhat enterprise linux:RHEL

        三次发行版:centos:community enterprise linux

    二次发行版:Fedora core:redhat桌面业务

Gentoo

Archlinux

广义的linux=linux kernel+ GNU工具

发行版无非就是拿出linux kernel 与一些外围工具编译成二进制程序而已。

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

(1)
N24_强仔N24_强仔
上一篇 2016-10-30 17:22
下一篇 2016-10-30 18:40

相关推荐

  • 构建一个高可用的Nginx集群

    实验目的: 构建一个高可用的Nginx集群。 实验要求: 1、基于nat结构实现; 2、实现高可用; 实验拓扑图形: 实验步骤: 1、  按图配置各个网卡地址; 2、  设置Nginx主机(下面带#的部分为从所需要的配置,其他则一样) Yum install httpd nginx Vim /etc/httpd/conf/httpd.co…

    2017-05-15
  • Sed及Vim作业

      Sed及Vim作业题:     1、删除/etc/grub2.conf文件中所有以空白开头的行行首的空白字符    [root@localhost 7 ~]# sed -r  's/^[[:space:]]…

    Linux干货 2016-08-09
  • Linux终端类型

    适用对象:本文适用于初学Linux以及有志于学习Linux的朋友们。   一、         什么是终端 计算机体系中,终端主要是指与计算机连接,并可以与用户(人类)进行交互的设备。 二、      &nbs…

    Linux干货 2016-10-14
  • 马哥教育网络班22期+第7周课程练习

    1、创建一个10G分区,并格式为ext4文件系统; [root@localhost ~]# fdisk /dev/sda 命令(输入 m 获取帮助):n All primary partitions are in use 添加逻辑分区 5 起始&nb…

    Linux干货 2016-10-09
  • Linux系统上获取命令的帮助信息

    获取命令的使用帮助: 内部命令:help COMMAND   #针对内检命令 外部命令: (1) 命令自带简要格式的使用帮助      COMMAND –help (2) 使用手册:manual  [root@localhost /]# ls /usr/share/man   #记住这个…

    Linux干货 2016-08-15
  • 初学Linux之标准 I/O 和管道

    前面我们已经了解了文件系统的部分内容,我们可以通过 ls 命令让当前目录下的内容都显示在屏幕上,也可以使用 pwd 命令,显示当前的所在的目录路径。但是我们输入的是命令,本身并没有输入“显示”这类命令和要求,但是系统就自动的在屏幕上输出我们命令指定的信息。由此可以想象到,系统自身有默认的一种输出方式,同时,有输出就有输入,当输入的和系统无关,系统也会自动提示错误,以上就是我们接下来要了解的基础内容——标准 I/O。具体的涉及内容包括:三种 I/O 设备,把 I/O 重定向入文件,tr 命令的使用,使用管道链接命令。

    2017-12-02

评论列表(1条)

  • 马哥教育
    马哥教育 2016-11-02 17:26

    加入了一些自己的理解,不错,希望可以将这段发展史熟知,加油,加油