Linux还是GNU/Linux?

举报
黄生 发表于 2025/02/22 17:15:24 2025/02/22
91 0 0
【摘要】 GNU 和 Linux 的关系可以用一句话概括:GNU 提供了操作系统的基础工具和框架,而 Linux 是操作系统的核心(内核),二者结合形成了今天广泛使用的“GNU/Linux 操作系统”(通常被简称为“Linux 系统”)。 1. GNU 是什么?GNU 项目由 Richard Stallman 在 1983 年发起,目标是创建一个完全自由的、类 Unix 的操作系统(名称是“GNU’s...

GNU 和 Linux 的关系可以用一句话概括:GNU 提供了操作系统的基础工具和框架,而 Linux 是操作系统的核心(内核),二者结合形成了今天广泛使用的“GNU/Linux 操作系统”(通常被简称为“Linux 系统”)。

1. GNU 是什么?

  • GNU 项目Richard Stallman1983 年发起,目标是创建一个完全自由的、类 Unix 的操作系统(名称是“GNU’s Not Unix”的递归缩写)。
  • GNU 开发了大量操作系统所需的工具和组件,例如:
    • GCC(编译器)、Glibc(C 语言标准库)、Bash(命令行解释器)、Coreutils(基础命令如 ls, cp)。
    • 文本编辑器(如 Emacs)、构建工具(如 Make)等。
  • 关键问题:GNU 缺少一个可用的 内核(操作系统的核心组件,负责管理硬件和资源)。GNU 原本计划的内核 Hurd 开发缓慢,未能成熟。

2. Linux 是什么?

  • LinuxLinus Torvalds1991 年开发的一个 内核(Kernel),最初用于个人计算机。
  • 内核的作用是管理硬件(如 CPU、内存、磁盘、网络等),并为上层软件提供接口。
  • Linux 内核本身是独立开发的,但它遵循 GNU 的 GPL 协议(自由软件协议),允许自由使用和修改。

3. GNU 和 Linux 的结合

  • 背景:GNU 项目已经开发了操作系统的几乎所有工具,但缺少内核;Linux 刚好提供了一个可用的内核。
  • 互补性
    • GNU 提供工具:用户空间(User Space)的程序(如命令行工具、编译器、库等)。
    • Linux 提供内核:负责底层硬件管理和进程调度。
  • 结果:两者结合后形成了一个完整的操作系统,即 GNU/Linux(例如 Debian、Fedora、Ubuntu 等发行版)。

4. 为什么常被简称为“Linux”?

  • 尽管系统的大部分工具来自 GNU,但 Linux 内核的名字更广为人知。许多用户和媒体习惯将整个系统称为“Linux”。
  • 争议:GNU 项目认为应称为 GNU/Linux,以强调 GNU 的贡献。但约定俗成的名称“Linux”更流行。

5. 实际例子

  • 当你在 Linux 系统中运行 gcc(编译器)、bash(终端)、ls(文件列表)等命令时,你使用的都是 GNU 工具
  • 当你操作硬件(如挂载磁盘、管理进程)时,底层由 Linux 内核 完成。

总结

  • GNU 是操作系统工具链的集合,Linux 是内核。
  • 二者结合形成了完整的 GNU/Linux 操作系统,成为开源世界的基石。
  • 严格来说,“Linux 系统”是 GNU 工具 + Linux 内核 + 其他组件(如 GUI、应用软件)的组合。

理解这一点,就能明白为什么 Richard Stallman 坚持使用“GNU/Linux”这一名称——它体现了自由软件运动中协作的力量。

【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

作者其他文章

评论(0

抱歉,系统识别当前为高风险访问,暂不支持该操作

    全部回复

    上滑加载中

    设置昵称

    在此一键设置昵称,即可参与社区互动!

    *长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

    *长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。