La storia di Linux è la storia del più colossale progetto di sviluppo condiviso
di software di tutti i tempi.
Sotto la direzione di Linus Torvalds, quello che inizialmente doveva essere un
programma sviluppato ad uso personale è diventato il più noto risultato di un
modello di sviluppo basato sulla disinteressata collaborazione di migliaia di
sviluppatori tramite Internet.
È una
storia relativamente breve, perché in campo informatico tutto accade
velocemente e perché la collaborazione creativa di tante persone, se ben
coordinate, ha un potenziale enorme ...
Negli
anni Ottanta Unix ed i suoi derivati venivano distribuiti quasi sempre
senza codice sorgente ed a prezzi esorbitanti. Negli ambienti universitari si
fece strada Minix, un sistema operativo Unix-like.
Nonostante
la disponibilità del codice sorgente, questo sistema operativo non era un
granché, ed il suo creatore si opponeva spesso all'implementazione di migliorie
e modifiche del codice perché essendo questo un sistema operativo nato per
scopi didattici, desiderava mantenerlo il più semplice ed essenziale possibile.
Tra
gli utenti insoddisfatti di Minix c'era uno studente dell'Università di
Helsinki iscritto, nel 1991, al secondo anno di informatica, Linus
Benedict Torvalds.
Egli
non riusciva ad accettare i limiti di questo sistema operativo ed il fatto che
si dovesse pagare per poterlo utilizzare. Appena in possesso di un 386, egli
iniziò a lavorare su un nuovo sistema operativo che si chiamerà Linux ...
Cronologia
25
agosto 1991, 17
settembre 1991, 16
gennaio 1992, 14
marzo 1994, 7
marzo 1995, 9
giugno 1996, 1997, 26
gennaio 1999, 4
gennaio 2001
Linus
annuncia sul proprio newsgroupe di aver iniziato a lavorare ad un nuovo sistema
operativo per 386/486. Precisa che questo per lui è solo un hobby ed il sistema
a cui sta lavorando non sarà grande e professionale come gnu. (Gnu è un
acronimo, le lettere Gnu, infatti, sono le iniziali della frase "Gnu's
Not Unix", che in italiano significa "Gnu non è Unix". Lo
scopo del progetto è la realizzazione di un "kit" di strumenti
informatici composto da un sistema operativo e da una serie di programmi, tutti
liberamente distribuibili secondo le regole specificate nella Gpl (General
public license), la licenza di utilizzo e distribuzione che caratterizza il
cosiddetto free software.).
Come
si può notare lo stesso Linus all'inizio non aveva idea della importanza di quello che stava creando, non
avrebbe mai immaginato che di lì a poco sarebbe nata una grande comunità di
programmatori e sviluppatori intorno alla sua "creatura".
Viene
alla luce la versione 0.01, resa liberamente disponibile sul server
dell'università di Helsinki, questo scatena l'interesse di numerosi utenti e
grazie al contributo di molti di loro lo sviluppo proseguì ad un ritmo serrato
e già a Dicembre si giunse alla versione 0.10 e quindi alla 0.11 che introdusse
il supporto per VGA, EGA, driver per unità floppy, etc...
Il
motivo di tanto successo era la possibilità di reperire liberamente, senza
pagare né chiedere il permesso a qualcuno, il codice sorgente di Linux e
modificarlo a proprio piacimento.
Viene
rilasciato il kernel 0.12: esso porta con sé anche novità a livello
legale riguardanti la licenza ed è già relativamente stabile e in grado di
supportare un po' di hardware. Tutto ciò avviene con l'immediata disponibilità
del codice in rete e il coinvolgimento di altri appassionati che collaborano
allo sviluppo di alcune parti. Sono già presenti anche alcuni utilizzatori, che
ne denunciano i vari errori ed esigenze.In aprile è rilasciata la versione
0.96 e nascono le prime distribuzioni, ovvero la MCC Linux .
In
precedenza il codice veniva liberamente distribuito, ma era esplicitamente
vietato ottenere un qualsiasi ritorno economico dalla sua diffusione, incluso un
eventuale rimborso. Su richiesta di molti utenti Linus ritornò sui suoi passi e
si convinse ad adottare la GNU General Pubblic License.
Si
arriva finalmente alla versione 1.0, la prima versione definitiva, si
comincia a fare sul serio.Grazie all'aumento esponenziale dell'interesse da
parte della comunità mondiale nascono i primi LUGs (Linux User Groups),
ormai diffusi anche in Italia. Linux è sotto copywrite di Linus Torvalds, ma diventa ufficialmente un software "open source", nel
rispetto della General Public License e del movimento GNU Open Source.
Con il
rilascio della versione 1.2 viene introdotto il supporto al file system
ext2, che diverrà il file system nativo di Linux. Vengono messe sul mercato
nuove distribuzioni commerciali di Linux.
Arriva
il kernel 2.0 che introduce il supporto per macchine multiprocessore. Compaiono
le prime versioni tradotte in più lingue. Viene creato il simbolo di Linux: il
pinguino.
Da quest'anno la storia di Linux diventa sempre più indipendente da Torvalds, che
lascia la Finlandia e si sposta a Santa Clara (Silicon Valley), dove assume un
ruolo non molto chiaro nella misteriosa azienda Transmeta. La Transmeta,
infatti, è una azienda che tra i soci fondatori annovera un certo Paul Allen
(Microsoft). L'azienda progetta di produrre microprocessori a basso consumo, però
assume programmatori e tecnici molto esperti e paga Torvalds per continuare a
sviluppare il suo Linux.
Viene
alla luce la prima versione del kernel serie 2.2, utilizzato ancora oggi
su molte macchine per la sua affidabilità.
Viene
rilasciato il primo kernel Linux della serie 2.4 che introduce grandi novità: supporto USB, fireware, nuovi file systems, etc ... I
kernel della serie 2.4.* sono quelli adottati dalle principali distribuzioni
Linux.
Il nome Linux: perché?
Il
nome Linux non è stato coniato da Linus ma da Ari Lemke, amministratore
di ftp.funet.fi (dove per primo è stato reso disponibile il kernel per il
download).
Linus
in realtà voleva chiamarlo Freax, ma questo nome non piacque ad Ari Lemke che
decise di coniarne uno nuovo: LINus UniX, cioè LINUX.
A cosa è dovuto il successo di Linux?
- Prima di tutto risulta essere un sistema operativo molto più sicuro in
termini di vulnerabilità rispetto ad altri sistemi (soprattutto nei
confronti di Windows NT).Bisogna, però, tenere presente che sino ad oggi
gli attacchi sono sempre stati mirati ai server basati su sistemi Microsoft,
nemico giurato degli smanettoni, e forse non solo di loro
- Presenta tempi di sviluppo di nuove versioni assai più
brevi
- Offre una velocità che è anche di due o tre volte superiore a Windows NT +
IIS
- È molto meno esigente in termini di occupazione di memoria e spazi su disco. Con 64 MB si può allestire un server web
- Dà molta soddisfazione ai programmatori che lo sviluppano
- È molto più diffuso come server web, proprio per le sue notevoli qualità
- Al meccanismo di diffusione della conoscenza, grazie al metodo Open Source
- Rilasciare
liberamente il software significa anche permettere ad altri di leggerlo, di
imparare da esso, di valutarlo, giudicarlo, emendarlo... infine di migliorarlo continuamente
- C'è chi obietta che questo modello di sviluppo aperto non è adatto a
situazioni in cui è importante la sicurezza: se un software è
pubblicamente noto, chiunque può individuare eventuali difetti di sicurezza
e violare i sistemi che lo usano. Sta di fatto che, richiamando uno degli
esempi precedenti, Windows NT, il cui codice sorgente non è pubblicamente
noto, viene regolarmente violato ed è estremamente meno sicuro di Linux.
Infatti, in qualunque corso serio riguardante la sicurezza, tra le prime
cose si insegna che la sicurezza di un algoritmo non può e non deve
risiedere nella sua segretezza, bensì nell'impossibilità di forzarlo pur
conoscendolo. Un esempio evidente di tutto ciò: oggi la sicurezza nel
transito su Internet delle informazioni riservate si basa sul Secure Socket
Layer, protocollo sviluppato dalla Netscape Corporation, le cui specifiche sono pubblicamente note. E lo stesso vale per il software: un programma è sicuro quando anche chi lo conosce in ogni suo dettaglio non riesce a violarlo, non quando il suo codice non viene rilasciato... anche perché di un programma di cui non viene rilasciato il codice sorgente, può sempre essere esaminato il codice assembler prodotto a valle della compilazione e distribuito dal produttore... e anche lì si possono individuare punti deboli in termini di sicurezza.
Quali svantaggi può presentare?
- Non essendo un sistema commerciale, non esiste un vero servizio assistenza (anche se è possibile avere a pagamento un servizio prestato in genere dalle case distributrici)
- Il software commerciale disponibile per Linux è ancora scarso (spiccano il
programma di videoscrittura WordPerfect, i programmi tipo Office "Applixware Office Suite", "Staroffice"
della SUN, "Openoffice'', i browser Netscape ed Opera con qualche plug-in,
i data-base ADABAS ed Oracle, molto software IBM). Notare che sono assenti tutti i programmi Microsoft
- Ci sono pochi giochi
- La installazione del sistema (anche se ormai molto aiutata dai programmi di configurazione forniti dalle case suddette) può essere complessa, specie per computer di ultima generazione
- La gestione del sistema richiede non indifferenti conoscenze tecniche
- La documentazione è abbondante, chiara e concisa, ma spesso solo in lingua inglese
- Un computer Linux ha fondamentalmente la stessa struttura di un grande
server UNIX collegato a Internet e destinato a gestire anche centinaia di
utenti simultaneamente. Su un personal computer, tipicamente monoutente, tutta questa complessità va in gran parte sprecata
- Lo scambio di documenti con utenti Windows e Mac può essere difficoltoso.
|