Linux 入门之 历史与现状

  Linux是一个计算机的操作系统,与windows类似,是一款系统软件。操作系统首先是一个计算机程序,使用计算机语言开发,比如C语言、VC语言。是计算机硬件和应用软件的桥梁。

Unix起源

  上个世纪六十年代,那个计算机还没有很普及,只有少数人才能使用,而且当时的计算机系统都是批处理的。unix最早由Ken Thompson(肯.汤普森)开发,使用汇编语言开发,后来采用B语言开发,最后作者 Ken Thompson和Dennis Ritchie(丹尼斯.里奇)为了再次改进系统,重新写了一门计算机语言(主要贡献是Dennis Ritchie),就是大名鼎鼎的C语言。

  从早期的UNIX系统文档和内容中可以清晰的看出,UNIX的发展是一个免费的、无私的、完全致力于将UNIX变的更优秀的过程。这个过程导致了代码的共享(不管是在贝尔实验室内部还是外部)从而使高质量的UNIX操作系统走向了快速的发展之路。

  因为美国担心已经垄断了电话行业的AT&T公司再次垄断计算机行业,AT&T使被禁止出手计算机的。因为AT&T在资产分解之前被严格限制直接出售计算机给消费者,所以UNIX源代码被授权给了大学,只是象征性地收取一定费用。

  20世纪70年代,它逐步盛行,这期间,又产生了一个比较重要的分支,就是大约1977年诞生的BSD(Berkeley Software Distribution)系统,从BSD系统开始,各大厂商业公司开始了根据自身公司的硬件架构,并以BSD系统为基础进行Unix系统的研发,从而产生了各种版本的Uinx系统,例如:SUN公司的Solaris,IBM公司的AIX,HP公司的HP UNIX等。

  70年代中后期,由于各厂商及商业公司开发的Unix 及内置软件都是针对自己公司特定硬件的,因此在其他公司的硬件上基本上无法直接运行,面且当时没有人对开发基于X86架构CPU 的系统感兴趣。另外,70 年代末,Unix又面临了突如其来的被AT&T 回收版权的重大问题,特别是要求禁止对学生群体提供Unix 系统源代码,AT&T收回了版权,并且不再开源。这样的问题一度引起了当时Unix业界的恐慌,也因此产生了商业纠纷。

  如果想继续使用就需要购买授权,一份授权4万美元在八十年代,自由软件之父 理查德.斯托曼发起了自由软件运动,吹起了共产主义的号角(发起了GUN运动),并发布了软件界的共产主义宣言(GPL协议),并且这一运动得到了很多人的认同。GUN的定义是一个递归缩写,就是GUN IS NOT UNIX。就是说Unix是流氓,我不是。

理查德.斯托曼

  所谓自由软件自由就是指:自由使用、自由学习和修改、自由分发、自由创建衍生版。

  1985年GNU理查德·斯托曼又创立了自由软件基金会(Free Software Foundation)来为GNU计划提供技术、法律以及财政支持

  到了1990年,GNU计划已经开发出的软件包括了一个功能强大的文字编辑器Emacs、C语言编译器GCC以及大部分UNIX系统的程序库和工具。唯一依然没有完成的重要组件,就是操作系统的内核.有意思的是,而那个时候Linux还没有诞生呢 ,所以Stallman宝宝心里苦啊,就在大家逐渐失去信心的时候,1991年Linus Torvalds带着他的Linux闪亮登场了,也给GUN运动画了一个完美的句号。

Linux诞生

  1991年,Linus Torvalds,一个芬兰赫尔辛基大学的学生,为了能在家里的PC机上使用与学校一样的操作系统,开始了编写类似UNIX内核的工作。那是,linus使用的是MINIX,但是他希望能超过MINIX的标准。

Linus Torvalds

  Linus Torvalds在开始其Linux 操作系统的设计时,他的目的只不过是想看一看Intel 386存储 管理硬件是怎样工作的,他也没有想到这一举动会在计算机界 产生如此重大的影响。他的设计进展得很顺利,只花了几个月时间就在一台Intel 386微机上完成了一个类似于Unix的操作系统, 这就是最早的Linux版本。

  1991年底,Linus Torvalds首次在Internet 上发布了基于Intel 386体系结构的Linux源代码,从此以后,奇迹开始发生了。由于Linux具有结构清晰、功能简捷等特点,许多大专院校的学生和科研机构的研究人员纷纷把它作为学习和研究的对象。他们在更正原有Linux版本中操作的同时,也不断地为Linux增加新的功能。在众多热心者的努力下,Linux逐渐成为一个稳定可靠、功能完善的操作系统。

  1994年3月,Linux1.0发布,代码量17万行,当时是按照完全自由免费的协议发布,随后正式采用GPL协议。

Linus将自己国家的吉祥物作为Linux标志

Linux现状

Linux经过20多年的发展,已日渐成熟,并衍生出一大批优秀的Linux衍生版本。目前所使用最为广泛且最受欢迎的十大主流发行版:

1.Ubuntu

2.Linux Mint

3.Debian GNU/Linux

4.Mageia

5.Fedora

6.openSUSE

7.Arch Linux

8.CentOS

9.PCLinuxOS

10.Slackware Linux

