GNU/Linux

GNU/Linux (talvolta chiamato brevemente solo Linux) è un sistema operativo libero, costituito dall'integrazione del software GNU con il kernel Linux. 

Tutti coloro che vogliono passare da windows a Linux  dovrebbero leggere questo testo, per capire bene...

Che cos'è GNU?

GNU (acronimo ricorsivo: Gnu is Not Unix) è il progetto avviato da Richard Mathew Stallman nel 1983, che aveva lo scopo di fornire un sistema operativo del tutto libero. In quegli anni Stallman lavorava presso il laboratorio di intelligenza artificiale del MIT e faceva parte di una folta comunità in cui si scambiavano liberamente programmi e ciò succedeva da parecchio tempo ormai. Infatti condividere i programmi (in particolare i sorgenti) è antico come scambiarsi le ricette in cucina.

Gli albori


Al MIT era presente un sistema operativo progettato proprio da questa comunità di hacker, e il compito di Stallman era quello di migliorarlo. Ancora non c'era il concetto di software libero, in quanto questa espressione ancora non esisteva, ma si trattava proprio di questo. Se qualcuno veniva a chiedere il codice di quel sistema, il codice gli veniva reso senza problemi, perché codeste persone potevano a loro volta migliorarlo e quindi condividerlo a loro volta.

Agli inizi degli anni '80 le cose iniziarono a cambiare, la comunità si dissolse e mano a mano il codice non fu più aggiornato e divenne obsoleto. Così fu adottato un nuovo sistema, proprietario, che possedeva delle clausole di non diffusione per il suo utilizzo. Ben presto si diffuse ed impose il motto «Se condividi il software col tuo vicino sei un pirata. Se vuoi modifiche, pregaci di farle». Queste imposizioni erano (e tuttora sono) descritte dalle case produttrici di software come un "diritto naturale", e se così fosse nessuno negherebbe loro questo diritto; ma visto che nessuna carta costituzionale afferma che il copyright sia questo, in realtà si definisce come un monopolio imposto dal governo che limita il diritto degli utenti a effettuare delle copie.

La goccia che fa traboccare il vaso


Stallman allora si trovò davanti ad una terribile scelta morale: abbandonare il mondo dell'informatica oppure unirsi al mondo del software proprietario e, giunto ad una certa età, voltandosi indietro, capire di aver lavorato un'intera vita per costruire barriere tra utenti? La svolta decisiva (si dice) avvenne un giorno, quando nel cercare di far funzionare correttamente una stampante che aveva qualche problema, Stallman si infuriò perché il produttore si rifiutò di fornirgli il codice sorgente del driver.

L'inizio di una nuova era
Decise quindi di iniziare un nuovo progetto che potesse fornire un sistema compatibile con UNIX, ma libero, ed a cui tutti gli utenti avrebbero potuto apportare modifiche e miglioramenti. Un sistema operativo degno di essere chiamato tale, oltre al nucleo base (il kernel) forniva anche interpreti di comandi, assemblatori, compilatori, interpreti di linguaggi, debugger, editor di testo, programmi per la posta e molto altro; Stallman partì con l'idea che anche GNU dovesse possedere tutte queste cose. Per fare ciò, per impedire che il laboratorio pretendesse diritti sul suo progetto, fu costretto a lasciare il MIT, ma i suoi responsabili gli consentirono comunque di continuare ad usufruire dei calcolatori del laboratorio.

I primi programmi e la nascita della GPL


Iniziò a scrivere i primi programmi; nacquero così il famoso compilatore GCC, GDB, potente debugger ed Emacs, uno dei più noti editor, software fortemente utilizzati ancora oggi. Ben presto in molti iniziarono ad interessarsi ad Emacs e si pose il problema di come distribuirlo: all'epoca Stallman era rimasto senza lavoro, decise quindi che avrebbe spedito su nastro Emacs a tutti coloro che non avessero potuto procurarselo via FTP pagando 150 dollari; si pose però un nuovo problema: chiunque avesse ottenuto il suo software, sia via FTP che per posta, avrebbe potuto applicarvi qualche restrizione sulla licenza o addirittura spacciare per proprio il frutto del suo lavoro! Fu così che fu stilata la prima versione della GNU General Public License (GPL); la GPL permette di apportare qualunque modifica al software, di copiarlo e ridistribuirlo, con o senza modifiche, sia gratuitamente che a pagamento. Stallman quindi non la infranse vendendo per posta Emacs, che in seguito venne rilasciato sotto GPL.

