GNUプロジェクト
今日、GNUの安定版(およびGNUの派生)はGNUパッケージとUnix系Linuxカーネルとを組み合わせることで実行できる。GNUプロジェクトはこれをGNU/Linuxと呼び、決定的な特徴は以下の組み合わせである:
GNUパッケージ(GNU Hurdを除く)GNUパッケージは多数のオペレーティングシステムツールとユーティリティ(Bash、Coreutils、コンパイラ、ライブラリなど)から構成され、POSIX System Application Program Interface (POSIX.1) で指定された関数を全て実装したライブラリも含んでいる。GCCコンパイラは非常に多くのコンピュータアーキテクチャ用の機械語を生成できる。
Linuxカーネル - このカーネルはプログラムスケジューリング、マルチタスキング、デバイスドライバ、メモリ管理などを実装し、システムを多数のコンピュータアーキテクチャで起動できる。リーナス・トーバルズはGNU General Public Licenseに基づき1992年にLinuxカーネルをリリースしたが、このカーネルはGNUプロジェクトの一部ではない。
カーネルとコンパイラが完成すれば、GNUはプログラム開発用として利用可能であった。GNUの主な目標は他の多くのUNIXシステムのようにアプリケーションを作成することであった。GNUはUNIXプログラムを起動することが可能であったが、UNIXとは異なっていた。GNUはUNIXより長いファイル名とファイルバージョン番号、そして耐衝撃性ファイルシステムを組み込まれた。GNUプロジェクトへ他者からのサポートと参加を得るためにGNU宣言が書かれた。人々はGNUプロジェクトに資金、コンピュータの部品、さらにはコードやプログラムを書くための時間を寄付することができた。
GNUプロジェクトのあらゆる面における起源と開発については、Emacsヘルプシステム内にある詳細な物語で共有されている(これは C-h g でEmacsエディタコマンドdescribe-gnu-projectを起動することで表示される)。この物語はGNUプロジェクトのウェブサイトにある詳細な歴史と同じものである。