Loading AI tools
dibattito sull'utilizzo dell'espressione "GNU/Linux" Da Wikipedia, l'enciclopedia libera
La controversia sul nome GNU/Linux, in ambito informatico, indica il dibattito sull'utilizzo dell'espressione "GNU/Linux" per etichettare un sistema operativo basato su GNU (il sistema operativo unix-like ideato da Richard Stallman nel 1984[1]) utilizzante Linux (il kernel per sistemi operativi unix-like ideato da Linus Torvalds nel 1991[2]).
Il dibattito ha origine dopo la nascita del sistema operativo GNU, con la sua rapida diffusione grazie all'adozione del kernel Linux. Nello specifico, il movimento open source ha sempre storicamente preferito chiamare l'intero sistema operativo semplicemente "Linux" o comunque dando poca importanza a dibattiti sul nome,[3][4] mentre il movimento del software libero lo ha sempre dichiarato inappropriato per riferirsi all'intero sistema, preferendo appunto GNU/Linux.[5][6][7][8]
Quando Richard Stallman decise di iniziare a scrivere GNU, l'intento era di portare il concetto di libertà di parola nell'ambito del software.[1] Il progetto GNU e la stessa Free Software Foundation nacquero di conseguenza per favorire l'adozione e lo sviluppo di software libero e difendere la libertà degli utenti.[9]
All'epoca, uno dei tasselli mancanti a GNU per essere completo, era un kernel. Il progetto GNU aveva previsto di iniziare a svilupparne uno, un microkernel, ma il progetto si rivelò molto complesso da realizzare e solo qualche decina d'anni più tardi lo si vide utilizzabile (vedesi GNU Hurd e Debian GNU/Hurd).[10]
Parallelamente agli albori del kernel del progetto GNU, nel 1991 veniva pubblicata la prima versione funzionante del kernel monolitico ideato da Linus Torvalds il quale scelse di coprire Linux sotto la licenza libera GNU General Public License v2. In questo modo fu possibile includere Linux nel sistema operativo GNU, rendendolo finalmente un sistema operativo completo.[9][11]
Nel 1992 la distribuzione Yggdrasil adottò il nome "Linux/GNU/X", mentre si iniziò ad adottare il termine "GNU/Linux" principalmente dopo il 1994 con la nascita di Debian GNU/Linux che aderì alle richieste della Free Software Foundation, dato che quest'ultima collaborò allo sviluppo di Debian.[9][12][13]
Nel maggio del 1996, Stallman pubblicò Emacs 19.31, indicando come sistema operativo i seguenti sinonimi: "Lignux", "Linux", "Linux-based GNU system" (sistema GNU basato su Linux) e "GNU/Linux system". In seguito, Stallman usò esclusivamente "GNU/Linux". Fu nello stesso anno che Torvalds dichiarò di non avere nulla in contrario a sentire "Linux" soltanto per riferirsi al suo kernel[senza fonte], e non aveva nulla in contrario affinché si usasse "GNU/Linux" «o altri modi» per chiamare l'intero sistema operativo (evitando termini poco professionali come "Lignux"), ma aggiunse che per quanto lo riguardava avrebbe continuato a chiamare "Linux" l'intero sistema.[14]
Ai giorni nostri ci si riferisce all'intero sistema operativo arbitrariamente fra "Linux" o "GNU/Linux", sebbene la prima forma sia molto più diffusa, soprattutto tra gli appassionati.
La Free Software Foundation ritiene che il termine "Linux" sia inappropriato per parlare di un sistema operativo, per diversi motivi. Per una questione di credito, il solo "Linux" non aiuterebbe gli utenti ad entrare in contatto con la filosofia originaria con cui è stato creato il sistema operativo GNU, ovvero alla filosofia del software libero. Non è raro che vi siano «utenti GNU che non hanno mai sentito parlare di GNU»[8] pur utilizzandolo.
«Chiamare il sistema GNU/Linux riconosce il ruolo che il nostro idealismo ha avuto nella creazione della nostra comunità, e aiuta la gente a riconoscere l'importanza pratica di questi ideali.»
In aggiunta dire «sistema Linux» sarebbe semanticamente scorretto dato che Linux è un kernel per sistemi operativi unix-like e non è un sistema operativo unix-like.[8][15] Questa confusione è maggiore nel caso delle cosiddette varianti GNU, ovvero sistemi operativi basati sul sistema operativo GNU ma nei quali non è presente il kernel Linux, per esempio: Debian GNU/kFreeBSD, GNU/OpenBSD, GNU/Hurd e NexentaOS.
Altro argomento a favore di "GNU/Linux" è che il kernel di Torvalds è solo una piccola parte di un sistema operativo completo. Tuttavia, lo stesso Linus Torvalds ha sempre preferito chiamare soltanto "Linux" l'intero sistema operativo.[14]
«Quindi, se tu dovessi scegliere un nome per il sistema, basandoti su chi ha scritto i programmi del sistema, la scelta più appropriata sarebbe GNU. Ma noi non crediamo che questa sia la maniera migliore di considerare la questione. Il Progetto GNU non era, e non lo è tuttora, un progetto per sviluppare tanti singoli pacchetti software. [...] Molte persone hanno dato grandi contributi al software libero presente nel sistema, e meritano tutti di essere apprezzati. Ma il motivo per cui esso costituisce un sistema integrato — e non solo un insieme di comodi programmi — è che il Progetto GNU è nato per essere uno. Noi stilammo una lista di programmi necessari per realizzare un sistema libero completo e scrivemmo, noi stessi o tramite i contributi di altre persone, tutto ciò che era contenuto nella lista.»
La normale definizione di "sistema operativo" include sia il kernel — lo specifico sottosistema che si interfaccia direttamente con l'hardware — che il software d'interfacciamento con l'utente e con le applicazioni software che controllano il computer. Inoltre, sia il nome "GNU" che il nome "Linux" sono intenzionalmente legati al nome "Unix", nel quale è stato sempre incluso concettualmente nella libreria del C, e i vari strumenti di utilità e lo stesso kernel.
Particolare importanza in un sistema di tipo Unix riveste la libreria C. Per i sistemi GNU/Linux tale libreria è glibc, la libreria C GNU, alternativamente chiamata libc6. Analizzando le dipendenze di tale libreria in una qualsiasi distribuzione di GNU/Linux si scopre che da essa dipendono quasi tutti i pacchetti del sistema operativo, le applicazioni e gli strumenti di sistema. Di norma i programmi su GNU/Linux vengono compilati e linkati ad una specifica versione di glibc. Questo include quindi glibc nei requisiti per la compatibilità binaria tra le diverse distribuzioni GNU/Linux mentre la versione del kernel piuttosto raramente è coinvolta in tali requisiti. Infine è principalmente attraverso la libreria glibc che i sistemi GNU/Linux possono rispondere alle specifiche POSIX.
Va considerato che i componenti di un tipico sistema GNU/Linux possono essere assemblati ad altri per costituire sistemi differenti. Esistono sistemi che adottano GNU ma non il kernel Linux, come il già citato Debian GNU/kfreebsd. Esistono anche sistemi che adottano il kernel Linux, ma non contengono i componenti GNU. Mentre però un sistema GNU/kfreebsd è sostanzialmente compatibile con un sistema GNU/Linux (tanto che, l'utente e il programmatore, possono anche ignorare le differenze trovandosi a lavorare con gli stessi programmi, le stesse librerie, e gli stessi strumenti di sviluppo) un sistema basato su Linux ma non su GNU è, in genere, molto differente da una tipica distribuzione GNU/Linux – e spesso con essa incompatibile. Android, il sistema operativo sviluppato da Google è l'esempio più chiaro di un sistema basato su Linux che ha differenze molto marcate rispetto a GNU/Linux.
Nel 1991, nelle note di distribuzione di Linux delle versioni da 0.01 a 0.11 (che venne distribuito sotto licenza GPL solo dalla versione 0.12 in poi) Torvalds scrisse:
L'uso della parola "Linux", spesso, si riferisce al kernel, al sistema operativo, e alle intere distribuzioni, creando spesso confusione sulla distinzione fra le tre componenti. Molti dei pacchetti GNU importanti sono tipicamente inclusi come parte delle distribuzioni GNU/Linux. I canali informativi, spesso, fanno delle affermazioni erronee, dichiarando, ad esempio, che l'intero sistema operativo Linux (piuttosto che il semplice kernel) fu scritto da Torvalds nel 1991; che Torvalds dirige lo sviluppo di altre componenti, come interfacce grafiche o strumenti GNU; oppure che le nuove versioni del kernel portano a dei miglioramenti visibili immediatamente all'utente, similmente a quanto accade con nuove versioni di sistemi operativi proprietari come Microsoft Windows, in cui oltre al kernel, spesso cambiano tante altre cose di contorno.
A causa di questa confusione, accuse legali e campagne condotte da PR dirette apparentemente verso il kernel, come quelle lanciate da SCO Group o da Alexis de Tocqueville Institution (AdTI), sono state male interpretate da molti commentatori, i quali assumevano che l'intero sistema operativo fosse stato preso di mira. Queste organizzazioni sono state anche accusate di aver deliberatamente coltivato questa confusione:
Utilizzare il solo termine Linux per identificare l'intero sistema operativo (quando lo stesso termine è usato anche per identificare una parte di esso) causa delle confusioni, e obbliga i sostenitori del nome Linux (usato per identificare tutto il sistema operativo) a chiamare kernel Linux – quella parte che ha in realtà il nome Linux – e non kernel del sistema Linux come sarebbe più logico.
"Linux" è da tantissimo tempo un nome molto diffuso, e oramai gran parte delle persone usano questo termine per riferirsi all'intero sistema operativo; riferimenti a controversie sulla denominazione appaiono con scarsa frequenza sui principali canali informativi. Il termine "Linux" assume una maggiore importanza storica, in quanto rappresenta il nome che Torvalds usò per il sistema combinato sin dal 1991, mentre Stallman iniziò a chiedere agli utenti di chiamare il sistema "GNU/Linux" verso la metà degli anni novanta, quando il termine "Linux" era già divenuto popolare. "Linux" è più breve e facile da pronunciare di "GNU/Linux".
Eric S. Raymond ha scritto (in relazione a "Linux" nel Jargon File):
Alcuni hanno l'impressione che l'insistenza di Stallman sull'uso del nome combinato sia un tentativo di prendersi gran parte dei meriti del Linux, sull'onda del suo successo. Un editoriale nel Linux Journal (#30, ottobre 1996) speculava:
Lo stesso articolo cita Linus Torvalds che disse:
Con simili argomentazioni, il dibattito sul nome del sistema operativo viene talvolta caratterizzato come una banale distrazione; ad esempio, John C. Dvorak (PC Magazine, 5 marzo 2002) scrisse:
Molti utenti e venditori, che preferiscono il nome "Linux", puntano all'inclusione di strumenti esterni al kernel non-GNU, come l'Apache HTTP Server, il sistema X Window o il K Desktop Environment nei sistemi operativi per l'utente finale, basati sul kernel Linux. Nessuno può avere una precisa conoscenza delle centinaia di sviluppatori e progetti che hanno contribuito alla realizzazione di una completa distribuzione — GNU è solo uno di questi, sebbene uno di grande importanza. Linux, quindi, può essere considerato come una conveniente sineddoche per una completa distribuzione del sistema operativo.
La Free Software Foundation è consapevole dei limiti nel discorso della denominazione in base ai meriti dei contributi, ma giunge a delle differenti conclusioni:
Nell'uso corrente, il nome "Linux" di per sé è spesso usato come esempio standard del concetto di software o altri contenuti che possono essere liberamente modificati e ridistribuiti, anche se tali usi, generalmente, non menzionano specificamente GNU o "software libero".
In alcune circostanze, il kernel Linux è usato con pochi o nessun componente di GNU (ad es. Android o un'applicazione che viene eseguita direttamente su un kernel minimale, oppure con uClibc e BusyBox in luogo degli strumenti GNU). Tipicamente, questi sono dei piccoli sistemi dedicati, come dei prodotti firewall o altre applicazioni. Chiunque, inclusa la FSF, è d'accordo nel non considerare appropriato l'uso del nome "GNU/Linux" in tali circostanze. Quasi tutti i sistemi desktop e server basati su Linux usano componenti GNU, specialmente glibc, la libreria C di GNU.
In alcune circostanze il nome Linux non è un pacchetto del sistema operativo e quindi non può essere utilizzato come termine per identificarlo. Esistono infatti casi di distribuzioni e sistemi operativi che nell'uso comune differiscono da un tipico sistema Linux o GNU/Linux sostanzialmente solo per l'utilizzo di un kernel diverso. Ad esempio: Debian GNU/kFreeBSD, GNU/OpenBSD, GNU/Hurd e NexentaOS. In tali sistemi operativi l'utente potrebbe benissimo non accorgersi della diversità di tale sistema da uno con kernel Linux, infatti tutti i programmi utente sono identici e funzionano in pratica allo stesso modo. Vi sono inoltre diversi sistemi di tipo Unix come FreeBSD, OpenBSD, Solaris che sono sostanzialmente differenti da un sistema GNU/Linux pur appartenendo alla medesima famiglia dei sistemi Unix-like. In questi sistemi non solo il kernel, ma anche le utility e le librerie fondamentali sono proprie e non mutuate da un sistema GNU.
Ogni distribuzione basata sul kernel Linux e su software GNU identifica il proprio prodotto in modo diverso tenendo conto di aspetti commerciali, storici e ideologici. La maggior parte tra le più diffuse distribuzioni utilizza il nome Linux per identificare il proprio sistema operativo, oppure lo definisce "basato su Linux", con lievi differenze. Allo stesso modo, a parte i progetti direttamente collegati con GNU e con la Free Software Foundation, i principali sviluppatori di software open source e libero, utilizzano il nome Linux per definire genericamente il kernel, il sistema operativo, la piattaforma o le distribuzioni che adottano il kernel Linux.
Le prime dieci distribuzioni che utilizzano il kernel Linux secondo la classifica stilata dal sito DistroWatch[16] definiscono sé stesse in questo modo:
Altre distribuzioni tra le più note utilizzano il generico nome Linux per identificare il proprio sistema:
Alcuni libri di informatica utilizzano il nome Linux per indicare il sistema nel suo complesso, mentre altri hanno adottato invece il nome GNU/Linux, come proposto da Richard Stallman.
Esempi di testi che utilizzano il nome Linux:
Esempi di testi che utilizzano il nome GNU/Linux:
Seamless Wikipedia browsing. On steroids.
Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.
Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.