• GUN介绍


    介绍

    GNU(GNU’s Not Unix)是一个自由操作系统项目,名字是一个递归的 GNU’s Not Unix 缩写,其目标是创建一个类Unix的操作系统。

    该项目由Richard Stallman于1983年发起,并由自由软件基金会(Free Software Foundation)支持。

    GNU的目标是提供一个完全自由、开放源代码的操作系统,用户可以自由地运行、学习、修改和分享。

    GNU主要组成部分

    GNU工具: GNU项目开发了一系列标准的系统工具,如文本编辑器(Emacs)、编译器(GCC)、调试器(GDB)等。这些工具在许多Unix-like系统上广泛使用。

    GNU库: GNU C库(glibc)是GNU项目中的一个重要组件,提供了在GNU系统上运行程序所需的标准C库功能。

    GNU核心工具: GNU核心工具集合,如bash(GNU Bourne Again Shell)等,为用户提供了与系统交互的界面。

    Hurd操作系统: GNU的原始计划是开发一个称为Hurd的内核,作为GNU操作系统的内核。然而,Hurd的开发进展较慢,目前大多数GNU系统使用Linux内核。

    GPL许可证: GNU项目使用了GNU通用公共许可证(GPL),这是一种自由软件许可证,它确保用户有权查看、修改和重新分发软件的源代码。

    总结

    尽管GNU项目的内核计划(Hurd)未能在大规模上成功,但GNU工具和库已经成为许多自由和开源软件项目的基础。

    此外,许多Linux发行版,如Ubuntu、Debian等,将Linux内核与GNU工具和库相结合,形成了一个完整的自由操作系统。

    因此,我们通常使用术语“GNU/Linux”来描述这样的系统。

    历史/与Linux的关系

    Unix 系统被发明之后,大家用的很爽。但是后来开始收费和商业闭源了。

    一个叫 RMS 的大叔觉得很不爽,于是发起 GNU 计划,模仿 Unix 的界面和使用方式,从头做一个开源的版本。

    然后他自己做了编辑器 Emacs 和编译器 GCC。


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

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

    但是 GNU 系统缺少操作系统内核。原定的内核叫 HURD,一直完不成。同时 BSD(一种 UNIX 发行版)陷入版权纠纷,x86 平台开发暂停。


    然后一个叫 Linus 的同学为了在 PC 上运行 Unix,在 Minix 的启发下,开发了 Linux。

    注意,Linux 只是一个系统内核,系统启动之后使用的仍然是 gcc 和 bash 等软件。


    Linus 在发布 Linux 的时候选择了 GPL,因此符合 GNU 的宗旨。

    最后,大家突然发现,这玩意不正好是 GNU 计划缺的么。于是合在一起打包发布叫 GNU / Linux。

    然后大家念着念着省掉了前面部分,变成了 Linux 系统。

  • 相关阅读:
    卷积计算公式 神经网络,卷积神经网络应用举例
    centos执行systemctl restart命令报连接超时
    单文件组件环境配置步骤---vue-cli版
    我们来浅谈代码语言的魅力
    详细讲解面试的 IO多路复用,select,poll,epoll
    serverless全栈全场景云开发概要
    js对象扁平化:Javascript对象进行扁平化处理
    Ubuntu 多用户管理及 SSH 远程连接
    Elasticsearch集群搭建
    【JavaScript 漫游】【036】CORS 通信总结
  • 原文地址:https://blog.csdn.net/NSJim/article/details/134468475