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

相关推荐

  • 文本处理工具及正则表达式

    一、*各种文本处理工具 1.1抽取文本的工具 1.1.1 cat、less查看文本内容    more、less和cat 【选项】 【文件】 cat  –n ,-d列行 ,-A:显示所有看不见的符号(控制符),     -E:显示结尾$ ;…

    Linux干货 2016-11-23
  • 进程和优先级

         什么是进程?我们先来了解一下进程的概念:我们知道操作系统最核心的概念就是进程。进程简单来说就是在操作系统中运行的程序,它是操作系统资源管理的最小单位。但是进程是一个动态的实体,它是程序的一次执行过程。进程和程序的区别在于:进程是动态的,程序是静态的,进程是运行中的程序,而程序是一些保存在硬盘上的可执行代码。    当多个任务要执行时怎么办呢?先执行…

    2017-09-09
  • RPM与YUM命令异同详解

    RPM和YUM都是用来安装程序的工具,但是它们有太多相似的用法以至于有事很难分清应该哪个那就来一起详细的了解一下他们的功能及用法,以及他们的相同以及不同之处。 RPM 软件包管理器功能:安装,卸载,升级,查询,校验,打包,数据库管理RPM在安装时不能处理程序之间复杂的依赖关系RPM可以验证软件包来源的合法性、完整性。常用选项: -i:表示安装。(常用:-iv…

    2017-06-18
  • CentOS计划任务详解

    一、计划任务应用场景:        需要每天对服务器上的数据进行备份,但是白天服务器的访问量较大,服务器承受着较大的压力,备份任务只能在夜晚服务器较空闲时才能进行。或者需要临时在某时间点执行一个任务等,都需要用到计划任务的功能。 二、计划任务分类:    &…

    Linux干货 2016-09-09
  • linux安全机制与加密工具使用

    一、加密需要和安全机制 1.不加密流量的易受攻击性 密码/数据嗅探 数据操作 验证操作 相当于邮寄明信片 2.不安全的传统协议 telnet、FTP、POP3等等;不安全密码http、sendmail、NFS等等;不安全信息Ldap、NIS、rsh等等;不安全验证 3.NIST定义的安全属性:美国国家标准与技术研究院 1) 保密性:  &…

    Linux干货 2016-09-25
  • M20 – 1- 第三周(1):课堂练习与作业

    课堂练习: 1、创建用户gentoo,附加组为bin和root,默认shell为/bin/csh,注释信息为"Gentoo Distribution" [root@localhost ~]# useradd -G bin,root -s /bin/csh -c&nbsp…

    Linux干货 2016-08-08

评论列表(1条)

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

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