Aquesta traducció no reflecteix els canvis fets des de 2017-09-04 a l' original anglès.

Podeu donar un cop d'ull a aquests canvis. Vegeu la Guia de traducció per informar-vos sobre la coordinació i publicació de les traduccions d'aquest article.
Contacteu amb l'Equip de traducció per col·laborar en la traducció al català del web de GNU.

Linux i el Sistema GNU

per Richard Stallman

Per més informació vegeu les Preguntes freqüents sobre GNU/Linux i l'article Per què GNU/Linux?

Molts usuaris utilitzen diàriament una versió modificada del sistema GNU sense saber-ho. Per una sèrie de fets, la versió de GNU que s'utilitza àmpliament és coneguda habitualment com a «Linux», sense que molts usuaris siguin conscients que es tracta bàsicament del sistema GNU, desenvolupat pel Projecte GNU.

Hi ha realment un Linux, i aquestes persones l'utilitzen, però Linux no és un sistema operatiu. Linux és el nucli: la part del sistema que facilita els recursos de la màquina als altres programes que s'executen. El nucli és una part essencial d'un sistema operatiu, però sol no serveix de res; només pot funcionar en l'entorn d'un sistema operatiu complet. Linux s'utilitza normalment en combinació amb el sistema operatiu GNU: el conjunt del sistema és bàsicament GNU, amb Linux funcionant com a nucli. Totes les anomenades «Distribucions Linux» són en realitat distribucions de GNU/Linux.

Molts usuaris desconeixen aquesta distinció entre el nucli (Linux) i el sistema complet, que també anomenen «Linux». Aquest ús ambigu del nom no ajuda massa a desfer l'equívoc. Aquests usuaris sovint pensen que Linus Torvalds va desenvolupar tot el sistema operatiu el 1991, amb una mica d'ajuda.

Els programadors generalment saben que Linux és un nucli. Però com que han escoltat generalment que al sistema complet se l'anomena també «Linux», sovint s'imaginen una història que justifiqui aquest nom. Per exemple, molts creuen que un cop Linus Torvalds va acabar d'escriure el nucli, el seus companys van cercar altres programes lliures, i sense cap raó aparent es van trobar que gairebé tot el que calia per a fer un sistema operatiu a l'estil d'Unix ja estava disponible.

Però tot allò que van trobar no era la conseqüència d'un accident: era el sistema GNU. El programari lliure disponible havia esdevingut un sistema complet pel fet que el Projecte GNU havia estat treballant des del 1984 per a fer-ne un. Al Manifest GNU vàrem fixar l'objectiu de desenvolupar un sistema lliure a l'estil d'Unix, anomenat GNU. L'Anunci inicial del Projecte GNU també descriu alguns dels plans originals del sistema GNU. Quan Linux s'estava escrivint, el sistema estava gairebé acabat.

La majoria dels projectes de programari lliure tenen l'objectiu de desenvolupar un programa particular per a una tasca particular. Exemples destacats en són el treball de Linus Torvalds per a escriure un nucli a l'estil d'Unix (Linux); el treball de Donald Knuth per escriure un formatador de textos (TeX); o el treball de Bob Schifler per a desenvolupar un sistema de finestres (X Window). És natural mesurar la contribució a aquests tipus de projectes pels programes específics que s'aporten al projecte.

Si intentéssim mesurar la contribució del Projecte GNU d'aquesta manera, què en podríem concloure? Un venedor de CD-ROMs hagués trobat que a la seva «distribució Linux», el programari GNU era el component principal, essent la seva participació al voltant del 28% del codi font, i aportant-hi alguns dels principals components essencials, sense els quals no hi hauria sistema operatiu. Linux participava amb un 3% del codi font. Per tant, si es cerqués un nom per al sistema basant-se en qui va escriure els programes del sistema, el nom més apropiat seria «GNU».

Però no creiem que aquesta sigui la manera correcta d'afrontar la qüestió. El Projecte GNU no va ser, i no és, un projecte per desenvolupar programari específic. No era un projecte per desenvolupar un compilador de C, tot i que el vam fer. No era un projecte per desenvolupar un editor de textos, tot i que també en vam desenvolupar un. La intenció del Projecte GNU era la de desenvolupar un sistema operatiu complet i lliure a l'estil d'Unix: GNU.

Molta gent ha fet grans contribucions als programes lliures del sistema, i totes es mereixen un reconeixement. Però la finalitat era un sistema integrat, i no només una col·lecció de programes útils. El Projecte GNU es va iniciar precisament per a fer-ne un. Vam elaborar una llista dels programes necessaris per a crear un sistema lliure complet, i vam cercar, escriure o trobar algú que escrigués tot el que figurava a la llista. Vam escriure components essencials però sense cap mena d'atractiu (1), perquè sense ells no tindríem un sistema complet. Alguns dels nostres components, com les eines de programació, es van popularitzar entre els programadors, però també vam escriure molts components que no eren eines (2). Fins i tot vam desenvolupar un joc d'escacs, GNU Chess, perquè un sistema complet també necessita jocs.

A principis dels 90 disposàvem de tot el sistema llevat del nucli. També havíem començat a treballar en un nucli, el GNU Hurd, que funciona sobre Mach. El desenvolupament d'aquest nucli ha estat una mica més dur del que ens esperàvem; el nucli GNU Hurd va començar a ser fiable el 2001, però encara falta per a què estigui llest per al públic en general.

