kids encyclopedia robot

GNU facts for kids

Kids Encyclopedia Facts
Quick facts for kids
GNU
Heckert GNU white.svg
Debian GNU/Hurd with Xfce4 and web browser Midori
Company / developer Community
Programmed in Various languages (notably C and assembly language)
OS family Unix-like
Working state Current
Source model Free software
Marketing target Personal computers, mobile devices, embedded devices, servers, mainframes, supercomputers
Supported platforms IA-32 (with Hurd kernel only) and Alpha, ARC, ARM, AVR32, Blackfin, C6x, ETRAX CRIS, FR-V, H8/300, Hexagon, Itanium, M32R, m68k, META, MicroBlaze, MIPS, MN103, OpenRISC, PA-RISC, PowerPC, s390, S+core, SuperH, SPARC, TILE64, Unicore32, x86, Xtensa, RISC-V (with Linux-libre kernel only)
Kernel type Microkernel (GNU Hurd) or Monolithic kernel (GNU Linux-libre, fork of Linux)
Userland GNU
License GNU GPL, GNU LGPL, GNU AGPL, GNU FDL, GNU FSDG

GNU (pronounced "guh-noo") is a huge collection of free software. Think of it as a big toolbox filled with many computer programs. These programs can be used together to create a complete computer operating system. You might know about Linux? Well, many parts of Linux actually come from GNU! Most GNU software uses a special license called the GPL. This license makes sure the software stays free for everyone to use and share.

Richard Stallman - Fête de l'Humanité 2014 - 010
Richard Stallman, who started the GNU project.

GNU is also where the idea of "free software" first began. Richard Stallman, who started the project, believes GNU is a way to help society. He thinks free software can build communities and make things fairer for everyone.

What Does GNU Mean?

The name GNU is a recursive acronym. This means it stands for "GNU's Not Unix!" It was chosen because GNU is similar to Unix in how it's designed. However, GNU is different because it's completely free software. It also doesn't use any of the original Unix code. Stallman picked the name by playing around with words, even using ideas from a song called The Gnu.

History of GNU

The idea for the GNU operating system came from Richard Stallman. He started the GNU Project on September 27, 1983. He announced it publicly on computer newsgroups.

Software development began on January 5, 1984. Stallman left his job at the MIT Artificial Intelligence Laboratory. This was so the lab couldn't claim ownership of GNU. He wanted to make sure GNU parts could be freely shared.

Why Free Software?

The main goal was to create a computer operating system that was entirely free software. Stallman wanted computer users to have four important freedoms:

  • To study how the software works by looking at its code.
  • To share the software with other people.
  • To change the software to make it better.
  • To share their changed versions of the software.

This idea was explained in a document called the GNU Manifesto in March 1985.

Building a Portable System

Stallman had experience with an old operating system called Incompatible Timesharing System (ITS). It stopped working when the computers it ran on became old. This made him realize that a new system needed to work on many different computers.

So, GNU was built using programming languages like C and Lisp. It was also designed to work like Unix. At that time, Unix was a popular system, but it was proprietary. This meant you had to pay for it and couldn't freely change it. Unix was built in parts, which made it easier for GNU to create its own free versions of those parts.

How GNU Was Built

Many parts of GNU had to be written from scratch. But some existing free software was also used. Examples include the TeX system for making documents and the X Window System for graphics.

Most of GNU was created by volunteers. Some worked in their free time. Others were paid by companies or schools. In October 1985, Stallman started the Free Software Foundation (FSF). This group hired developers to write more software for GNU.

As GNU became more well-known, companies started helping. They would contribute to development or sell GNU software. One of the most successful was Cygnus Solutions, which is now part of Red Hat.

Parts of GNU

The basic parts of GNU include important tools like:

  • The GNU Compiler Collection (GCC): This turns code you write into programs your computer can understand.
  • The GNU C library (glibc): This provides basic functions for programs.
  • GNU Core Utilities (coreutils): These are essential tools for everyday tasks, like copying files.

Other important GNU tools are the GNU Debugger (GDB) for finding errors in code and the GNU Bash shell for giving commands to the computer. Many GNU programs also work on other operating systems like BSD and macOS.

GNU programs are often seen as very reliable. As of June 2024, there are 394 active GNU software packages.

GNU as an Operating System

An operating system is a set of programs that manages a computer's hardware and software. It handles things like running programs and managing files. The GNU project creates its own core parts (called kernels). This allows for pure GNU operating systems. However, GNU tools are also used with other kernels.

Kernels Maintained by GNU

Parabola12
Parabola GNU/Linux-libre is an example of a free GNU/Linux system.

GNU Hurd

The original kernel for the GNU Project is called GNU Hurd. This was the main focus of the Free Software Foundation (FSF) for a long time.

In 2015, a version of Debian GNU/Hurd was released. This meant GNU had all the parts needed for a complete operating system. However, Hurd is still being developed and is not yet ready for everyday use by most people.

Linux-libre

In 2012, a special version of the Linux kernel became an official part of the GNU Project. It's called Linux-libre. This version has had all non-free parts removed.

The GNU Project supports using Linux-libre with GNU tools. Some operating systems that do this are Trisquel, Parabola GNU/Linux-libre, PureOS, and GNU Guix System.

GNU with Other Kernels

Trisquel 11.0
Trisquel is another example of a free GNU/Linux system.

Because the Hurd kernel is still under development, GNU is often used with other kernels. The most common is the Linux kernel.

There's a big discussion about what to call systems that use GNU tools with the Linux kernel. The FSF believes these systems should be called GNU/Linux. This is because the GNU tools make the kernel into a full, usable operating system. Many people agree, including Debian, a very popular Linux distribution, which calls itself Debian GNU/Linux.

Copyright and GNU Licenses

The GNU Project suggests that people who contribute to GNU software give their copyright to the Free Software Foundation. This helps the FSF make sure the software stays free.

Richard Stallman created a license called the GNU General Public License (GPL). He wanted to make sure users had the freedom to share and change free software. He wrote this license after some disagreements about software code.

Before 1989, each GNU program had its own license. Then, the FSF created a single GPL license that could be used for all their software. This license also became popular for many other free software programs.

The GPL gives everyone who gets a program the right to:

  • Run it.
  • Copy it.
  • Change it.
  • Share it.

It also stops them from adding new rules that would limit these freedoms. This idea is called copyleft.

In 1991, the GNU Lesser General Public License (LGPL) was created. This allowed the GNU C Library to be used with proprietary software. Also in 1991, version 2 of the GNU GPL was released. In 2000, the GNU Free Documentation License (FDL) was made for documentation. The GPL and LGPL were updated to version 3 in 2007. These updates added rules to protect users from hardware that tries to stop them from running changed software.

Many projects, like the Linux kernel, use GNU's licenses.

Official gnu
The first GNU logo, drawn by Etienne Suvasa.

The logo for GNU is a gnu head. The first version was drawn by Etienne Suvasa. Now, a simpler and bolder version by Aurelio Heckert is usually used. You can see it on GNU software and in documents about the GNU Project. The Free Software Foundation also uses it.

Gnu-30-banner-without-background
The logo for GNU's 30th anniversary.

In September 2013, the Free Software Foundation made a special version of the logo. This was to celebrate the 30th anniversary of the GNU Project.

See also

  • Free software movement
  • History of free and open-source software
  • List of computing mascots
  • Category:Computing mascots
kids search engine
GNU Facts for Kids. Kiddle Encyclopedia.