相信很多人看到了这个标题就会产生疑问,这篇文章到底要讲什么东西?在回答这个问题之前,我先提出几个问题?

1. 什么是Linux?

2. 什么是GNU?

3. GNU/Linux是什么玩意儿?

在回答了以上问题后,大家自然也清楚我想说明的问题了。

什么是Linux

相信了解一些IT知识的人都听过Linux这个名词。维基百科上的Linux词条是最经典和最准确的说明(http://zh.wikipedia.org/wiki/Linux),在此直接应用,免去班门弄斧之嫌。Linux操作系统(Linux),是一种计算机操作系统。Linux操作系统的内核的名字也是“Linux”。Linux操作系统也是自由软件和开放源代码发展中最著名的例子。Linux内核最初是为英特尔386微处理器设计的。现在Linux内核支持从个人电脑到大型主机甚至包括嵌入式系统在内的各种硬件设备。在开始的时候,Linux只是个人狂热爱好的一种产物。但是现在,Linux已经成为了一种受到广泛关注和支持的一种操作系统。包括IBM和惠普在内的一些计算机业巨头也开始支持Linux。很多人认为,和其他的商用Unix系统以及微软 Windows相比,作为自由软件的Linux具有低成本,安全性高,更加可信赖的优势。
Linux内核最初只是由芬兰人林纳斯•托瓦兹(Linus Torvalds)在赫尔辛基大学上学时出于个人爱好而编写的。最初的设想中,Linux是一种类似Minix这样的一种操作系统。Linux的第一个版本在1991年9月被发布在Internet上,随后在10月份第二个版本就发布了。

Linux的历史是和GNU紧密联系在一起的。从1983年开始的GNU计划致力于开发一个自由并且完整的类Unix操作系统,包括软件开发工具和各种应用程序。到1991年Linux内核发布的时候,GNU已经几乎完成了除了系统内核之外的各种必备软件的开发。在Linus Torvalds和其他开发人员的努力下,GNU组件可以运行于Linux内核之上。整个内核是基于GNU通用公共许可,也就是GPL(General Pubic License)的,但是Linux内核并不是GNU 计划的一部分。Linux的标志和吉祥物是一只名字叫做Tux的企鹅,Linux的注册商标是Linus Torvalds所有的。这是由于在1996年,一个名字叫做William R. Della Croce的律师开始向各个Linux发布商发信,声明他拥有Linux商标的所有权,并且要求各个发布商支付版税,这些发行商集体进行上诉,要求将该注册商标重新分配给Linus Torvalds。
Linux的某些版本是不需要安装就能使用的版本,他们称为LiveCD

什么是GNU

GNU计划,又称革奴计划,是由Richard Stallman在1983年9月27日公开发起的。它的目标是创建一套完全自由的操作系统。Richard Stallman最早是在net.unix-wizards新闻组上公布该消息,并附带一份《GNU宣言》等解释为何发起该计划的文章,其中一个理由就是要“重现当年软件界合作互助的团结精神”。

GNU是“GNU's Not Unix”的递归缩写。Stallman宣布GNU应当发音为Guh-NOO,与canoe发音相同,以避免与gnu(非洲牛羚,发音与new相同)这个单词混淆。UNIX是一种广泛使用的商业操作系统的名称。由于GNU将要实现UNIX系统的接口标准,因此GNU计划可以分别开发不同的操作系统部件。GNU计划采用了部分当时已经可自由使用的软件,例如TeX排版系统和X Window视窗系统等。不过GNU计划也开发了大批其他的自由软件。为保证GNU软件可以自由地“使用、复制、修改和发布”,所有GNU软件都在一份在禁止其他人添加任何限制的情况下授权所有权利给任何人的协议条款,GNU通用公共许可证(GNU General Public License,GPL)。这个就是被称为“反版权”(或称Copyleft)的概念。1985年Richard Stallman又创立了自由软件基金会(Free Software Foundation)来为GNU计划提供技术、法律以及财政支持。尽管GNU计划大部分时候是由个人自愿无偿贡献,但FSF有时还是会聘请程序员帮助编写。当GNU计划开始逐渐获得成功时,一些商业公司开始介入开发和技术支持。当中最著名的就是之后被Red Hat兼并的Cygnus Solutions。
到了1990年,GNU计划已经开发出的软件包括了一个功能强大的文字编辑器Emacs,C语言编译器GCC,以及大部分UNIX系统的程序库和工具。唯一依然没有完成的重要组件就是操作系统的内核(称为HURD)。

1991年Linus Torvalds编写出了与UNIX兼容的Linux操作系统内核并在GPL条款下发布。Linux之后在网上广泛流传,许多程序员参与了开发与修改。1992年Linux与其他GNU软件结合,完全自由的操作系统正式诞生。(尽管如此GNU计划自己的内核Hurd依然在开发中,目前已经发布Beta版本。)许多UNIX系统上也安装了GNU软件,因为GNU软件的质量比之前UNIX的软件还要好。GNU工具还被广泛地移植到Windows和Mac OS上。

注:以上内容来自维基百科GNU词条(http://zh.wikipedia.org/wiki/GNU)

GNU/Linux是什么玩意儿

通过回答上面两个问题,我们很明显可以注意到Linux只是一个操作系统内核而已,而GNU提供了大量的自由软件来丰富在其之上各种应用程序。因此,严格来讲,Linux这个词本身只表示Linux内核,但在实际上人们已经习惯了用Linux来形容整个基于Linux内核,并且使用GNU 工程各种工具和数据库的操作系统。基于这些组件的Linux软件被称为Linux发行版。一般来讲,一个Linux发行套件包含大量的软件,比如软件开发工具,数据库,Web服务器(例如Apache),X Window,桌面环境(比如GNOME和KDE),办公套件(比如OpenOffice.org),等等。

绝大多数基于Linux内核的操作系统使用了大量的GNU软件,包括了一个shell程序、工具、程序库、编译器及工具,还有许多其他程序,例如Emacs。正是由于Linux使用了许多GNU程序,GNU计划的开创者Richard Stallman博士提议将Linux操作系统改名为GNU/Linux。但有些人只把操作系统叫做"Linux"。

有部分Linux套件,包括了Debian,采用了“GNU/Linux”的称呼。但大多数商业Linux套件依然将操作系统称为Linux。有些人也认为“操作系统”一词指的应该只是系统的内核,其他程序都只能算是应用软件,这么一来,该操作系统的内核应叫Linux,而Linux套件是在Linux内核的基础上加入各种GNU工具。

结语

我相信,坚持看完这些枯涩文字的读者一定明白了我需要探讨的问题,我们常说的Linux,准确地来讲,应该是叫“GNU/Linux”。虽然,我们没有为GNU和Linux的开发做出什么贡献,但是我们可以为GNU和Linux的宣传和应用做出微薄的努力,至少我们能够准确地去向其他人解释清楚GNU、Linux以及GNU/Linux之间的区别。让我们一起为GNU/Linux的推广贡献出自己的力量!

文章转载至:http://os.51cto.com/art/200608/30399.htm

论GNU、Linux和GNU/Linux之间的关系相关推荐

  1. linux内存机制的virt,关于linux:转载理解virt-res-shr之间的关系

    想必在linux上写过程序的同学都有剖析过程占用多少内存的经验,或者被问到这样的问题--你的程序在运行时占用了多少内存(物理内存)?通常咱们能够通过top命令查看过程占用了多少内存.这里咱们能够看到V ...

  2. 基础——ARM系统的启动流程(boot loader,Linux 内核,文件系统之间的关系)

    以三星的四核处理器Exynos4412为例,该开发板属于armv7架构,contexA9系列,32bit,cpu4核心1.5GHZ主频,eMMC 大小型号为:KLM4G. ARM里面,启动MMU以后, ...

  3. linux 用户和组之间的关系

    useradd 新增之后会影响四个文件 /etc/passwd /etc/shadow /etc/gshadow /etc/passwd

  4. gnu和linux的区别,Linux和GNU/Linux之间的区别

    导读:当大多数人想到Linux时,他们会想到极客和技术人员使用的桌面操作系统或者用于为网站供电的基于服务器的操作系统.Linux无处不在.它是大多数智能设备背后的引擎.您正在使用的Android手机运 ...

  5. linux和GNU之间的关系

    Linux只是一个操作系统内核而已,而GNU提供了大量的自由软件来丰富在其之上各种应用程序. 因此,严格来讲,Linux这个词本身只表示Linux内核,但在实际上人们已经习惯了用Linux来形容整个基 ...

  6. linux怎么进入gnu grub_十项Linux常识,你知道吗?

    1.GNU和GPLGNU计划(又称革奴计划),是由Richard Stallman(理查德·斯托曼)在1983年9月27日公开发起的自由软件集体协作计划.它的目标是创建一套完全自由的操作系统.GNU也 ...

  7. 世纪大争论:Linux还是GNU/Linux?

    本文由 极客范 - 爱开源的贡献开源社区 翻译自 Chris Hoffman.欢迎加入极客翻译小组,同我们一道翻译与分享.转载请参见文章末尾处的要求. 我们在网上已经习惯用"Linux&qu ...

  8. UNIX、LINUX、GNU的故事

    UNIX的故事 肯•汤普森当年开发 UNIX 的初衷是运行他编写的一款计算机游戏 Space Travel,这款游戏模拟太阳系天体运动,由玩家驾驶飞船,观赏景色并尝试在各种行星和月亮上登陆.他先后在多 ...

  9. Linux和GNU系统的关系详解

    今天广泛使用的 GNU 版本通常被称为"Linux",而它的许多用户并不知道 它基本上是由GNU 项目开发的 GNU 系统 . Linux内核 和 GNU 系统简介 确实有一个 L ...

最新文章

  1. 如何在DataFrame索引某一行
  2. 两间计算机房的女老师,我的女老师作文.doc
  3. ndarray是什么_python数据分析用什么软件?
  4. python视频教程全集-Python 3视频教程全集(2018版)免费送啦
  5. 【JavaEE】javaee一些问题方案
  6. 解读Depth Map Prediction from a Single Image using a Multi-Scale Deep Network (6)
  7. Unity3D 脚本模板插件
  8. Bugku—凯撒部长的奖励
  9. permission denied什么意思
  10. 嵌入式工程师不能不参加的技术盛会
  11. 基于 UAP 的 Web Service 开发
  12. GIS大数据可视化分析工具
  13. SHA256sum系列命令检测文件完整性
  14. 人力资源管理专业知识与实务(初级)【9】
  15. 以IP地址的形式访问网站
  16. opencv学习笔记(2017年8月21日)之图像腐蚀操作
  17. 南半球被烧了20多天! 西方媒体集体沉默! 这是全世界最残忍的一幕...
  18. mysql的基本情况是什么意思_数据库是什么意思
  19. 如何找到/etc/sysconfig/network-scripts/ifcfg-ens33.swp文件
  20. 【信息系统项目管理师】高项知识框架--考点大汇总

热门文章

  1. 电动车怎样才算逆向行驶
  2. 堆栈在计算机中的应用,堆栈
  3. python中map函数定义及使用方法、技巧
  4. Java解析rdf和xml文件以及处理excel
  5. CC00332.CloudKubernetes——|KuberNetes运维.V50|——|黑盒监控.v05|blackbox.v05|targets获取不到值|
  6. 比悲伤更悲伤的故事——前面笑的有多开心,后面哭的就有多惨!!
  7. 摩托罗拉Atrix预言了智能手机的现在和未来
  8. MySQL的Join
  9. java的基本特性_Java语言的基本特点
  10. js中的Blod、File、FileList、FileReader对象