Afortunadament no vam haver d'esperar que Hurd estigués enllestit, perquè Linux ja estava disponible. Quan el 1992 Linus Torvalds va publicar Linux com a programari lliure, va omplir el buit més important del sistema GNU. La gent podia llavors unir Linux i el sistema GNU per tal d'obtenir un sistema operatiu complet i lliure: una versió del sistema GNU que contenia Linux. En altres paraules, un sistema GNU/Linux.

Posar-los tots dos junts sona senzill, però no va ser una tasca trivial. Alguns components de GNU (3) necessitaven canvis substancials per funcionar amb Linux. Integrar un sistema complet en una distribució que hauria de funcionar «fora de la capsa» també va significar molta feina. Calia resoldre com instal·lar i iniciar el sistema, un problema que encara no havíem afrontat perquè encara no havíem arribat a aquell punt. La gent que desenvolupava les diverses distribucions del sistema van fer una contribució cabdal. Però era una feina que segurament, per la seva naturalesa, l'hagués acabat fent algú.

El Projecte GNU dóna suport als sistemes GNU/Linux de la mateixa manera que ho fa amb el sistema GNU, fins i tot finançant-los. La FSF va finançar la reescriptura de les extensions relacionades amb Linux de la biblioteca GNU C, de tal manera que ara estan ben integrades, i els sistemes GNU/Linux més nous utilitzen la versió actual de la biblioteca sense canvis. La FSF també va finançar els inicis del desenvolupament de la distribució Debian GNU/Linux.

Actualment hi ha moltes variants diferents del sistema GNU/Linux (sovint se les anomena «distros»). La majoria inclouen programari no lliure; els seus desenvolupadors segueixen més la filosofia associada amb Linux que la de GNU. Però també hi ha distros de GNU/Linux completament lliures. La FSF dóna suport a gNewSense.

Convertir en lliure una distribució de GNU/Linux no consisteix només en eliminar diversos programes no lliures. Avui dia, la versió corrent de Linux conté també programes no lliures. Aquests programes es carreguen per activar dispositius quan s'inicia el sistema i s'inclouen com a llargues sèries de números al "codi font" de Linux. De fet, mantenir lliure una distribució de GNU/Linux implica ara també mantenir una versió lliure de Linux

Tant si utilitzeu GNU/Linux com si no, no induïu a la confusió emprant la paraula «Linux» de forma ambigua. Linux és el nucli, un dels principals components essencials del sistema. El sistema en conjunt es més o menys el sistema GNU, amb Linux afegit. Quan parleu d'aquesta combinació, anomeneu-la si us plau «GNU/Linux».

Si voleu posar un enllaç per oferir més informació sobre «GNU/Linux», aquesta pàgina i http://www.gnu.org/gnu/the-gnu-project.html són bones opcions. Si parleu del nucli Linux i voleu posar un enllaç per oferir més informació, http://foldoc.org/linux és una bona adreça.

Postdates

A més de GNU, un altre projecte ha produït, de manera independent, un sistema operatiu lliure a l'estil d'Unix. Aquest sistema és conegut com a BSD, i va ser desenvolupat a la Universitat de Califòrnia a Berkeley. No era un sistema lliure als anys 80, però va esdevenir lliure a principis dels 90. Els sistemes operatius lliures que existeixen avui dia (4) són gairebé sempre variants del sistema GNU o del sistema BSD.

De vegades la gent pregunta si BSD també és una versió de GNU, com GNU/Linux. Els desenvolupadors del sistema BSD es van plantejar fer lliure el seu programari seguint l'exemple del Projecte GNU, i les crides d'activistes de GNU van contribuir a convèncer-los, però el seu codi té poc a veure amb GNU. Els sistemes BSD utilitzen avui dia alguns programes GNU, igual que el sistema GNU i les seves variants utilitzen alguns programes BSD. Però si els considerem en conjunt, es tracta de dos sistemes diferents que han evolucionat per separat. Els desenvolupadors de BSD no van escriure un nucli ni el van afegir al sistema GNU, de manera que un nom com GNU/BSD no tindria sentit. (5)

Notes:

  1. Aquests components essencials però poc atractius inclouen el compilador GNU GAS i l'enllaçador GLD, que ara són part dels paquets GNU Binutils), GNU tar i d'altres.
  2. Per exemple, la interfície BASH, l'intèrpret Ghostscript i la biblioteca GNU C library no són eines de programació. El mateix passa amb GNUCash, GNOME i GNU Chess.
  3. Per exemple, la biblioteca GNU C.
  4. Des que aquest article es va escriure, s'ha desenvolupat un sistema operatiu a l'estil de Windows gairebé lliure, però tècnicament no té res a veure amb GNU o Unix, de manera que no afecta a aquesta qüestió. La major part del nucli de Solaris ha esdevingut lliure, però si volguéssiu fer a partir d'ell un sistema lliure hauríeu d'integrar-lo amb GNU o BSD, a més d'afegir al nucli les parts que falten.
  5. Per altra banda, en els anys que han passat des que aquest article es va escriure, s'ha adaptat la biblioteca GNU C a algunes versions del nucli FreeBSD, cosa que ha permès combinar GNU amb aquest nucli. Com passa amb GNU/Linux, hi ha fins i tot variants de GNU que s'anomenen GNU/kFreeBSD i GNU/kNetBSD en funció del nucli del sistema. Els usuaris corrents que treballen en els típics escriptoris gràfics difícilment podran distingir entre GNU/Linux i GNU/*BSD.