StrumentiAltre lingue
|
Linux
L'idea alla base di Tux, la mascotte del kernel Linux, è nata mediante uno scambio di e-mail in una mailing list pubblica.
Linux (o GNU/Linux) è un sistema operativo libero di tipo Unix (o unix-like) costituito dall'integrazione del kernel Linux con elementi del sistema GNU e di altro software sviluppato e distribuito con licenza GNU GPL o con altre licenze libere. Linux è in realtà il nome del kernel sviluppato da Linus Torvalds a partire dal 1991 che, integrato con i componenti già realizzati dal progetto GNU (compilatore gcc, libreria Glibc e altre utility) e da software di altri progetti, è stato utilizzato come base per la realizzazione dei sistemi operativi e delle distribuzioni che vengono normalmente identificate con lo stesso nome. Secondo Richard Stallman, fondatore del progetto GNU, e secondo la Free Software Foundation, la dicitura Linux (senza prefisso "GNU/") per l'intero sistema operativo sarebbe erronea in quanto il nome Linux è attribuibile al solo kernel e il sistema, strutturato a partire dai componenti dell'originale progetto GNU, dovrebbe più propriamente chiamarsi GNU/Linux. Secondo altri e secondo l'uso della maggior parte degli utenti e degli sviluppatori e delle società coinvolti nello sviluppo del sistema operativo e del software ad esso collegato, il nome Linux è ormai divenuto sinonimo di sistema "Linux based", cioè di sistema basato sul kernel Linux (vedi anche Controversia sul nome GNU/Linux) Il nome Linux a dispetto dell'assonanza tra il nome dell'ideatore e quello del sistema (LINus UniX) è da attribuire a Ari Lemke, l'amministratore che rese per primo disponibile Linux su Internet via FTP. In particolare Linux era il nome della directory in cui risiedevano i file del nuovo sistema operativo. Il nome scelto da Torvalds era Freax, una combinazione tra "free", "freak" e "x", per indicare la caratteristica di un sistema Unix-like. Molto conosciuto nell'uso server, Linux gode del supporto di società come IBM, Sun Microsystems, Hewlett-Packard, Red Hat e Novell ed è usato come sistema operativo su una gran varietà di hardware; dai computer desktop ai supercomputer, fino a sistemi embedded come cellulari e palmari. È anche un componente indispensabile del software per server LAMP, che ha raggiunto un'ampia popolarità tra gli sviluppatori web, e che è presente nella maggior parte dei server di tutto mondo. Con l'evoluzione di ambienti desktop come KDE e GNOME, il sistema offre una interfaccia grafica simile a quella di Microsoft Windows o di Mac OS X, più vicina alle esigenze degli utenti meno esperti, rendendo il passaggio da un sistema all'altro meno traumatico e garantendo un'elevata personalizzabilità dell'interfaccia.
[modifica] Storia di Linux[modifica] IniziIl kernel Linux vede la luce nel 1991 grazie al giovane studente finlandese Linus Torvalds che, appassionato di programmazione, era insoddisfatto del sistema operativo Minix (sistema operativo unix-like destinato alla didattica, scritto da Andrew Tanenbaum, professore ordinario di Sistemi di rete all'università di Amsterdam), poiché supportava male la nuova architettura i386 a 32 bit, all'epoca tanto economica e popolare. Così Linus decise di creare un kernel unix con lo scopo di divertirsi e studiare il funzionamento del suo nuovo computer, che era appunto un 80386. Inizialmente Linux (il sistema operativo basato sul kernel programmato da Linus) per girare utilizzava, oltre al kernel di Linus, lo userspace di Minix. Successivamente Linus decise di rendere il sistema indipendente da Minix, anche perché non ne gradiva la licenza che lo rendeva liberamente utilizzabile solo a fini didattici, quindi decise di sostituire quella parte del sistema operativo col software del progetto GNU. Per fare ciò Linus doveva cambiare licenza e adottare la GPL, che tra l'altro considerava buona per il suo sistema operativo a prescindere dal software GNU stesso. E così la licenza cambiò in GPL, e Linux divenne il progetto libero aperto ai contributi esterni che tutti conosciamo, e anche se nessuno all'epoca poteva prevederlo, questa caratteristica gli avrebbe permesso di ottenere il successo che tutti possiamo constatare oggigiorno. Linux all'inizio era un semplice emulatore di terminale scritto in C e assembly, e non aveva bisogno di appoggiarsi a un sistema operativo. L'emulatore di terminale avviava e gestiva due thread, uno per mandare segnali alla porta seriale e uno per riceverli; quando poi Linus ebbe bisogno di leggere e scrivere file su disco, questo emulatore fu esteso in modo che potesse gestire un filesystem. Lentamente questo programma si trasformò in un intero kernel in grado di gestire un sistema operativo e Linus iniziò a documentarsi sulle specifiche POSIX, chiedendo assistenza sul newsgroup comp.os.minix nel famoso messaggio del 25 agosto 1991. La prima versione del kernel Linux, la 0.01, fu pubblicata su Internet il 17 settembre 1991 e la seconda nell'ottobre dello stesso anno. Torvalds preferiva chiamare Freax il kernel a cui stava lavorando ma Ari Lemke, assistente alla Helsinki University of Technology che gli aveva offerto lo spazio FTP per il progetto (ftp.funet.fi), preferì assegnare alla subdirectory dedicata il nome alternativo di lavorazione Linux.[1] Sin dalla versione 0.01 si poteva compilare e far partire la shell GNU Bash: si aveva un sistema operativo minimale da cui poter partire per ulteriori miglioramenti. All'inizio era richiesto un computer con Minix per configurare, compilare e installare Linux (fino alla versione 0.10, la 0.11 poteva essere compilata da linux stesso), perché usava il filesystem del sistema sul quale si appoggiava. Presto i sistemi Linux superarono Minix in termini di funzionalità: Torvalds e altri sviluppatori della prima ora di Linux adattarono il loro kernel perché funzionasse con i componenti GNU ed i programmi in user-space per creare un sistema operativo completo, pienamente funzionante e libero. [modifica] Linux e la rete
KDE 4 Desktop
Nella primavera del 1992 l'hacker Orest Zborowski riuscì a rendere eseguibile il server X sulla versione 0.12 di Linux. Per far ciò, Orest dovette implementare tutta la struttura degli Unix Domain Socket indispensabili a X Window e quindi un primo livello socket sul quale venne poi costruita tutta l'infrastruttura di rete di Linux. In realtà il tutto era imbastito in maniera un po' caotica e non era ben integrato all'interno del kernel ma Linus accettò comunque la patch perché con essa era possibile sia utilizzare X, sia utilizzare tale infrastruttura per dotare Linux di uno stack di rete. Entusiasta della novità, Linus rilasciò dopo la versione 0.13 la versione 0.95 senza pensare a tutti i problemi di sicurezza che la rete avrebbe comportato. Per rimediare alla leggerezza, nei due anni che trascorsero dalla 0.95 alla 1.0 Linus dovette utilizzare sia un ulteriore numero per indicare il livello di patch sia le lettere dell'alfabeto (sino alla versione 0.99.15Z, 0.99 15° livello di patch, revisione Z). [modifica] La versione 1.0Il 14 marzo 1994 il 16° livello di patch del kernel 0.99 divenne Linux 1.0. Fu lo stesso Linus Torvalds a presentare la prima versione stabile della sua creatura presso l'Università di Helsinki. [modifica] OggiOggi Torvalds continua a dirigere lo sviluppo dei kernel, mentre altre parti del sistema, come le componenti GNU, sono sviluppate separatamente. Il compito di fornire un sistema integrato, che combina tutte le componenti di base con le interfacce grafiche (come per esempio GNOME o KDE, che a loro volta si basano sulla presenza dell'X Window System) e con il software applicativo, viene ora svolto dalle distribuzioni. Nel 1996 fu scelto come logo ufficiale di Linux un pinguino disegnato da Larry Ewing e ad esso venne dato il nome di TUX come abbreviazione di Torvalds UniX. Altre fonti sostengono si tratti dell'abbreviazione di TUXedo che in inglese significa il nostro "giacca e cravatta" a causa della colorazione del corpo del pinguino. Oggi Linux resta il sistema operativo preferito da migliaia di programmatori sparsi in tutto il mondo, è usato soprattutto come server in ambienti di produzione ma ultimamente ha conosciuto anche una certa affermazione in ambiente desktop. [modifica] Le distribuzioni
Non esiste un'unica versione di Linux ma esistono diverse distribuzioni (chiamate anche distro), solitamente create da comunità di sviluppatori o società, che scelgono, preparano e compilano i pacchetti da includere. Tutte le distribuzioni condividono il kernel Linux (sia pur in versioni diverse e spesso personalizzate), mentre si differenziano tra loro per il cosiddetto "parco software", cioè i pacchetti preparati e selezionati dagli sviluppatori per la distribuzione stessa, per il sistema di gestione del software e per i servizi di assistenza e manutenzione offerti. Esistono distribuzioni eseguibili direttamente da CD senza che sia richiesta l'installazione sul proprio hard disk, come Knoppix e derivate: sono chiamate distribuzioni live o desktop CD. [modifica] Distribuzioni più diffuseIn ordine alfabetico, segue la lista delle distribuzioni più diffuse e conosciute:
GNOME 2.20 desktop.
[modifica] Versioni EmbeddedLa possibilità di intervenire sul kernel Linux e la comparsa di molti appassionati ne hanno suggerito l'utilizzo nell'elettronica dei dispositivi integrati. Al giorno d'oggi, infatti, è possibile reperire apparecchiature commerciali (quali router o smartphone) dotate di sistemi Linux fortemente ridotti. Esistono anche distribuzioni Linux pensate per essere utilizzate su tali sistemi embedded, ad esempio OpenWRT o OpenEmbedded. [modifica] Gestori di PacchettiLe distribuzioni Linux sono normalmente composte da pacchetti (packages), ed ognuno di essi contiene una specifica applicazione o componente: ad esempio, ci possono essere pacchetti contenti una libreria per la gestione di un formato di immagini, oppure una serie di font, oppure un browser web così come un qualsiasi altro programma. Un pacchetto è normalmente fornito come codice compilato, e la sua installazione o rimozione è gestita in maniera più sofisticata rispetto ad un semplice programma di archiviazione come tar. Il programma preposto a queste funzioni è detto il sistema di gestione dei pacchetti (package management system o PMS) della distribuzione. Ogni pacchetto dedicato ad un PMS contiene delle meta-informazioni come descrizione, versione, dipendenze, ecc. Il sistema di gestione dei pacchetti tiene in considerazione queste meta-informazioni per permettere ricerche, aggiornamenti automatici a versioni più aggiornate, per controllare che tutte le dipendenze di un pacchetto siano soddisfatte e/o soddisfarle automaticamente. Distribuzioni diverse hanno gestori di pacchetti diversi, ed i principali sono:
È presente inoltre la possibilità di compilare in proprio le applicazioni direttamente dal sorgente disponibili, qualora non siano disponibili i binari precompilati. Sebbene la compilazione spesso comporti alcune difficoltà, l'applicazione mostrerà un incremento delle prestazioni. Seguendo questa logica alcune distribuzioni (es. Gentoo) offrono la possibilità di compilare l'intero sistema operativo. [modifica] Linux Standard BaseIl Free Standards Group è un'organizzazione formata dai maggiori produttori di software ed hardware il cui obiettivo è di migliore l'interoperabilità tra le diverse distribuzioni. Tra gli standard proposti c'è il Linux Standard Base che definisce una comune ABI (Interfaccia Binaria per le Applicazioni), un unico sistema di pacchettizzazione ed una struttura per il Filesystem che preveda le stesse convenzioni sui nomi e le stesse directory basiliari in ogni sistema Linux. Questi standard, al momento, restano comunque poco diffusi anche tra le distribuzioni sviluppate dagli stessi produttori membri dell'organizzazione. [modifica] I LUG
Un Linux User Group (LUG), o anche "Linux Users Group" e "Linux Users' Group" è un gruppo formato da persone che condividono la stessa passione verso il Software libero e in particolare verso il sistema operativo Linux, oltre che essere accomunati dal piacere di usarlo e quindi di scambiare reciprocamente le proprie esperienze. [modifica] Linux DayI Lug italiani ogni anno promuovono ed organizzano il Linux Day, una manifestazione che ha lo scopo di promuovere il sistema operativo Linux e il software libero, ed avvicinare ed aiutare nuovi utenti a questo mondo e consiste in un insieme di eventi contemporanei organizzati in diverse città d'Italia. La Italian Linux Society (ILS) stabilisce la data del Linux Day e, a volte, fornisce proprio materiale pubblicitario. La responsabilità dei singoli eventi locali è lasciata ai rispettivi gruppi organizzatori, che hanno libertà di scelta per quanto riguarda i dettagli delle iniziative locali, nel rispetto delle linee guida generali definite da ILS. La manifestazione è nata nel 2001 per iniziativa di Davide Cerri di ILS, con lo scopo di valorizzare la rete dei LUG italiani organizzando una manifestazione di portata nazionale ma allo stesso tempo delocalizzata sul territorio. Il ruolo di ILS, tuttavia, è stato sempre secondario rispetto allo sforzo profuso dai LUG, veri artefici della manifestazione. La prima edizione del Linux Day si è tenuta il 1º dicembre 2001 in circa quaranta città sparse su tutto il territorio nazionale. Il successo è stato via via crescente, rendendo il Linux Day la principale manifestazione italiana no profit dedicata a Linux e al software libero. Le edizioni successive si sono tenute il 23 novembre 2002 (69 manifestazioni locali), il 29 novembre 2003 (85 manifestazioni locali), il 27 novembre 2004 (100 manifestazioni locali), il 26 novembre 2005 (100 manifestazioni locali), il 28 ottobre 2006 (104 manifestazioni locali), e il 27 ottobre 2007 (118 manifestazioni locali). [modifica] Curiosità[modifica] PronunciaMolte persone non sono sicure sulla pronuncia della parola "linux". In italiano la cosa migliore è pronunciarlo secondo le regole della lettura italiana. Invece in inglese si trovano diverse variazioni, ma viene normalmente pronunciato con una "i" corta e con la prima sillaba dura, come in LIH -nucks. Linus Torvalds pronuncia il nome della sua creatura così [modifica] SeparatoriNel passaggio da un sistema Windows a uno Linux, risulta probabilmente evidente la differenza nei separatori delle directory. In Windows, infatti, si usa il carattere backslash ("\"), mentre in Linux, come in tutti i sistemi simil-Unix (così come in altri sistemi operativi), si usa lo slash ("http://it.wikipedia.org/"). Si noti che anche il separatore di percorso nelle URL dei vari protocolli di rete (come gli indirizzi internet) è costituito dallo slash; la motivazione è che le reti di computer e Internet sono nate su sistemi Unix. [modifica] Voci correlate[modifica] Note
[modifica] Collegamenti esterni
|
|||||||||||||||||||||||||