zoukankan      html  css  js  c++  java
  • 1.1 从UNIX到Linux的发展历程

    MIT的CTSS:第一个分时操作系统

    ◼ Multics系统(Multiplexed Information and Computing System)

      ⚫ 1965年AT&T,MIT和GE的合作项目

      ⚫ 安装在大型主机上的多用户、交互式操作系统,支持300位以上的用户联机 使用

      ⚫ 这个系统不但开发周期长,成本高,而且庞大、缓慢,市场前景不被看好, 最终宣告失败

    ◼ 曾经参与 Muitics 的贝尔实验室的成员肯·汤普森(Ken Thompson) 由于自己工作上的需求,

       开发了一套主要用于文件存取的小型操作 系统Uniplexed Information and Computing System(UNICS)

    ◼ 以 DEC 公司的计算机 PDP-7 为硬件基准,采用汇编语言开发

    ◼ 源于 Multics 系统,做了大幅度的简化,主要包括文件子系统和进 程子系统 (其主要架构被UNIX/Linux沿用至今)

    ◼ 1973 年,贝尔实验室的肯·汤普森、丹尼斯·利奇(Dennis Ritchie) 等人为了提升UNICS系统的性能与兼容

      性,采用高级语言对其进行 重构,并确定该操作系统名称为UNIX,这就是最早的UNIX 操作 系统(

      相对于Multics ,UNIX 具有单一的意思)

    ◼ C语言是UNIX的副产品!!

    ◼ 1974年,肯·汤普森、丹尼斯·利奇发表了著名论文“The UNIX Time Sharing System” ,让世人了解UNIX。

      并向外发行免费拷贝, 开放源代码

    ◼ 由于UNIX是由工程师所主导开发的,而且使用者也大多是工程师, 因此造成了UNIX 系统接

      口(库函数与API)较难被一般使用者接 受的情况

    ◼AT&T贝尔实验室

      ⚫版本排号:第1-7版,System Ⅱ,Ⅲ,Ⅳ,Ⅴ,例如:UNIX System V Release 4.2 (SVR4.2)

      ⚫现今的SCO UNIX ◼ 加州大学伯克利分校

      ⚫计算机系统研究小组(CSRG)的BSD UNIX(Berkeley Software Distributions)

      ⚫较有影响的版本:4.3BSD,FreeBSD

      ⚫工作站上的UNIX一般属于这一流派
        重要的UNIX分支:BSD UNIX
    ◼ 伯克利计算机系统研究小组对UNIX作出了许多重 要性的贡献

      ⚫Vi编辑器

      ⚫虚拟存储

      ⚫TCP/IP协议栈

      ⚫快速文件系统FFS

      ⚫可靠信号

      ⚫套接字

      ⚫……

    ◼80年代UNIX版本的剧增以及各种UNIX版本之间的差 别不断扩大导致了以美国政府为代表许多用户要求对

      其标准化,以增强各种应用程序在这些UNIX操作系统 之间的可移植性

    ◼重要的UNIX标准包括:ANSI C、IEEE POSIX等

    ◼UNIX标准只是对应用程序接口进行统一(内部实现机 制则留给操作系统开发者自行实现)
    UNIX的标准化
      ◼ANSI C

        ⚫ANSI C是美国国家标准协会(ANSI)于1983年发布的C语言标准

        ⚫1989年,此标准被采纳为国际标准ISO/IEC 9899:1990

        ⚫ISO C标准现旨在提供应用程序的可移植性,使其能适应于不同的操作系统 ,而不仅仅是UNIX操作系统

        ◼POSIX

          ⚫1986年,IEEE制定了IEEE P1003标准,这套标准被称为POSIX(Potable Operating System Interface)

          ⚫POSIX定义了一整套的应用程序接口,包括系统调用、库函数、公共命令

          ⚫POSIX标准希望在源代码级别保证应用程序可移植性
    UNIX的商业化
      ◼1977年到1982年,AT&T促使UNIX走上商业 化道路(收回版权,并且不公开源代码)

      ◼1982年SUN公司发布SunOS,这是基于 4.2BSD的UNIX变体, Solaris版本

      ◼微软和SCO联合发布了XENIX
      ◼ UNIX的商业化让许多 UNIX爱好者感到担心,包括了大名鼎鼎的理查 德·斯托曼先生(Richard M. Stallman )
      ◼ Stallman在 1983 年发起了 GNU计划,GNU是“GNU‘s Not Unix”的递归 缩写,其目标是创建一个完全自由的类Unix操作系统,

        GNU计划也开发 了大批其他的自由软件,例如 Emacs 、Glibc、GCC、BASH等

      ◼ 1985年Stallman又创立了自由软件基金会(Free Software Foundation) 来为GNU计划提供技术、法律以及财政支持
      GNU计划与Free Software Foundation
      ◼自由软件并不是指“免费”的,而是指具有“自由度”的软件。什么是 自由度呢?也就是使用者运行、复制、发布、研究、修改和改进该软件 的自由

      ◼GNU通用公共许可协议(GNU GPL)是一个广泛被使用的自由软件许 可协议条款,最初由Stallman为GNU计划而撰写,GPL授予程序接受人 以下权利,或称“自由”:

        ⚫以任何目的运行此程序的自由;

        ⚫再发行复制件的自由;

        ⚫改进此程序,并公开发布改进的自由
    Linux的诞生
      ◼1984年,因为UNIX规定“不能对学生提供源码”,安德鲁·斯图尔 特·塔能鲍姆( Andrew Stuart Tanenbaum )自己编写了兼容于UNIX 的Minix系统,用于教学

      ◼1991年,芬兰郝尔辛基大学研究生林纳斯·托瓦兹 (Linus Torvalds)受Minix系统影响,开发了针对386机器的Linux内核

      ◼1991年Linux的第一个版本公开发行时,GNU计划已经完成除了操作 系统内核之外的大部分软件(其中包括了shell程序,C语言程序库以 及C语言编译器)。

        Linus Torvalds及其他早期Linux开发人员加入了 这些工具,而完成了Linux操作系统

      ◼Linux是在GNU通用公共许可证下发行,它却不是GNU计划的一部分
    Linux与UNIX的关系
      ◼ UNIX是可以应用从大型计算机到普通PC机等多种不同的平台上,是应用面 最广、影响力最大的操作系统。

      ◼ Linux是一种外观和性能与UNIX相同或更好的操作系统,但Linux不源于任 何版本的UNIX的源代码,是一个类似于UNIX的产品

      ◼ Linux遵循POSIX规范,成功的模仿了UNIX系统和功能,更具体地讲, Linux兼容于System V以及BSD UNIX:

      ◼ 对于System V,应用程序源代码在Linux下重新编译之后就可以运行

      ◼ 对于BSD UNIX,应用程序可执行文件可以直接在Linux环境下运行。

  • 相关阅读:
    阿里云服务器购买后的配置指南
    第一阶段总结
    RDD的checkpoint机制和键值对RDD数据分区
    广播变量与累加器
    Spark的监控
    Spark和MR的区别
    hadoop离线项目处理流程
    Flume(一)
    Sparkcore高级应用3
    SparkCore高级应用2(Spark on yarn)
  • 原文地址:https://www.cnblogs.com/mayZhou/p/10788191.html
Copyright © 2011-2022 走看看