GNU 是什么,和 Linux 是什么关系?

GNU是一个致力于创建自由软件操作系统的计划,由RMS发起,贡献了如Emacs、GCC等重要工具。当Linux内核由Linus Torvalds发布并采用GPL许可证时,与GNU软件结合形成了GNU/Linux系统。尽管Linux常被简称为操作系统,但其用户态环境主要是GNU组件。Linux发行版如Debian、RedHat等依赖于GNU工具,而HURD作为GNU的内核项目并未普及,使得Linux成为了事实上的核心。
摘要由CSDN通过智能技术生成

GNU是一个自由软件操作系统—就是说,它尊重其使用者的自由。GNU操作系统包括GNU软件包(专门由GNU工程发布的程序)和由第三方发布的自由软件。GNU的开发使你能够使用电脑而无需安装可能会侵害你自由的软件。

Unix 系统被发明之后,大家用得很爽。但是后来开始收费和商业闭源了。一个叫 RMS 的大叔觉得很不爽,于是发起 GNU 计划,模仿 Unix 的界面和使用方式,从头做一个开源的版本。然后他自己做了编辑器 Emacs 和编译器 GCC。

BSD的网络栈极大的影响了主流操作系统的网络编程接口.这算是后话了.然后可以看到这是90年代,也就是Linux刚诞生的时代.因为Linux上来的用户态(shell/toolchain/text editor)基本上都来自于GNU的移植,所以被冠上GNU/Linux作为distro的标题,也就是说内核是Linux,用户态环境都是GNU系,发行版主要区别于软件包管理策略所以总体来说GNU这个体系

那么Linux脱离GNU有可能么?其实也是有可能的.比如说:

编译器gcc->clang,但是得打一堆 patch,主线是动不了的,BSD这边前几年似乎是迁移到clang 了shell选一个非gnu实现

从glibc换成其他libc实现,比如Android用的是bionic(然而为了和glibc兼容从glibc偷了点变量名/函数声明之类的东西,他们美其名日[机器生成],并且把这段话加入了license里面,gnu的人是比较不爽的,算是打了cleanroom的擦边球)实用工具尽可能替换为 BSD 系

GNU 是一个计划或者叫运动。在这个旗帜下成立了 FSF,起草了 GPL 等

接下来大家纷纷在 GNU 计划下做了很多的工作和项目,基本实现了当初的计划。包括核心的 gcc 和 glibc。但是 GNU 系统缺少操作系统内核。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值