GNU软体是通过GNU项目发布的软体,它是一种根据GNU软体包的README手册以及自由软体指南开发的软体,大多数GNU软体是免费分发的(copyleft),但不是所有的都这样,,所有的GNU软体必须是自由软体。
基本介绍
- 中文名GNU软体
- 发源时间1983年
- 类型一种自由软体
- 归属项目GNU项目
- 特点可靠性,开放性
简介
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基本应用程式仍然比商业系统有引人注目的好处)。”
开放性
gnu软体是一种自由软体,其使用者有使用、複製、散布、研究、改写、再利用该软体的自由,具有以下特性
1不论目的为何,可以自由使用该种软体。
2研究该软体如何运作的自由,并且得以改写该软体来符合使用者自身的需求,取得该软体之源码为达成此目的之前提。
3重新散布该软体的自由。
4有改善再利用该软体的自由,并且可以发表改写版供公众使用,如此一来,整个社群都可以受惠,如前项,取得该软体之源码为达成此目的之前提。
(GNU 软体的原始码也是免费开放的。)