User Tools

Site Tools


handbook:handbook:introduction

GNU

gnu-head-sm.jpg

For the African animal gnu

GNU is a recursive acronym for “GNU's Not Unix”. The GNU project was announced in 1983 by Richard Stallman with the goal of creating a complete UNIX-compatible operating system – called the GNU system or simply GNU – that is free software, meaning that users are allowed to copy, modify and redistribute it. The GNU project is now carried out under the auspices of the Free Software Foundation (FSF). The correct pronunciation is guh-noo (IPA: /gnu/), with a hard “g”, to distinguish it from the word new.

Developing the GNU system entailed writing many programs, known as GNU programs or GNU packages. These include the text editor Emacs, the GNU Compiler Collection (GCC), the GNU Debugger (GDB), and the desktop GNOME.

The GNU system is normally used in combination with the kernel Linux, developed outside the GNU project. This combination forms a completely functional operating system, the GNU/Linux system, which is often confusingly referred to as “Linux”. For details, see GNU/Linux naming controversy.

GNU programs are often used separately too. It is common to find components of GNU installed on proprietary UNIX systems, in place of the original UNIX programs – especially those that are programming tools, which are sometimes collectively called the GNU toolset. (This is a small fraction of the GNU system as a whole.) They are used this way because they have proved to be of a superior quality to the equivalent UNIX versions, even if they are not totally POSIX compliant. Also, with the popularity of the GNU/Linux combination, many developers install the GNU toolset on other systems for compatibility or because it works uniformly on all platforms. Many GNU programs have also been ported to Microsoft Windows, Mac OS X, and various other proprietary platforms. However, their reason for existence is to help replace those systems with free software.

History

The GNU project was announced publicly on September 27, 1983, on the net.unix-wizards and net.usoft newsgroups. Work on the project began in earnest on January 5, 1984, when Stallman quit his job at MIT so that they could not claim ownership and interfere with distributing GNU as free software. The original announcement was followed by Stallman's “GNU Manifesto” and other essays that laid out his motivations for the GNU project, one of which was to “bring back the cooperative spirit that prevailed in the computing community in earlier days.”

UNIX, a proprietary operating system, was already in widespread use when GNU was proposed. Since Unix's architecture had proven technically sound, the GNU system was designed to be compatible with it. The UNIX architecture allowed GNU to be written as individual software components. Components that were already freely available, such as the TeX typesetting system and the X Window graphics system, would be adapted and reused, while components that were not would be written from scratch.

In 1985, Stallman founded the Free Software Foundation (FSF), a tax-exempt non-profit organization, to provide logistical, legal, and financial support for the GNU project. The FSF also employed programmers to contribute to GNU, though a substantial portion of development was (and continues to be) performed by volunteers. As GNU gained prominence, interested businesses began contributing to development or selling GNU software and technical support. The most prominent and successful of these was Cygnus Solutions, now part of Red Hat.

In order to ensure that GNU software remains free, the project released the first version of the GNU General Public License (GNU GPL) in 1989. This license is now used by most GNU programs, as well as a large number of free software programs that are not part of the GNU project; it is one of the most commonly-used free software licenses in the world. It gives all recipients of a program the right to run, copy, modify and distribute it, while forbidding them from imposing further restrictions on any copies they distribute. This idea is referred to as copyleft.

By 1990, the GNU system had an extensible text editor (Emacs), a very successful optimizing compiler (GCC), and most of the core libraries and utilities of a standard UNIX distribution. The main component still missing was the kernel. In the GNU Manifesto, Stallman had mentioned that “an initial kernel exists but many more features are needed to emulate Unix.” He was referring to TRIX, a remote procedure call kernel developed at MIT, whose authors had decided to distribute for free, and was compatible with UNIX version 7. In December 1986, work had started on modifying this kernel. However, the developers eventually decided it was unusable as a starting point, primarily because it only ran on “an obscure, expensive 68000 box” and would therefore have to be ported to other architectures before it could be used. By 1988, the Mach message-passing kernel being developed at CMU was being considered instead, although its release as free software was delayed till 1990 while its developers removed code owned by AT&T.

Since Mach provided just the low-level kernel functionality, the GNU Project had to develop the higher-level parts of the kernel, as a collection of user programs. Initially, this collection was to be called Alix, but developer Michael Bushnell later preferred the name part Hurd, so the Alix name was moved to a subsystem and eventually dropped completely. Eventually, development of the Hurd had stalled due to technical and personality conflicts.

In 1991, Linus Torvalds wrote the UNIX-compatible Linux kernel. Although it was not originally free software, Torvalds changed the license to the GNU GPL in 1992. Linux was further developed by various programmers over the Internet. In 1992, it was combined with the GNU system, resulting in a fully functional free operating system. The GNU system is most commonly encountered in this form, usually referred to as a “GNU/Linux system” or a “Linux distribution”. As of 2005, Hurd is in slow development, and is now the official kernel of the GNU system. There is also a project working on porting the GNU system to the kernels of FreeBSD and NetBSD.

On the 20th anniversary of the GNU Project (January 5, 2004), the Irish Free Software Organisation was founded to promote free software in Ireland


Click here to get more information on this subject : http://www.gnu.org/

handbook/handbook/introduction.txt · Last modified: 2010/04/15 21:18 (external edit)