Jump to content

GNU

From Wikipedia, the free encyclopedia

This is an old revision of this page, as edited by Markvs (talk | contribs) at 03:52, 10 May 2004 (+fa:). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

For the gnu, a large hooved mammal, see wildebeest.

File:Gnu-head-sm.jpeg
The GNU logo

GNU is a recursive acronym for "GNU's Not Unix". The GNU project was launched by Richard Stallman with the goal of creating a complete free operating system: the GNU system. Stallman requests that it be pronounced guh-NOO to "avoid horrible confusion" with the word "new". UNIX is a proprietary operating system that was already in widespread use; since its 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, could be adapted and reused; others would be written from scratch.

History

The project was announced to the public 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 he could spend his time on GNU. 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."

To ensure that GNU software would remain free for all users "to run, copy, modify and distribute," the project would release it under a license designed to give everyone those permissions while preventing them from adding restrictions of their own. This idea, referred to as copyleft, was then embodied in the GNU General Public License (GPL).

In 1985, Stallman founded the Free Software Foundation (FSF), a tax-exempt charity, 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.

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 it was initially delayed while its developers removed code owned by AT&T. Initially, the kernel was to be called Alix, but developer Michael Bushnell later preferred the name 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 (as in freedom) software, in 1992 Torvalds changed the license to the GNU GPL. Linux was further developed by various programmers over the Internet. In 1992, Linux 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 2004, the Hurd is still in active development, and an experimental version of the GNU system that uses the Hurd instead of Linux is now available. There is also a project working on porting the GNU system to the kernel of FreeBSD.

It is also common to find components of GNU installed on proprietary UNIX systems, in place of the original UNIX programs. This is because many of the programs written for the GNU project have proven to be of a superior quality to the equivalent UNIX versions. Often, these components are collectively referred to as the "GNU Tools". Many GNU programs have also been ported to Microsoft Windows and Mac OS X platforms.

GNU software

Some of the software developed by the GNU project are:

The GNU project also distributes and assists with the development of other packages which originated elsewhere, e.g.:

  • CVS - source code control
  • DDD - graphical frontend for debuggers
  • eCos - small operating system for embedded devices

As of January 2004, there are a total of 260 projects under the GNU project [1].

See also