GNU
GNU ("GNU is Not Unix") è un sistema operativo creato nel 1983 da Richard Stallman e sviluppato dalla comunità che aderisce al progetto GNU. Dato che il kernel del sistema GNU (HURD) non è ancora pronto per poter essere distribuito per un uso quotidiano viene solitamente sostituito da altri kernel già maturi come per esempio Linux.
La parola GNU si pronuncia /'gnu/ (gh-nu) e non /'ɲu/ù[1].
Indice |
[modifica] Storia
Richard Stallman cominciò la sua carriera al MIT nel 1971, in un periodo in cui il software, usato in modo molto simile all'attuale software libero (senza però nessuna regola scritta che ne sancisse le modalità d'uso, cioè senza nessuna licenza), veniva utilizzato da molte compagnie private e i programmatori non erano quasi mai soggetti a un accordo di non divulgazione. Già nel 1980 la quasi totalità del software in circolazione era stato sostituito dal software proprietario. Stallman, cominciando a confrontarsi con le conseguenze del cambiamento, si rese conto che l'avvento del software proprietario ha l'effetto di impedire ai programmatori di collaborare tra loro.
Nel 1983 Richard Stallman lascia il suo lavoro al MIT e comincia a sviluppare un sistema operativo che permettesse a chiunque di vedere il codice, di modificarlo, di eseguirlo e di condividerlo con gli altri liberamente. L'annuncio originale (27 settembre 1983) è seguito dal rilascio della prima versione del Manifesto GNU[2]. Lo sviluppo del sistema inizia nel 1984.
Nel 1992 il Sistema GNU aveva al suo interno un editor di testi estensibile (Emacs), un compilatore, il GCC (GNU C Compiler), con funzioni di ottimizzazione e la maggior parte delle librerie e delle utility di un sistema Unix standard. Era praticamente un sistema completo, non era ancora pronto il kernel chiamato HURD, il cui sviluppo era cominciato nel 1986, prima sulla base di TRIX (un kernel Unix realizzato al MIT) e successivamente (1988) sulla base di Mach (sviluppato alla Carnegie Mellon University).
Si decise allora di abbinare il software GNU al kernel Linux per creare un unico sistema chiamato GNU/Linux. Il kernel Linux è stato scritto nel 1991 da Linus Torvalds e distribuito anch'esso sotto licenza GNU GPL;
Lo sviluppo di HURD è tuttora in corso, ma non ha ancora raggiunto una maturità ed una stabilità che ne permette l'uso in un ambiente di produzione.
[modifica] Kernel
| Per approfondire, vedi la voce Varianti GNU. |
Attualmente il sistema GNU è stato abbinato a diversi kernel, tra i quali:
- il kernel Darwin (il sistema operativo prende il nome di GNU/Darwin);
- il kernel Linux (il sistema operativo prende il nome di GNU/Linux);
- il kernel NetBSD (il sistema operativo prende il nome di GNU/NetBSD);
- il kernel FreeBSD (il sistema operativo prende il nome di GNU/kFreeBSD);
- il kernel Hurd (il sistema operativo prende il nome di GNU/HURD);
- il kernel Solaris (il sistema operativo prende il nome di NexentaOS).
[modifica] Principali software del sistema GNU
- GNU Bash (Gnu bourne again shell): la riga di comando del sistema GNU. Il suo scopo è consentire l'esecuzione dei software.
- gcc (GNU Compiler Collection): è la suite di compilatori software più diffusi; supporta numerosi linguaggi di programmazione (tra cui C, C++, Objective C, Fortran, Java e Ada)
- gdb (GNU debugger): ottimo software per effettuare il controllo di flusso su un programma al fine di trovare bug o anomalie implementative
- GNU Emacs (Gnu editor macros; ne circolavano anche interpretazioni scherzose, secondo le quali significava "Eight Megabytes And Constantly Swapping", oppure "Emacs Makes A Computer Slow", con riferimento alle prestazioni delle prime versioni): editor testuale estensibile tramite macro scritte in linguaggio lisp
- fileutils e coreutils: sono dei pacchetti che contengono i software per riga di comando più diffusi, atti a compiere operazioni basilari come copia di file, creazione e scrittura di file, creazione di collegamenti ecc.
- Glibc (GNU C Library): la libreria standard del C, utilizzata nei programmi per GNU/Linux, ma non solo.
- GNOME (GNU Network Object Model Environment): desktop environment (ambiente grafico) dotato di un'interfaccia estremamente intuitiva e personalizzabile.
- GIMP (GNU Image Manipulation Program): un programma libero di fotoritocco che permette di creare e modificare immagini raster.
[modifica] Note
[modifica] Voci correlate
- Progetto GNU
- Copyleft
- Copyright
- Free Software Directory
- Linus Torvalds
- Linux
- Linux (kernel)
- Open source
- Software libero
- Software proprietario
[modifica] Altri progetti
Wikisource contiene opere originali di o su GNU
Wikimedia Commons contiene file multimediali su GNU
[modifica] Collegamenti esterni
- Sito ufficiale GNU al cui interno è possibile trovare molti articoli sul progetto e un archivio di programmi che sono Software Libero
- (EN) Sito di Richard Stallman.