Sin da allora, tutto il software prodotto dalla comunità GNU è rilasciato sotto licenza GPL.

Stallman e la comunità che ormai si era fondata intorno a lui, iniziarono a stilare una lista dei compiti: si fece un elenco in ordine di importanze di tutto quello che fosse necessario realizzare per un sistema completo: in questa lista furono inserite anche molte cose apparentemente strane come giochi, "inutility", ecc.

Linux ed il kernel che non c'è


Mano mano furono realizzati tutti i componenti eccetto uno, forse quello più importante: il kernel. Si era infatti deciso di aspettare il rilascio come software libero del micro-kernel Mach, sviluppato dal Carnegie Mellon University, successivamente chiamato Hurd nonostante Stallman desiderasse chiamarlo Alix; questo lavoro però si rivelò estremamente lungo e complicato, così nel 1991 Linus Torvalds rese disponibile il kernel Linux. Poiché sviluppato secondo le specifiche UNIX, tutto il software GNU girava perfettamente con Linux. Da questo connubio casuale prese vita il primo sistema operativo completamente libero: GNU/Linux.

Linux si rivelò un ottimo kernel e così pian piano la comunità perse interesse per Hurd, che però è un progetto ancora vivo: è possibile provarlo tramite una particolare versione di Debian.

Oggi pressoché tutte le distribuzioni offrono sistemi basati su GNU/Linux.

Che cos'è Linux?


Linux è il kernel, ovvero il nucleo centrale, del sistema operativo GNU/linux. Il suo sviluppo è iniziato nel 1991 ad opera di uno studente finlandese, Linus Torvalds, che tuttora ne detiene i diritti d'autore. Oggi, il Linux è software libero, rilasciato sotto licenza GPL.

Grazie alla sua apertura totale verso modifiche esterne, Linux è disponibile praticamente per ogni architettura hardware disponibile.

Che cos'è il software libero?


Un software libero è un software rilasciato con una licenza che permette a chiunque di utilizzarlo e che ne incoraggia lo studio, le modifiche e la redistribuzione; deve inoltre garantire le quattro "libertà fondamentali":

Libertà di eseguire il programma per qualsiasi scopo (chiamata "libertà 0")
Libertà di studiare il programma e modificarlo ("libertà 1")
Libertà di copiare il programma in modo da aiutare il prossimo ("libertà 2")
Libertà di migliorare il programma e di distribuirne pubblicamente i miglioramenti, in modo tale che tutta la comunità ne tragga beneficio ("libertà 3")
Il software libero viene spesso confuso con open source; open source significa che chiunque può avere libero accesso al codice sorgente (da cui open source, "codice sorgente aperto") di un certo software, ma non è detto che si abbia anche la possibilità di modificarlo e ridistribuirlo. Ecco quindi la differenza fondamentale fra le due cose.

Software libero non significa altresì privo di diritto d'autore. A seconda infatti della licenza sotto la quale un software viene pubblicato si possiede o meno la paternità dell'opera:

La licenza BSD è una licenza per software libero compatibile con la GNU GPL in quanto garantisce le quattro libertà fondamentali, ma a differenza di quest'ultima garantisce che il software sia sempre disponibile, modificabile e ridistribuibile per tutti piuttosto che libero nel tempo: questo comporta che chiunque modifichi un software licenziato sotto tale licenza possa ridistribuirlo sotto una licenza completamente diversa, magari più restrittiva, anche senza dover ridistribuire le modifiche apportate al codice sorgente; il software può anche essere incluso in software proprietario.
La licenza MIT: come la licenza BSD, garantisce le quattro libertà del software libero ma non è una licenza copyleft: infatti permette che il codice derivato e non derivato possa essere incluso in software proprietari.
La licenza GNU GPL è una licenza per software libero con diritti d'autore: garantisce la paternità e la libertà del software nel tempo; software proprietario non può includere software licenziato sotto GNU GPL.
Ovviamente, ne esistono molte altre (cfr. Comparazione di licenze libere su Wikipedia)

Esattamente come Richard Stallman fece, finché entro i termini della licenza scelta, il software libero può essere commercializzato.

AkTaRuS.