GNU软件是通过GNU项目发布的软件,是一种根据GNU软件包的README手册以及自由软件指南开发的软件,大多数GNU软件是免费分发,但不是所有的都这样,然而,所有的GNU软件必须是自由软件。

GNU 软件是通过 GNU 项目发布的软件,它是一种根据 GNU 软件包的 README 手册以及自由软件指南开发的软件,大多数 GNU 软件是免费分发的(copyleft),但不是所有的都这样,然而,所有的 GNU 软件必须是自由软件。

GNU软件是什么  第1张

简介

GNU 软件是 GNU 计划开发的软件,该软件可以充分利用计算机的硬件能力,比 Unix 中的同样的软件功能更强,因此非常流行,这些软件在 GNU 通用公共许可的保护下允许任何人免费使用和传播(但必须同时提供源程序),因此被大量的用在其他的 Unix 中,FreeBSD 上也提供了很多 GNU 软件。

有一些 GNU 软件是由自由软件基金(Free Software Foundation)成员编写的,但大多数 GNU 软件是志愿者捐献的。有些捐献软件是由自由软件基金免费分发,但有一些软件由作者享有版权。

GNU 软件使用 copyleft 保护,限制将 GNU 软 件本身用于牟利目的,而其他软件仍然可以使用 copyright 保护版权不被侵犯。Stallman 进一步使用 GNU 通用公共许可来详细阐述 copyleft 的观念,要求传播 GNU 软件必须同时传播其源代码。由于 GNU 通用公共许可十 分流行,因此很多非自由软件基金会的自由软件也使用 GNU 通用公共许可来保护自己软件,不被商业公司用于获利。

GNU 软件许可相当宽松,有很多公司利用 GNU 软件进行商业活动,但只要同时提供了 GNU 软件的源代码,就没 有违反 GNU 软件许可。

发展过程

1983 年,理察·马修·斯托曼(Richard Stallman)创立了 GNU 计划(

GNU Project)。这个计划有一个目标是为了发展一个完全免费自由的 Unix-like 操作系统。

GNU 大量的产生或收集各种系统所必备的元件,例如:函式库(libraries)、编译器(compilers)、侦错工具(debugs)、文字编辑器(text editors)、网页服务器(web server),以及一个 Unix 的使用者接口(Unix shell)——除了执行核心(kernel)。

1990 年,GNU 计划开始在马赫微核(Mach microkernel)的架构之上开发系统核心,也就是所谓的 GNU Hurd,但是这个基于 Mach 的设计异常复杂,发展进度则相对缓慢。

2008 年,GNU 庆祝 25 岁生日,放出纪念短片。

特点

可靠性

在 1990 到 1995 年期间,Barton P.Miller 和他的学生测试了 Unix 应用程序的可靠性。每次 GNU 的应用程序的效用表现得相当领先。他们测试了 GNU 和另外 7 个商业 Unix 系统。通过随机的输入流,在使用基本的应用程序时,它们能使 40%(最坏的情况)的基本应用程序“崩溃(内核被破坏)或者中止(无限循环)”。

这些研究者发现:商业版 Unix 系统故障率高达 15%到 43%,与此形成鲜明对比的是,GNU 的故障率仅仅是 7%。

Miller 说过:“在 1990 到 1995 年期间,比较的商业系统中有三个版本有了引人注目的改进,但是还是有重大的失败(GNU/Linux 基本应用程序仍然比商业系统有引人注目的好处)。”