Useimmat ihmiset, jopa ihmiset, jotka harrastavat Linuxia, eivät aivan ymmärrä eroa Linuxin, GNU/Linuxin ja GNU-työkaluketjun välillä, mutta eroilla on merkitystä, kun ajattelet tietynlaisia ohjelmistoriippuvuuksia.
Linux ja GNU
Linux on seurausta kehitysketjusta, joka alkoi Unixista. Sellaisenaan suuri osa Linuxista on suunniteltu ja saattaa jopa sisältää Unix-koodia.
GNU:n suunnitteli kuitenkin sen luoja Richard Stallman täysin vapaaksi ja riippumattomaksi käyttöjärjestelmäksi, jossa ei käytetä mitään samaa koodikantaa tai lisenssinormeja kuin Unix tai Linux. Nämä kaksi ovat erillisiä projekteja. Tavallaan.
GNU/Linux
GNU-projektin haasteena on kuitenkin se, että sen ydin - ydinohjelmisto, joka on vuorovaikutuksessa laitteiston kanssa ja koordinoi kaikkia muita sovelluksia - ei ole vielä valmis tuotantoon. GNU Hurd -ydin, joka julkaistiin esituotantotilassa vuonna 2015, ei ole vieläkään valmis parhaaseen katseluun.
Ratkaisu? Linux. Linux-ytimestä, Linux-Libren muodossa, tuli osa GNU-projektia. Siten GNU, joka käyttää Linux-ydintä, tai GNU/Linux.
GNU-työkaluketju
GNU-jakelu käyttää tyypillisesti Linux-ydintä, vaikka GNU Hurd on edelleen saatavilla ei-tehtäväkriittiseen testaukseen. Se, mikä erottaa GNU-jakelun kaikista muista Linux-jakeluista, on kuitenkin GNU-työkaluketjun integrointi, useita satoja ilmaisia ja avoimen lähdekoodin ohjelmia, jotka tukevat uusien, ilmaisten ohjelmistojen kehitystä.
GNU-työkaluketjun yleisiä elementtejä ovat GNU Make, GNU C Library, GNU Debugger ja GNU build system.
Muut GNU-paketit
Sovellukset, mukaan lukien loppukäyttäjien vuorovaikutukseen tarkoitetut graafiset sovellukset, voivat olla osa GNU-sateenvarjoa, jos ne noudattavat Stallmanin määrittelemiä filosofisia ohjeita. Yleisiä GNU-perhesovelluksia ovat:
- TexInfo: Kieli ja ohjelma teknisten asiakirjojen näyttämiseen.
- GNU Emacs: Asiakirjojen käsittelyjärjestelmä.
- GNOME: Työpöydän hallintaohjelma, joka tarjoaa graafisen käyttöliittymän ulkoasun ja -tuntuman.
- GNU Octave: Matlabin mallin mukainen tilastoympäristö.
- GNU He alth: Sähköinen sairauskertomus lääkäreille ja sairaaloille.
- GnuCash: Henkilökohtainen rahoitusjärjestelmä.