GNU 是什么

GNU 是一个自由的操作系统,其内容软件彻底以 GPL 方法发布 。这个操作系统是 GNU 计划的重要目标,名字来自 GNU’s Not Unix!的递归简称,由于 GNU 设计类似 Unix,但它不包括具著作权的 Unix 代码 。GNU 的创始人,理查德·马修·斯托曼,将 GNU 视作“达到社会目的技术方法” 。

GNU 是什么

文章插图
做为操作系统,GNU 的发展仍没完成,其中最大的问题是具备完善作用的内核尚未被开发成功 。GNU 的内核,称为 Hurd,是随意软件基金会发展的核心,但是其发展尚未成熟 。在实际应用上,多半应用 Linux 核心、FreeBSD 等替代方案,做为系统核心,其中主要的操作系统是 Linux 的发行版 。Linux 系统包含了 Linux 核心与其它随意软件计画中的 GNU 部件和软件,能够被称作 GNU/Linux(见 GNU/Linux 取名争议) 。
GNU 历史GNU 操作系统始于 GNU 计划,由理查·斯托曼在麻省理工大学人工智能实验室发起,希望发展出一套完整的开放初始码操作系统来取代 Unix,计划里的操作系统,名叫 GNU 。1983 年 9 月 27 日,理查·斯托曼在 net.unix-wizards 和 net.usoft 新闻群聊中发布此项计划 。。理查德·斯托曼根据使用转变单词的各种技巧来挑选名字,包含曲子 The Gnu 。
斯托曼的目标是成立一个彻底自由的操作系统,他希望电脑用户是可以“自由使用”的 。毕竟在 20 世纪 60 时代和 70 时代-大部分人都能自由学习软件的源码,随意地与别人分享的软件,可自由修改软件的举动,随意发布的软件的修改后的版本 。这类理念,在 1985 年 3 月出版的 GNU 宣言崭露无遗 。
1984 年 1 月 5 日,正式启动开发软件,为了避免这些软件未来可能被主张所有权,影响到随意软件的发展,斯托曼辞去了在实验室的工作 。理查·斯托曼应用不兼容分时系统 (ITS) (一种早期的操作系统,应用汇编程序编写,因其所运转的称为 PDP-10 的电脑系统架构终止发展而变得落伍)的经验,造成了必须一种可移植系统的决策 。因此,会议决定,将开发新的系统,并使用 C 和 Lisp 做为系统编程语言 。且 GNU 将和 UNIX 适配 。当时,UNIX 早已是一个流行的特有操作系统 。而 Unix 的设计是模块化的,因此它能够被逐渐分层的实现 。
【GNU 是什么】1984 年,开始发展编辑器 Emacs 等软件 。1985 年,发布 GNU 宣言 。1989 年,发布 GNU 通用公共授权条款 。GNU 计划中的其他部分,如编辑器、编译器、shell 等都已完成,独缺操作系统关键 。1990 年,随意软件基金会开始正式发展 Hurd,做为 GNU 计画中的操作系统 。依据汤玛斯·布什内尔的回忆,最早随意软件基金会应用 Trix 来开发操作系统,但在 1986 年舍弃这个计划 。在此后,他们原希望以轻量后的 4.4BSD 为载体进行开发 。1987 年,理查德·斯托曼决定以 GNU Mach 微内核进行开发,认为可以借此加快操作系统的研发,但因为一直不确定卡内基梅隆大学何时要把关键初始码释放,导致计划延宕三年 。他在以后认可这是个错误 。
很多必须的软件必须从零写起,但已存有的第三方组件,如 TeX、X Window System 和 Mach 微内核等等组成了 GNU Hurd 的关键. 除了以上的第三方组件外,绝大多数 GNU 软件是由很多志愿者,在他们的空余时间,或由公司、教育机构和非营利性组织赞助下编写 。1985 年 10 月,理查·斯托曼创建随意软件基金会 (FSF) 。在 1980 到 1990 时代,他们雇用软件发展工程师去转写 GNU 必须的软件 。
1991 年,Linux 发生 。1993 年,FreeBSD 释放 。全部 GNU 计划中,运作于使用者区域的软件,都可以在 Linux 或 FreeBSD 中使用 。很多开发者转为于 Linux 或 FreeBSD 。其中,Linux 变成常见的 GNU 计划软件运行平台 。理查德·斯托曼主张,Linux 操作系统使用了很多 GNU 计划软件,应正名叫 GNU/Linux,但没有得到 Linux 社群的一致认可,产生 GNU/Linux 取名争议 。
因为 GNU 极具知名度,感兴趣的店家开始促进发展或售卖 GNU 软件和技术支持 。其中最明显的和成功的,是 Cygnus Solutions,如今红帽企业的一部分 。
GNU 构成此系统的基本构成包含 GNU 编译器套服(GCC)、GNU 的 C 函式库(glibc)、及其 GNU 关键工具组(coreutils),此外也是 GNU 除错器(GDB)、GNU 二进制实用程序(binutils)的 GNU Cash shell 中合 GNOME 桌面环境 。GNU 开发者已经向 GNU 应用程序和工具的 Linux 移殖,现在也广泛运用在其它操作系统中应用,如 BSD 组合的 Solaris,和 OS X 作出了贡献 。
很多 GNU 程序早已被移植到其他操作系统,包含特有软件,如 Microsoft Windows 和 OS X. GNU 计划早已被证明是比他们的特有 Unix 更加可靠 。截至 2015 年 11 月,全国共有 466 GNU 程序包(包含退伍,但不包含 383 )主办的官方 GNU 开发网站 。
GNU 变异GNU 项目的官方核心是 GNU Hurd;然而,截至 2012 年,Linux 关键正式以 Linux-libre 之名变成 GNU 计画中的一部份,并删掉了全部特有元件的变异 。
像 FreeBSD 核心其他关键仍然和 GNU 软件合作,产生一个工作的操作系统 。FSF 觉得 Linux 关键,与 GNU 工具和实用程序使用中,应承认自己为 GNU 变异,并促进改为 GNU/Linux 的这类系统名称(造成 GNU/Linux 取名争议)。GNU 工程已认可的 Linux 发行版,如 gNewSense,TRISQUEL 和 Parabola GNU/Linux-libre 。不使用 Hurd 作为核心的 GNU 的许多变异包含的 Debian GNU / kFreeBSD 和 Debian GNU / NetBSD 的,将得到对 BSD 的关键完成 GNU 的初期计划 。