版本详情可参考:http://baijiahao.baidu.com/s?id=1597911999197622652&wfr=spider&for=pc


Linux入门(历史与现状)的更多相关文章

  1. linux入门教程(一) 关于linux的历史

    很多关于linux的书籍在前面章节中写了一大堆东西来介绍linux,可惜读者看了好久也没有正式开始进入linux的世界,这样反而导致了他们对linux失去了一些兴趣,而把厚厚的一本书丢掉. Linux ...

  2. 01 Linux入门介绍

    一.Linux 初步介绍 Linux的优点 免费的,开源的 支持多线程,多用户 安全性好 对内存和文件管理优越 系统稳定 消耗资源少 Linux的缺点 操作相对困难 一些专业软件以及游戏支持度不足 L ...

  3. linux 入门教程

    linux入门教程 搜索 Linux入门教程 前言 第一章 关于Linux的历史 第二章 图形界面还是命令窗口 第三章 Linux操作系统的安装 第四章 初步进入linux世界 第五章 Linux系统 ...

  4. Linux入门介绍

    Linux入门介绍 一.Linux 初步介绍 Linux的优点 免费的,开源的 支持多线程,多用户 安全性好 对内存和文件管理优越 系统稳定 消耗资源少 Linux的缺点 操作相对困难 一些专业软件以 ...

  5. Linux入门基础知识

    注:内容系兄弟连Linux教程(百度传课:史上最牛的Linux视频教程)的学习笔记. Linux入门基础知识 1. Unix和Linux发展历史 二者就像父子关系,当然Unix是老爹.1965年,MI ...

  6. Linux入门_1

    Linux入门 目录  Root用户  终端  交互式接口(图形化界面和命令行)  什么是Shell(bash)  命令提示符  内部命令和外部命令 enable,hash  命令别名 ...

  7. Linux入门_2-基础命令

    Linux入门-基础命令 目录 日期命令date 修改时区 日历命令cal 关机启动命令halt,reboot,poweroff whoami.who.who am i.w screen ...

  8. linux入门001--帮助支持

    linux入门001--帮助支持====1. 帮助手册提供命令的使用说明:man ls提供基础知识和参考信息,有时会有实例和交叉索引,但是基本没有教程式的文档.就是说,并不会有偏重告诉你那个重要,那个 ...

  9. Linux入门篇(五)——Shell(一)

    这一系列的Linux入门都是本人在<鸟哥的Linux私房菜>的基础上总结的基本内容,主要是记录下自己的学习过程,也方便大家简要的了解 Linux Distribution是Ubuntu而不 ...

随机推荐

  1. Python 的整数与 Numpy 的数据溢出

    某位 A 同学发了我一张截图,问为何结果中出现了负数? 看了图,我第一感觉就是数据溢出了.数据超出能表示的最大值,就会出现奇奇怪怪的结果. 然后,他继续发了张图,内容是 print(100000*20 ...

  2. Volatile与synchronize的区别

    仅靠Volatile不能保证线程的安全性(原子性) 1.Volatile轻量级的,只能修饰变量.synchronize重量级的,还可以修饰方法 2.Volatile只保证数据的可见性,不能用来同步,因 ...

  3. 使用Hexo搭建个人博客并部署到GitHub或码云上全过程

    一.前言 如上图所示:GitHub有Github Pages,而码云也有码云 Pages 1.Github Pages或Gitee Pages是什么呢? Github Pages或者Gitee Pag ...

  4. spring中ehcache的配置和使用方法

    继续上篇,这篇介绍服务层缓存,ehcache一般的配置和用法 一.添加jar包引用 修改pom.xml文件,加入: <dependency> <groupId>org.spri ...

  5. [LeetCode] 面试题之犄角旮旯 第叁章

    题库:LeetCode题库 - 中等难度 习题:网友收集 - zhizhiyu 此处应为一个简单的核心总结,以及练习笔记. 查找一个数“在不在”?桶排序理论上貌似不错. 回文问题 ----> [ ...

  6. [Leetcode] 第324题 摆动排序II

    一.题目描述 给定一个无序的数组 nums,将它重新排列成 nums[0] < nums[1] > nums[2] < nums[3]... 的顺序. 示例 1: 输入: nums ...

  7. 前台提交数据到node服务器(post方式)

    post方式同样有两种办法,一种是表单提交,一种是ajax提交. 在此之前需要安装一个中间件:body-parser,安装好后在app.js头部引入: bodyParser = require('bo ...

  8. idea 安装 lombok插件

    一,前言 lombok是什么?lombak是一个工具,主要用来简化,减少代码的编写.使代码看起来更清晰,简洁. 而且lombok只是一个工具,不会打包到war中,不会增加任何消耗.只是在编译期中帮助我 ...

  9. Docker下实战zabbix三部曲之二:监控其他机器

    在上一章<Docker下实战zabbix三部曲之一:极速体验>中,我们快速安装了zabbix server,并登录管理页面查看了zabbix server所在机器的监控信息,但是在实际场景 ...

  10. NN and the Optical Illusion-光学幻觉 CodeForce1100C 几何

    题目链接:NN and the Optical Illusion 题目原文 NN is an experienced internet user and that means he spends a ...