zoukankan      html  css  js  c++  java
  • linux发展历史

    一、开篇

    1.1 操作系统

      我们知道一台计算机能够使用,离开不了两部分,硬件软件,一台个人pc,它硬件:cpu 、主板、内存、硬盘、等待组成,如果只有这些那,你还是不能使用这台电脑,只有你在把这台电脑组装完成后装上 一个操作系统 才能够使用,我们一般接触最多的操作系统就是 windows 和 苹果的 mac OS,那一个软件 他必须有服务器,而服务器其实也是一台性能很高的电脑,那这台电脑,必须也要有操作系统才能使用。


    1.2 操作系统的作用

      是现代计算机系统中 最基本和最重要 的系统软件
      是 配置在计算机硬件上的第一层软件,是对硬件系统的首次扩展
      主要作用是管理好硬件设备,并为用户和应用程序提供一个简单的接口,以便于使用
      而其他的诸如编译程序、数据库管理系统,以及大量的应用软件,都直接依赖于操作系统的支持

    1.3 不同应用领域的主流操作系统

      桌面操作系统:windows(用户群体大)、macOS(小资)、linux(一定技术,应用软件少)
      服务器操作系统:linux(安全、稳定、免费)、Windows Server(占有低,收费)
      嵌入式操作系统:linux(垄断唯一)
      移动设备操作系统:Android(穿棉袄的linux)、ios(有个性,不好驾驭)


    下面我们就开始学习 linux 看看他的内在


    二、linux

    2.1 linux 发展历史

    了解过去,我们才能知其然,更知所以然。总结过去,我们才会知道明天该何去何从。在时间的滚轮中,许许多多的东西就像流星一样一闪而逝,而有些东西却能经受着时间的考验散发着经久的魅力,让人津津乐道、流传至今。要知道明天怎么去选择、怎么去做,不是盲目地跟从今天各种各样琳琅满目前沿技术,而应该是去 - 认认真真地了解和回顾历史。

    在我们了解linux之前,我们要先了解一下 unix

    1965 年之前的时候,电脑并不像现在一样普遍,它可不是一般人能碰的起的,除非是军事或者学院的研究机构,而且当时大型主机至多能提供30台终端(30个键盘、显示器),连接一台电脑
    image
    为了解决数量不够用的问题

    1965年左后由 贝尔实验室 加入了 麻省理工学院 以及 通用电气 合作的计划 —— 该计划要建立一套 多使用者(multi-user)、多任务(multi-processor)、多层次(multi-level) 的 MULTICS 操作系统,想让大型主机支持 300 台终端
    1969年前后这个项目进度缓慢,资金短缺,贝尔实验室退出了研究
    1969年从这个项目中退出的 Ken Thompson 当时在实验室无聊时,为了让一台空闲的电脑上能够运行 "星际旅行(Space Travel)" 游行,在 8 月份左右趁着其妻子探亲的时间,用了 1 个月的时间,使用汇编写出了 Unix 操作系统的原型
    1970年Brian Kernighan戏称其系统为"UNiplexed Information and Computing Service"(UNICS)

    1970年Ken Thompson尝试用Fortran重写UNIX失败后整合BCPL成B语言
    1971年Ken Thompson使用B语言在PDP-11/24上编写了第一个正式版UNIX
    1972年Dennis M.Ritchie为了能早点玩上游戏加入了项目
    1973年Dennis M.Ritchie对B语言进行改造创造了C语言
    1973年Ken Thompson和Dennis M.Ritchie使用C语言编写了第三个UNIX版本

    1977年SUN创始人Bill Joy获得UNIX6核心原始代码对其进行改造后发布为BSD(Berkeley Software Distribution)版本,其他主要UNIX版本也在此时形成
    1979年UNIX7开始AT&T收回UNIX版权并不再开放新版UNIX源代码
    1983年Richard Matthew Stallman发起GUN(GNU's Not UNIX)计划
    1984年由于不能再使用UNIX源代码荷兰Vrije大学的Andrew S. Tanenbaum教授仿照UNIX着手开发Minix并于1987年完成
    1991年Linus Benedict Torvalds仿造Minix开发了Linux,并将Linux0.02发布到网络上

    1992年GUN放弃Hurd改以Linux为其内核(Hurd项目至今仍存在)
    1993年AT&T将UNIX所有版权买给Novell,IBM等由于早期授权不受影响
    1995年Bob Young创建RedHat
    1995年Novell将Unix卖给SCO
    21世纪初受Windows和Linux两面夹击下江河日下的SCO,在Windows的挑唆下控告IBM侵犯其源代码并意指Linux阵营
    2007年Novell在各大公司的支持下状告SCO夺回UNIX版权

    苹果和UNIX
    1984年System 1发布直接来源是BSD,该系统首次实现GUI
    1985年9月乔布斯被迫离开苹果
    1988年苹果起诉Windows抄袭System界面
    1996年乔布斯回归苹果
    1997年乔布斯与盖茨合解
    1997年System 7.6开始更名为Mac OS
    2001年重新设计的Mac OS并命名为OS X
    2007年基于OS X的ios随iphone一同发布

    微软和UNIX
    1975年盖茨从哈佛退学创立微软
    1979年微软从AT&T获取授权并开发了运行于intel平台的Xenix
    1980年微软买下QDOS改名MSDOS应付了与IBM的合作协议
    1985年6月看到操作系统的潜力的IBM欲借与微软共同开发OS/2之名将操作系统把控回自己手中
    1985年11月基于MSDOS的Windows1.0发布
    1987年微软将Xenix出售给SCO应付IBM的同时发力Windows3.0
    1987年11月微软发布Windows2.0
    1990年具有使用价值的Windows3.0发布

    Android和UNIX
    2002年Andy Rubin创立Android公司,Android系统基于Linux内核
    2005年google收购Android公司
    2008年Android1.1发布

    Unix 家谱
    image


    两尊大神 膜拜吧
    image

    回望历史:
    因为 AT&T(通用电气) 的政策改变,在 Version 7 Unix 推出之后,发布新的使用条款,将 UNIX 源代码私有化,在大学中不再能使用 UNIX 源代码
    Andrew S. Tanenbaum(塔能鲍姆) 教授为了能 在课堂上教授学生操作系统运作的细节,决定在不使用任何 AT&T 的源代码前提下,自行开发与 UNIX 兼容的操作系统,以避免版权上的争议 ,以 小型 UNIX(mini-UNIX)之意,将它称为 MINIX

    linux 诞生
    image

    1991 年 林纳斯(Linus) 就读于赫尔辛基大学期间,对 Unix 产生浓厚兴趣,尝试着在Minix 上做一些开发工作
    因为 Minix 只是教学使用,因此功能并不强,林纳斯 经常要用他的终端 仿真器(Terminal Emulator) 去访问大学主机上的新闻组和邮件,为了方便读写和下载文件,他自己编写了磁盘驱动程序和文件系统,这些在后来成为了 Linux 第一个内核的雏形,当时,他年仅 21 岁!
    林纳斯 利用 GNU 的 bash 当做开发环境,gcc 当做编译工具,编写了 Linux 内核,一开始 Linux 并不能兼容 Unix
    即 Unix 上跑的应用程序不能在 Linux 上跑,即应用程序与内核之间的接口不一致。
    一开始 Linux 只适用于 386,后来经过全世界的网友的帮助,最终能够兼容多种硬件

    image

    这尊大神


    2.2 Linux 内核及发行版

    内核(kernel)是系统的心脏,是运行程序和管理像磁盘和打印机等硬件设备的核心程序,它提供了一个在裸设备与应用程序间的抽象层
    Linux 内核版本又分为 稳定版 和 开发版,两种版本是相互关联,相互循环
    稳定版:具有工业级强度,可以广泛地应用和部署。新的稳定版相对于较旧的只是修正一些 bug 或加入一些新的驱动程序
    开发版:由于要试验各种解决方案,所以变化很快
    内核源码网址:http://www.kernel.org
    所有来自全世界的对 Linux 源码的修改最终都会汇总到这个网站,由 Linus 领导的开源社区对其进行甄别和修改最终决定是否进入到 Linux 主线内核源码中


    2.3 linux 发行版

    Linux 发行版(也被叫做 GNU/Linux 发行版)通常包含了包括桌面环境、办公套件、媒体播放器、数据库等应用软件。

    目前市面上较知名的发行版有:Ubuntu、RedHat、CentOS、Debian、Fedora、SuSE、OpenSUSE、Arch Linux、SolusOS 等。
    image


    linux 特点
      1、免费/开源
      2、支持多线程/多用户
      3、安全、稳定性高
      4、对内存、文件管理机制优越
      5、可做嵌入式开发
      6、所需运行内存极少(4M)

  • 相关阅读:
    pydata-book-利用python进行数据分析-github
    利用Python进行数据分析-github
    stanford提供的数据库
    转:python 实现GUI(图形用户界面)编程
    PyGObject的使用手册
    python-install-package-C++编译器问题---06
    git 命令大全
    redis复习
    Python 十进制转换为二进制 高位补零
    cURL可以做的10件事
  • 原文地址:https://www.cnblogs.com/niunai/p/15100070.html
Copyright © 2011-2022 走看看