先说结论,GNU是⼀个操作系统。
GNU操作系统
“GNU”是“GNU's Not Unix!”的⾸字母递归缩写形式,发⾳类似普通话“哥怒”。
GNU于1983年由Richard Stallman(rms)发起,意在为所有软件⽤户能够⾃由控制⾃⼰的计算机⽽构建⼀款由⼤家共同努⼒开发⽽成的操作系统。
由于没有任何赞助仅靠⼤家共同努⼒开发⼀个操作系统是⼀件⾮常困难的事情,因此1985年Richard Stallman⼜创⽴了⾃由软件基⾦会(Free Software Foundation)来为GNU计划提供技术、法律以及财政⽀持。
尽管有很多⼈为GNU做出贡献,但是作为操作系统,GNU的发展仍未完成,其中最⼤的问题是具有完备功能的内核尚未被开发成功。GNU的内核,称为Hurd,是⾃由软件基⾦会发展的重点,但是其发展尚未成熟。⼀个没有内核的操作系统,就相当于没有灵魂的躯壳,好在值得庆幸的是,GNU不必再等Hurd了,因为有了Linux,Linux实际上只是⼀个内核,这正是GNU系统的⼀个重要空⽩,⽽GNU系统也为Linux内核提供了⾮常多且必要的系统组件,⼈们把Linux和GNU系统结合起来组成⼀个完整的⾃由系统——⼀个带有Linux的GNU系统。换句话说,就是GNU/Linux系统,⽐如⼯作中常⽤的Ubuntu就是GNU/Linux发⾏版中的⼀个。
所以说其实实际上每天都有许多计算机⽤户使⽤⼀个被改动过的GNU系统,但是他们并没有意识到。
在整个GNU/Linux系统中,GNU占了⾮常⼤的⽐重,我们都知道内核其实相对整个操作系统来说是很⼩的,如果你要根据谁的代码多来命名系统,最合适的单个选择是“GNU”。
但是实际情况是经过⼀系列的事件,现在被⼴泛使⽤的GNU版本则经常被称作“Linux”,⽽且许多⽤户并不了解它基本上就是GNU系统,是由GNU⼯程开发的(除了内核以外)。
⽆论你是否使⽤GNU/Linux,请不要含糊不清地使⽤“Linux”这⼀名称来混淆⼤众。Linux是⼀个内核,是系统的主要基本部件之⼀。整个系统基本上是GNU系统,加上Linux。如果你说的是这个组合,请称之为“GNU/Linux”。
GNU的所有含义
其实说到这⾥,GNU的含义就很宽泛了:
可以指代操作系统——GNU操作系统可以指代软件——GNU软件
可以指代为了完成这个操作系统⽽发起的庞⼤的⼯程——GNU⼯程或者是想要完成GNU系统/⼯程⽽聚集在⼀起的⼀帮⼈——GNU组织甚⾄GNU是⼀种精神或者信仰(说起来有点类似些宗教的感觉......)
因篇幅问题不能全部显示,请点此查看更多更全内容