De flesta människor, även människor som pysslar med Linux, förstår inte riktigt skillnaden mellan Linux, GNU/Linux och GNU-verktygskedjan, men skillnaderna är viktiga när du tänker på vissa typer av mjukvaruberoenden.
Linux och GNU
Linux följer av en utvecklingskedja som började med Unix. Som sådan är mycket av Linux utformad som, och kan till och med innehålla Unix-kod.
GNU var dock tänkt av dess skapare, Richard Stallman, att vara ett helt fritt och oberoende operativsystem som inte använder samma kodbas eller licensnormer som Unix eller Linux. De två är separata projekt. Typ.
GNU/Linux
Utmaningen med GNU-projektet är dock att dess kärna - kärnmjukvaran som interagerar med hårdvaran och koordinerar alla andra applikationer - ännu inte är redo för produktion. GNU Hurd-kärnan, som släpptes i förproduktionstillstånd 2015, är fortfarande inte redo för bästa sändningstid.
Lösningen? Linux. Linux-kärnan, i form av Linux-Libre, blev en del av GNU-projektet. Således kör GNU Linux-kärnan, eller GNU/Linux.
The GNU Toolchain
En GNU-distribution kör vanligtvis en Linux-kärna, även om GNU Hurd förblir tillgänglig för icke-uppdragskritiska tester. Det som dock skiljer en GNU-distribution från vilken annan Linux-distribution som helst är integrationen av GNU-verktygskedjan, en serie på flera hundra program som är gratis och öppen källkod och stödjer utvecklingen av ny, fri programvara.
Vanliga element i GNU-verktygskedjan inkluderar GNU Make, GNU C-biblioteket, GNU Debugger och GNU-byggsystemet.
Andra GNU-paket
Applikationer, inklusive grafiska appar avsedda för slutanvändarinteraktion, kan vara en del av GNU-paraplyet om de följer de filosofiska riktlinjerna som fastställts av Stallman. Vanliga GNU-familjapplikationer inkluderar:
- TexInfo: Ett språk och ett program för att visa teknisk dokumentation.
- GNU Emacs: Ett dokumentbearbetningssystem.
- GNOME: En skrivbordshanterare som ger det grafiska användargränssnittets grundläggande utseende och känsla.
- GNU Octave: En statistikmiljö som är modellerad efter Matlab.
- GNU He alth: En elektronisk journal för läkare och sjukhus.
- GnuCash: Ett personligt ekonomisystem.